Wie kann ich einen Skript-Wrapper zum Deinstallieren der folgenden Zeichenfolge erstellen, vorausgesetzt, ich habe die uninst_setup.iss
Datei auf dem Desktop gespeichert?
C:\Program Files\InstallShield Installation Information\{4D9CA1B8-5FF5-47A7-8BDF-C37D1F9F55A5}\setup.exe" -l0x9 -removeonly -uninst /s /f1"c:\temp\uninst_setup.iss" /f2"c:\temp\setuppec.log
Ich kann die Zeichenfolge manuell deinstallieren, wenn ich die uninst_setup.iss
Datei kopiere und c:\temp
dann die obige Zeichenfolge ausführe cmd
.
Ich brauche lediglich Hilfe beim Erstellen eines Wrappers, um es auf einen Schlag über SCCM zu deinstallieren.
Antwort1
Sie sollten kein fest codiertes temporäres Verzeichnis verwenden. Der folgende Code hilft Ihnen dabei. Beachten Sie jedoch, dass das temporäre Verzeichnis bei der Ausführung mit SCCM (SYSTEM-Konto) in %windir%\temp aufgelöst wird.
Fügen Sie ein Skript (z. B. uninstaller.vbs) mit dem untenstehenden Code und der iss-Datei zu einem SCCM-Paket hinzu. Erstellen Sie ein Programm mit dem folgenden Befehl: cscript.exe uninstaller.vbs
set wsh_shell = createobject("wscript.shell")
set fso = createobject("scripting.filesystemobject")
dq = chr(34)
source_path = fso.getparentfoldername(wscript.scriptfullname)
tmp_folder = fso.getSpecialFolder(2)
iss_file = "uninst_setup.iss"
log_file = "setuppec.log"
' Copy the iss file to the temp folder.
fso.copyFile fso.buildPath(source_path, iss_file), tmp_folder, true
' Build the command line
cmd = dq &"C:\Program Files\InstallShield Installation Information\{4D9CA1B8-5FF5-47A7-8BDF-C37D1F9F55A5}\setup.exe" &dq
cmd = cmd &" -l0x9 -removeonly -uninst /s /f1" &dq &fso.buildpath(tmp_folder, iss_file) &dq
cmd = cmd &" /f2" &dq &fso.buildpath(tmp_folder, log_file) &dq
' Run commandline and return exit code to sccm.
wscript.quit wsh_shell.run(cmd, 0, true)