bigweo 10 Geschrieben 10. Februar 2004 Melden Teilen Geschrieben 10. Februar 2004 Hallo, soweit so gut, dieses Skript soll PC in einem PC remote runterfhren, die Einzelteile (Auslesen aus dem Aktive Directory sowie das Shutdown) funktionieren. Allerdings happerts jetzt mit der übergabe des Namens an die Shutdown Funktion. Bitte um Hilfe : Set objConnection = CreateObject("ADODB.Connection") objConnection.Open "Provider=ADsDSOObject;" Set objCommand = CreateObject("ADODB.Command") objCommand.ActiveConnection = objConnection objCommand.CommandText = _ "<LDAP://ou=PC Raeume,ou=Workstations,ou=Technik,dc=fhe,dc=intern>;(objectCategory=computer)" & _ ";distinguishedName,name;subtree" Set objRecordSet = objCommand.Execute While Not objRecordSet.EOF Wscript.Echo objRecordSet.Fields("Name") 'Shutdown Procedure----------------------------------- '-------Hier soll der Name aus dem ActiveDirectory an die Variable übergeben werden strComputer = objRecordSet.Fields("Name") '------ Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate,(Shutdown)}!\\" & _ strComputer & "\root\cimv2") Set colOperatingSystems = objWMIService.ExecQuery _ ("SELECT * FROM Win32_OperatingSystem") For Each objOperatingSystem in colOperatingSystems objOperatingSystem.Shutdown() Next 'Ende der Shutdown Procedure--------------------------- objRecordSet.MoveNext Wend objConnection.Close mfg bigweo Zitieren Link zu diesem Kommentar
deubi 10 Geschrieben 11. Februar 2004 Melden Teilen Geschrieben 11. Februar 2004 Was ist das Ziel, was beabsichtigst Du? Wo scheitert Dein Script? Welcher Wert wird strComputer effektiv zugewiesen? Ist das Skript so komplett? Ich reserviere IMMER für alle benutzte Variabeln Platz mittels "DIM", und kommentiere die entsprechenden Zeilen zudem aus. Macht die Skripte übersichtlicher und lesbarer Zitieren Link zu diesem Kommentar
bigweo 10 Geschrieben 16. Februar 2004 Autor Melden Teilen Geschrieben 16. Februar 2004 Hallo, sorry für die späte Antwort, war kurz im Urlaub ;-P Also, in strComputer soll der Name des Computers, der aus dem Active Directory ausgelesen wurde zu gewiesen werden, damit dieser dann heruntergefahren wird. Das Problem ist leider das, dass diese Variante nicht finktioniert: strComputer = objRecordSet.Fields("Name") Gibts da eine eine andere Möglichkeit, den Wert an die Variable zu übergeben? Danke im Voraus bigweo P.S: Ja das Skript ist so komplett, das Auslesen funktioniert und der remote Shutdown funktioniert allerdings nur seperat :-(( Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.