none
Programmversion auslesen RRS feed

  • Frage

  • Hallo,

    ich würde gerne wissen, wie ich die Version des Programmes in einem Label anzeigen kann, welche zuvor in den Projekt-Eigenschaften eingestellt wurde.

    Vielen Dank im Voraus
    Montag, 4. Januar 2010 13:51

Antworten

  • Hallo,

    die Frage ist, welche Version Du eingestellt hast, denn Du kannst in einer .NET Anwendung mehrere unabhängige Versionsnummern vergeben. Zunächst wäre da die AssemblyVersion, die Du über

    My.Application.ProductVersion

    auslesen kannst. Diese Version dient jedoch gleichzeitig mit dazu, Dein Assembly eindeutig zu identifizieren, daher sollten Änderungen an dieser Version nur bei Kompatibilitätsbrüchen geändert werden. Bei Verwendung vom ClickOnce Deployment kannst Du auch die Deployment Version auslesen:

    My.Application.Deployment.CurrentVersion

    Dies funktioniert jedoch aus verständlichen Gründen erst dann, wenn die Anwendung ordnungsgemäß installiert wurde. Sonst löst die Anwendung eine Exception aus.

    Dann kannst Du noch die Version über das AssemblyFileVersion Attribut setzen (Dateiversion unter Projekt => Eigenschaften) und zur Laufzeit auslesen:

    Dim lFileInfo As FileVersionInfo = _
     FileVersionInfo.GetVersionInfo(GetType(Me).Assembly.Location)

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    Montag, 4. Januar 2010 14:20

Alle Antworten

  • Hallo,

    die Frage ist, welche Version Du eingestellt hast, denn Du kannst in einer .NET Anwendung mehrere unabhängige Versionsnummern vergeben. Zunächst wäre da die AssemblyVersion, die Du über

    My.Application.ProductVersion

    auslesen kannst. Diese Version dient jedoch gleichzeitig mit dazu, Dein Assembly eindeutig zu identifizieren, daher sollten Änderungen an dieser Version nur bei Kompatibilitätsbrüchen geändert werden. Bei Verwendung vom ClickOnce Deployment kannst Du auch die Deployment Version auslesen:

    My.Application.Deployment.CurrentVersion

    Dies funktioniert jedoch aus verständlichen Gründen erst dann, wenn die Anwendung ordnungsgemäß installiert wurde. Sonst löst die Anwendung eine Exception aus.

    Dann kannst Du noch die Version über das AssemblyFileVersion Attribut setzen (Dateiversion unter Projekt => Eigenschaften) und zur Laufzeit auslesen:

    Dim lFileInfo As FileVersionInfo = _
     FileVersionInfo.GetVersionInfo(GetType(Me).Assembly.Location)

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    Montag, 4. Januar 2010 14:20
  • Viel Dank :) Genau das habe ich gesucht. Und die Antwort ist schön ausführlich. Perfekt!
    Montag, 4. Januar 2010 14:25