我正在尝试创建一个VBscript,它会杀死作为参数(参数)传入的Windows进程。我有下面的代码,并认为问题是在第8,18或24行,但我不确定问题是什么。当我用notepad.exe而不是变量替换该代码时,它可以工作。任何帮助都会很棒。谢谢。使用参数VBScript杀死进程
Dim prcid
Dim check
Dim Inp
Set Inp = WScript.Arguments
check=0
Set objService = GetObject("winmgmts:")
For Each Process In objService.InstancesOf("Win32_process")
If process.name= "Inp" Then
prcid=process.processid
check=1
Exit For
End If
Next
If check =0 Then
WScript.Quit [ExitCode]
End if
For Each process In objService.InstancesOf("Win32_process")
If process.name= "Inp" Then
If process.processid=prcid Then
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("SELECT * FROM Win32_Process WHERE Name = 'Inp'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
End If
Exit For
End If
Next
当我添加这个编辑时,它给了我错误:“Error In Script- 424 Object Required” – user1512885 2012-07-12 11:53:14
'WScript.Arguments(0)'返回一个字符串而不是一个对象,所以你必须摆脱'设置'关键字否则VBScript期望它返回一个对象,因此错误。 – AutomatedChaos 2012-07-13 11:25:37
这个工程,谢谢一堆 – user1512885 2012-07-13 12:22:47