¿Cómo puedo crear un contenedor de secuencias de comandos para desinstalar la siguiente cadena, suponiendo que tengo el uninst_setup.iss
archivo guardado en el escritorio?
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
Puedo desinstalar la cadena manualmente si copio el uninst_setup.iss
archivo y c:\temp
luego ejecuto la cadena anterior en formato cmd
.
Solo necesito ayuda para crear un contenedor para desinstalarlo de una sola vez a través de SCCM.
Respuesta1
No debería utilizar un directorio temporal codificado. El siguiente código te ayudará con eso. Solo tenga en cuenta que al ejecutar esto con SCCM (cuenta SYSTEM), el directorio temporal se resolverá en %windir%\temp.
Agregue un script (por ejemplo, uninstaller.vbs) con el siguiente código y el archivo iss a un paquete SCCM. Cree un programa con el siguiente comando: 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)