Wie kann ich meine Montag Versionsnummer in einer teilweise vertrauenswürdigen Umgebung (kein FileIOPermission) zugreifen
-
05-09-2019 - |
Frage
Ich versuche, die Versionsnummer meiner Montage zur Laufzeit zugreifen zu können.
Der Code, den ich für die Verwendung erfordert eine FileIOPermission, das will ich nicht gewähren (I in der Internet Zone bin)
this.GetType().Assembly.GetName().Version;
Gibt es eine andere Möglichkeit, die Versionsnummer zuzugreifen, die nicht Elevation erfordert?
Lösung
Es ist nicht ganz die gleiche Versionsnummer (es ist die „Assembly“, anstatt die „Assembly“ -Attribut), aber Sie können die folgende Codezeile verwenden:
System.Windows.Forms.Application.ProductVersion
, die einen String zurückgibt.
Wenn Sie automatisierte tust baut, dann müssen Sie daran denken, beide Zahlen zu erhöhen.
Alternativ
Wenn Sie dies als eine Clickonce-Anwendung tun, wird die Versionsnummer gefunden:
System.Deployment.Application.ApplicationDeployment.CurrentDeployment.CurrentVersion
Ich hoffe, das hilft
Andere Tipps
Wenn Sie die Assembly ohne FileIOPermission benötigen Sie Assembly :: Fullname analysieren müssen.