如何在远程计算机上执行vbs文件
问题描述:
如何在不使用PsExec的情况下执行位于远程机器上的机器位于相同域的VBScript?如何在远程计算机上执行vbs文件
我试了下面的代码,但没有运气。
Sub RunCommand(strComputer, Command)
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2:Win32_Process")
Err = objWMIService.Create("cmd /c " & Command, Null, Null, intProcessID)
If Err > 0 Then
MsgBox "Error occured on Remote Server", vbCritical, "Error"
End If
End Sub
Sub Test()
Runcommand("HE2264","C:\Temp\Test.vbs")
End Sub
答
您需要使用任何cscript.exe
或wscript.exe
运行VB脚本,不与CMD。
Err = objWMIService.Create("wscript.exe " & Command, Null, Null, intProcessID)
此外,您从RunCommand
调用需要remove the parentheses在Test
:
Runcommand "HE2264", "C:\Temp\Test.vbs"
同样的,如果我想执行一个bat文件,我可以用WScript.exe去提到? – santosh
或者用'Call * *(链接文章中的第3.2点)*'保留圆括号和前缀。 – Lankymart
@santosh当然不是。批处理文件需要与VBScript文件('cscript.exe'或'wscript.exe')不同的解释器('cmd.exe')。 –