0

我正在寻找一个简短的 javascript 代码来杀死在我的 windows 机器上运行的进程(我正在 7 上开发程序,但它必须在服务器 2003 上的生产中运行)。我从以下代码开始:

w = new ActiveXObject("WScript.Shell");
w.run("taskkill.exe /im iexpore.exe");
return true;

我需要使被杀死的过程成为我传递的东西。有许多不同的东西要杀死,我有另一个程序可以确定要杀死的东西。

我现在有以下代码,但它仍然不起作用:

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
4

2 回答 2

0

我假设您使用的是 Windows 脚本主机。

您可以像这样访问脚本的参数:

objArgs = WScript.Arguments;
for (i = 0; i < objArgs.length; i++)
{
   WScript.Echo(objArgs(i));
}

我假设您希望将要终止的进程作为参数传递给脚本。

T。

于 2012-07-09T19:18:26.993 回答
-1

您提到了 javascript,但您的代码是 VB 脚本,所以应该有一个 .vbs 扩展名。那会是你的问题吗?

于 2018-12-28T10:35:55.817 回答