带有传入名称的Javascript进程Kill

带有传入名称的Javascript进程Kill,javascript,windows,process,wsh,kill-process,Javascript,Windows,Process,Wsh,Kill Process,我正在寻找一个简短的javascript代码,杀死一个在我的windows机器上运行的进程(我在7上开发这个程序,但它必须在2003年服务器上生产时运行)。我从以下代码开始: w = new ActiveXObject("WScript.Shell"); w.run("taskkill.exe /im iexpore.exe"); return true; 我需要让被杀死的过程成为我传递的东西。有许多不同的东西要杀死,我有另一个程序,决定一个人被杀死什么 我现在有以下代码,但仍然不起作用: D

我正在寻找一个简短的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

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

您可以如下方式访问脚本的参数:

objArgs = WScript.Arguments;
for (i = 0; i < objArgs.length; i++)
{
   WScript.Echo(objArgs(i));
}
objArgs=WScript.Arguments;
对于(i=0;i
我假设您希望将要终止的进程作为参数传递给脚本


T.

您提到了javascript,但您的代码是VB脚本,因此应该有一个.vbs扩展名。这可能是您的问题吗?

对于我必须将其与(Automation Anywhere)集成的程序,我只能访问1.js文件并传入参数。那么,你所说的与此相符吗?很抱歉,我只是不太熟悉JSF。这个示例代码将循环您提供给.js文件的参数并写出它们。在您的情况下,您不仅要写出它们,还要使用它们为w.run()构造正确的字符串