Criando Script Wrapper para SCCM

Criando Script Wrapper para SCCM

Como posso criar um wrapper de script para desinstalar a string abaixo, assumindo que o uninst_setup.issarquivo foi salvo na área de trabalho?

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

Posso desinstalar a string manualmente se copiar o uninst_setup.issarquivo e c:\tempexecutar a string acima no formato cmd.

Só preciso de ajuda para criar um wrapper para desinstalá-lo de uma só vez por meio do SCCM.

Responder1

Você não deveria usar um diretório temporário codificado. O código abaixo ajudaria você com isso. Observe que ao executar isso com SCCM (conta SYSTEM), o diretório temporário seria resolvido para% windir%\temp.

Adicione um script (por exemplo, Uninstaller.vbs) com o código abaixo e o arquivo iss em um pacote SCCM. Crie um programa com o seguinte comando: cscript.exe unlocker.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)

informação relacionada