WMI VBSkript: Fehler bei Starten einer Exe auf entferntem Rechner

kornkreiszerstörer

Grünschnabel
Hi, ich habe ein Skript, welches lediglich eine .exe Datei auf einem im
Netzwerk entfernten Rechner starten soll. Ich bekomme aber immer die
Fehlermeldung: "...vbs (12,1) SWbemLocator: Zugriff verweigert"
Kann das an meinem fehlerhaften Skript liegen! Ich kann sonst alles mögliche
abfragen! Ich bekomme nur bei diesem Skript diese Meldung. Auch wenn ich die
Firewalls auf beiden Rechner ausschalte. Weiß vielleicht jm, wo der Fehler im
Skript liegen könnte!

=====================================

Const WbemAuthenticationLevelPktPrivacy = 6

strComputer = "PC1"
strNamespace = "root\cimv2"
strUser = "XYZ" 'domäne\admin
strPassword = "12345"

prozess = "C:\WINDOWS\system32\calc.exe"

Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = objwbemLocator.ConnectServer _
(strComputer, strNamespace, strUser, strPassword)
objWMIService.Security_.authenticationLevel =
WbemAuthenticationLevelPktPrivacy

Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Process")

Error = colitems.Create(prozess, null, null, intProcessID)

If Error = 0 Then
Wscript.Echo prozess & " wurde mit der Prozess ID " & intProcessID & "
gestartet."
Else
Wscript.Echo prozess & " konnte nicht gestartet werden. Fehlercode: " &
Error & "."
End If
===================================
 
Hi bb,

bei mir funktioniert das Skript leider nicht. Warum weiß ich nicht!! Lokal kommt die Meldung mit der Prozess-ID und es wird auch kein Fehler gemeldet. Aber Remote tut sich nichts Firewalls sind beide aus! und sonst kann ich auch alles möglich Remote abfragen! Habe es mit folgendem Skript versucht:


sComputer = "PC1000"
sUser = "domäne\admin"
sPassword = "12345"
sCmd = "mspaint.exe"

Set oSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
oSWbemLocator.Security_.ImpersonationLevel = 3 ' 3 = impersonate
Set oWMI = oSWbemLocator.ConnectServer(sComputer, "/root/CIMV2:win32_Process", sUser, sPassword)

Set oWMIProc = oWMI.Get("Win32_Process")
result = oWMIProc.Create(sCmd, Null, Null, procID)

MsgBox ("ProzessID=" & procID & " auf Rechner \\" & sMachine)
 
Zurück