Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Datei-Version mit .NET ermitteln

Frage Entwicklung Visual Studio

Mitglied: MarcoBorn

MarcoBorn (Level 1) - Jetzt verbinden

27.06.2013 um 15:52 Uhr, 3683 Aufrufe, 7 Kommentare

Hallo Forum,
ich möchte per VB.NET die Datei-Version (Major, Minor, Revision und Build) einer DLL ermitteln, die auf meiner Platte gespeichert wurde. Diese DLL habe ich zuvor selbst erstellt und mit folgenden Infos in der AssemblyInfo.vb versehen:
<Assembly: AssemblyFileVersion("2.1.5.0")>
<Assembly: AssemblyVersion("2.1.5.*")>

Wenn ich die Versionsinfo direkt in der DLL ermitteln möchte, funktioniert das mit folgendem Befehl ohne Probleme und ich erhalte wie gewünscht "2.1.5.0" als Resultat:
MsgBox(System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString())


Der Versuch, die Infos aus einem anderen Projekt heraus mit dem folgenden Befehl aufzurufen, liefert stattdessen als Ergebnis "0.30.22.1":
MsgBox (FileVersionInfo.GetVersionInfo("C:\FK.xll").FileMajorPart.ToString)


Wie schaffe ich es, die korrekten Werte ("2.1.5.0") zu erhalten, wenn die DLL nicht im aktuellen Projekt geladen ist?

Vielen Dank im voraus,
Marco

Mitglied: MrTrebron
27.06.2013 um 16:45 Uhr
Hallo Marco,

versuche mal
01.
Dim FilePath As String = "Pfad zum File" 
02.
Dim VersionInfo As FileVersionInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(FilePath)

Gruß
Norbert
Bitte warten ..
Mitglied: MarcoBorn
27.06.2013 um 17:01 Uhr
Hallo Norbert,
vielen Dank für die schnelle Antwort. Leider liefert dies ebenfalls wieder den Wert "0.30.22.1".

Hat jemand eine andere Idee?

Viele Grüße,
Marco
Bitte warten ..
Mitglied: colinardo
28.06.2013, aktualisiert um 11:58 Uhr
Hallo Marco,
Wie siehts damit aus:
01.
Dim vi As FileVersionInfo = FileVersionInfo.GetVersionInfo("c:\FK.dll") 
02.
Msgbox (vi.ProductVersion)
das geht hier einwandfrei.

Grüße Uwe
Bitte warten ..
Mitglied: MarcoBorn
28.06.2013 um 08:41 Uhr
Hallo Uwe, danke für diese Variante, aber sie liefert ebenfalls den falschen Wert. So langsam bin ich am Verzweifeln...
Bitte warten ..
Mitglied: MrTrebron
28.06.2013 um 09:59 Uhr
Servus Marco,

mache mal im Explorer einen Rechtsklick auf deine DLL und lass dir mal die Eigenschaften anzeigen, genauer gesagt die Details
Was bekommst du denn als Produktversion, bzw Dateiversion angezeigt?

Gruß
Norbert
Bitte warten ..
Mitglied: MrTrebron
28.06.2013 um 10:07 Uhr
Hi

was bei mir klappt ist
01.
Dim myAssembly As String = System.Reflection.AssemblyName.GetAssemblyName(FilePath).Version.ToString
Gruß
Norbert
Bitte warten ..
Mitglied: MarcoBorn
04.07.2013 um 08:16 Uhr
Hallo Norbert,
leider hat Deine Version auch nicht funktioniert. Ich habe zwischenzeitlich herausgefunden, dass die Werte beim Compilieren nicht korrekt gesetzt wurden. Ich habe mich mit Verpatch beholfen, das die Versionsnummern nachträglich setzen kann.

Vielen Dank für die Hilfe,
Marco
Bitte warten ..
Ähnliche Inhalte
Windows Systemdateien
gelöst net 4.6.2 Error bei Installation (2)

Frage von leofabian zum Thema Windows Systemdateien ...

Linux
E-Mail zu Datei (3)

Frage von schneerunzel zum Thema Linux ...

Windows Tools
net Framework 4 (1)

Frage von kellbidden zum Thema Windows Tools ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Email in Exchange an 2ten Empfänger senden (18)

Frage von MultiStorm zum Thema Exchange Server ...

Weiterbildung
Gehaltsvorstellungen (14)

Frage von SYS64738 zum Thema Weiterbildung ...

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (13)

Frage von planetIT2016 zum Thema Windows Server ...

Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...