2014-01-29 128 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