我正在尝试通过SCCM 2012分发软件;在vbs中运行一个简单的命令,以结果代码255结束。
示例:
WshShell.run ("TASKKILL /F /IM """ & processname & """ /T", 0, True)
返回255后,脚本停止并且不安装软件。
有人有这个问题吗?代码255的含义是什么?
感谢。
答案 0 :(得分:0)
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * From Win32_Process")
For Each objItem in colItems
'msgbox objItem.ProcessID & " " & objItem.CommandLine
If objItem.name = "Calculator.exe" then objItem.terminate
Next
如何在vbscript中终止程序。
答案 1 :(得分:0)
这是正确的方法
processname="my process name .exe"
WshShell.run "TASKKILL /F /IM """ & processname & """ /T", 0, False
wscript.sleep 300
首先,在调用Sub时不要使用 parentheses
。分配该行时请使用括号
变量或当您使用单词 call
时。
var = WshShell.run ("TASKKILL /F /IM """ & processname & """ /T", 0, False)
或
Call WshShell.run ("TASKKILL /F /IM """ & processname & """ /T", 0, False)
第二,我更喜欢使用 False
而不是 True
以避免中继脚本等待
如果您要在此代码行之后执行另一行,请完成执行命令行,而不要使用 wscript.sleep 300
。不要中继自动内容。