Die Abfrage ist aber eigentlich unnütz - wenn die Software nicht installiert ist, sagt dir wmic das auch "keine instanzen gefunden" und wirft - wie ich finde - korrekterweise keinen kritischen Errorcode

Den Adobeflashplayer würde ich übrigens anders entfernen - so bekomme ich den ganzen Adobe Flash Schmutz vollständig runter und neu auf das System:
Es gibt ein Removal Tool von Adobe, welches ich immer in der aktuellsten Fassung zusammen mit den aktuellen Flash-Player Versionen herunterlade und triggere:
http://helpx.adobe.com/de/flash-player/ ... ndows.html
Code: Alles auswählen
; Installation des Adobe Flashplayers
; WICHTIG: Immer alle drei Dateien aktualisieren!
; - Flash fuer Plugin-Browser
; - Flash fuer AX-Browser
; - Uninstaller für Flash (sehr wichtig, stets den aktuellen von Adobe verwenden!!!)
; info@karsten-nobis.de
; ----------------------------------------------------------------
[Actions]
requiredWinstVersion >= "4.11.2.6"
; Variablendefinition
; ----------------------------------------------------------------
; statisch, nicht verändern
DefVar $errorcode$
DefVar $logdir$
DefVar $productid$
DefVar $minimumspace$
; variabel, frei veränderbar
DefVar $local_installer_folder$
DefStringList $installer_file$
DefVar $installer_parameter$
DefVar $uninstaller_file$
DefVar $uninstaller_parameter$
DefVar $installer_current$
; Variablenzuweisung
; ----------------------------------------------------------------
; statisch, nur den Gegebenheiten anpassen
Set $logdir$ = "%SystemDrive%\tmp"
Set $productid$ = "adobeflash"
Set $minimumspace$ = "100 MB"
; teilstatisch, nur den Gegebenheiten anpassen
; Zielpfad auf dem Client
Set $local_installer_folder$ = "%System%\Macromed\Flash\"
; Angabe der Installationsdateien mit Reihenfolge
Set $installer_file$ = splitString ("flashplayer_plugin.exe|flashplayer_ax.exe", "|")
; Aufrufparameter für die Installationsdatei
Set $installer_parameter$ = "-install -au 2"
; Installationsdatei im Opsi-Paketordner "resources"
Set $uninstaller_file$ = "uninstaller.exe"
; Aufrufparameter für die Deinstallationsdatei
Set $uninstaller_parameter$ = "-uninstall"
; Skriptbeginn
; ----------------------------------------------------------------
; Prüfung auf freien Speicher
; ----------------------------------------------------------------
if not(Hasminimumspace ("%SystemDrive%", $minimumspace$))
LogError "Nicht genuegend freier Speicher auf %SystemDrive%, " + $minimumspace$ + " auf dem Speicher %SystemDrive% werden für " + $productid$ + " benoetigt!"
isFatalError "Kein Speicher"
; Ablauf stoppen und Installationsstatus auf fehlerhaft setzen.
endif
; Eigene Prozedurenaufrufe und Ablaufplanung
; ----------------------------------------------------------------
; variabel, frei veränderbar
Sub_preactions
Sub_uninstaller
Sub_installer
; Skriptende
; Subprozeduren
; ----------------------------------------------------------------
; Installationsopener - statisch, nicht verändern
[Sub_preactions]
ShowBitmap "%ScriptPath%\resources\logo.png" $productid$
Message "Installation von " + $productid$ + " wird ueberprueft..."
; variabel, frei veränderbar
[Sub_uninstaller]
if FileExists($local_installer_folder$)
Message "Deinstallation von " + $productid$ + " wird durchgefuehrt..."
WinBatch_uninstall
Sub_errorhandler
Message "Lokales Installationsverzeichnis wird bereinigt..."
Files_cleanup_local_installer_folder
endif
[Sub_installer]
for %CurrentString% in $installer_file$ do Sub_installer_single
[Sub_installer_single]
Set $installer_current$ = "%CurrentString%"
Message "Installation von " + $installer_current$ + " wird durchgefuehrt..."
WinBatch_install_single
Sub_errorhandler
; Fehlerbehandlungsroutine - statisch, nicht verändern
[Sub_errorhandler]
Set $errorcode$ = getLastExitCode
if ($errorcode$ = "0")
Message "Aktion war erfolgreich!"
else
Message "Aktion schlug mit Errorcode " + $errorcode$ + " fehl!"
isFatalError
endif
; Sektionen - variabel, frei veränderbar
; ----------------------------------------------------------------
[WinBatch_install_single]
"%ScriptPath%\resources\$installer_current$" $installer_parameter$
[WinBatch_uninstall]
"%ScriptPath%\resources\$uninstaller_file$" $uninstaller_parameter$
[Files_cleanup_local_installer_folder]
delete -sf "$local_installer_folder$"