Versionserkennung mit Powershell

Aus RADFAK
Version vom 17. Oktober 2024, 11:47 Uhr von Markus Wolpert (Diskussion | Beiträge)
(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.