2014-01-29 108 views
0

我正尝试执行位于服务器中的批处理文件,该文件位于本地系统中的vbscript中。vbscript权限被拒绝:getobject

下面的代码在访问GETOBJECT

抛出权限被拒绝
strDomain = "SBICAD" 
strComputer = "10.29.83.22" 
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator") 
Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer, _ 
"root\cimv2", _ 
"ec12345", _ 
"[email protected]", _ 
"MS_409", _ 
"ntlmdomain:" + strDomain) 

     objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!" & _ 
         "\\" & strComputer & _ 
         "\root\cimv2:Win32_Process") 



result = objWMIService.Create("C:\script\checkremote.bat", Null, Null,process) 


Msgbox result 
WScript.Quit 

反正是有传递GetObject的我的服务器的登录凭据?

注意:用户ec12345具有管理权限。

回答

2

您不需要使用GetObject方法,因为您已经连接了ConnectServer函数。所以你只需要使用ExecQuery方法,它将使用相同的连接执行。

Set objWMIService = objSWbemServices.ExecQuery("Select * From Win32_Process") 
+0

但我无法使用objSWbemServices创建进程。我的目标是让这个“objWMIService.Create(”C:\ script \ checkremote.bat“,Null,Null,process)”工作。 – user3186990

+0

你有什么错误? – RRUZ

+0

错误权限被拒绝:GetObject – user3186990