Versionserkennung mit Powershell

Aus RADFAK
Version vom 25. September 2024, 13:25 Uhr von Markus Wolpert (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Falls sie nicht die Versionsanzeige des Startprogramms verwenden können oder wollen, zum Beispiel aus Automationsgründen, können sie die installierte Unterversion von RADFAK auch via Powershell auslesen. Ist keine Jahresversion installiert, diese schreibt ihre Versionsnummer in die Registry, müssen die Versionskennungen der einzelnen module ausgelesen und davon die höchste bestimmt werden <code>$basepath = "C:\\Program F…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Falls sie nicht die Versionsanzeige des Startprogramms verwenden können oder wollen, zum Beispiel aus Automationsgründen, können sie die installierte Unterversion von RADFAK auch via Powershell auslesen. Ist keine Jahresversion installiert, diese schreibt ihre Versionsnummer in die Registry, müssen die Versionskennungen der einzelnen module ausgelesen und davon die höchste bestimmt werden

$basepath = "C:\\Program Files (x86)\\Softwarebuero"

$Versions = new-object version[] 21;
$Versions[0] = (Get-Item $basepath"\\RADFAK_Artikeleditor\\Artikelstamm.exe").VersionInfo.ProductVersion
$Versions[1] = (Get-Item $basepath"\\RADFAK_Bankprogramm\\Anweisen.exe").VersionInfo.ProductVersion
$Versions[2] = (Get-Item $basepath"\\RADFAK_Buchungsmuster\\BuchungsMuster.exe").VersionInfo.ProductVersion
$Versions[3] = (Get-Item $basepath"\\RADFAK_Kasse\\Kasse.exe").VersionInfo.ProductVersion
$Versions[4] = (Get-Item $basepath"\\RADFAK_Kassen_Server\\Kassen_Server.exe").VersionInfo.ProductVersion
$Versions[5] = (Get-Item $basepath"\\RADFAK_Kassenabschluss\\Abschluss.exe").VersionInfo.ProductVersion
$Versions[6] = (Get-Item $basepath"\\RADFAK_Kassenbuch\\kassenbuch.exe").VersionInfo.ProductVersion
$Versions[7] = (Get-Item $basepath"\\RADFAK_Kassenprotokoll\\Protokoll.exe").VersionInfo.ProductVersion
$Versions[8] = (Get-Item $basepath"\\RADFAK_Kundeneditor\\kunden.exe").VersionInfo.ProductVersion
$Versions[9] = (Get-Item $basepath"\\RADFAK_Lieferanteneditor\\Lieferanten.exe").VersionInfo.ProductVersion
$Versions[10] = (Get-Item $basepath"\\RADFAK_Offene_Posten\\Offene_Posten_Wa.exe").VersionInfo.ProductVersion
$Versions[11] = (Get-Item $basepath"\\RADFAK_Parameter\\Mitarbeiter.exe").VersionInfo.ProductVersion
$Versions[12] = (Get-Item $basepath"\\RADFAK_Parameter\\RADFAK_parameter.exe").VersionInfo.ProductVersion
$Versions[13] = (Get-Item $basepath"\\RADFAK_Startprogramm\\RADFAK_Startprogramm.exe").VersionInfo.ProductVersion
$Versions[14] = (Get-Item $basepath"\\RADFAK_Tools\\Datenbank.exe").VersionInfo.ProductVersion
$Versions[15] = (Get-Item $basepath"\\RADFAK_Tools\\PhoneConnector.exe").VersionInfo.ProductVersion
$Versions[16] = (Get-Item $basepath"\\RADFAK_Warenausgang\\Warenausgang.exe").VersionInfo.ProductVersion
$Versions[17] = (Get-Item $basepath"\\RADFAK_Wareneingang\\Wareneingang.exe").VersionInfo.ProductVersion
$Versions[18] = (Get-Item $basepath"\\RADFAK_Wareneingangsbuch\\Wareneingangsbuch.exe").VersionInfo.ProductVersion
$Versions[19] = (Get-Item $basepath"\\Werkzeug\\speichenrechner.exe").VersionInfo.ProductVersion
$Versions[20] = (Get-Item $basepath"\\Werkzeug\\Entfaltung.exe").VersionInfo.ProductVersion

$Versions = $Versions | Sort-Object
Write-host $Versions[20]

Dieses Codesample für Powershell liefert als Textausgabe die momentan installierte Version von RADFAK.