9. September 200817 j hallo zusammen, ich habe ein kleines Problem. Ich habe ein vbs Skript erstellt, das abhängig vom Rechnernamen (IF Abfrage) eine Datensicherung von bestimmten Pfaden durchführt. Sieht in etwa so aus: Option Explicit Dim shell, computername, objSource, objDestination, objCommand, objShell, objSource2, objDestination2, objSource3, objDestination3, objShell2, objShell3, objCommand2, objCommand3, objShell4, objCommand4, objSource4 ,objDestination4 set shell = WScript.CreateObject( "WScript.Shell" ) computername = shell.ExpandEnvironmentStrings("%COMPUTERNAME%") 'Datensicherung PC01 If UCASE(computername) = UCASE("PC01") Then Set objShell = CreateObject("Wscript.Shell") objSource = "C:\Programme\Software1" objDestination = "\\server\files\backup\Software1" objCommand = "RoboCopy.Exe " & Chr(34) & objSource & Chr(34) & " " & Chr(34) & objDestination & Chr(34) & " /MIR" objShell.Run(objCommand) 'Datensicherung PC02 ElseIf UCASE(computername) = UCASE("PC02") Then Set objShell = CreateObject("Wscript.Shell") objSource = "C:\Programme\Software2" objDestination = "\\server\files\backup\Software1" objCommand = "RoboCopy.Exe " & Chr(34) & objSource & Chr(34) & " " & Chr(34) & objDestination & Chr(34) & " /MIR" objShell.Run(objCommand) 'Datensicherung für PC03 ElseIf UCASE(computername) = UCASE("PC03") Then Set objShell = CreateObject("Wscript.Shell") objSource = "C:\Programme\Software3" objDestination = "\\server\files\backup\Software3" objCommand = "RoboCopy.Exe " & Chr(34) & objSource & Chr(34) & " " & Chr(34) & objDestination & Chr(34) & " /MIR" objShell.Run(objCommand) Else Msgbox "Die Datensicherung konnte nicht durchgeführt werden. Wenden Sie sich an ihren Administrator" End If [/PHP] Das Skript funktionert manuell ausgeführt ohne Probleme. So weit, so gut. Das Skript soll vor dem Herunterfahren ausgeführt werden. Deswegen wurde es mit Hilfe von Gruppenrichtlinien zugewiesen. (Computerkonfiguration->Windows-Einstellungen-> Skripts(Start/Herunterfahren) Das Skript habe ich ausgewählt. Der Testrechner schreibt auch das er ein Skript ausführt, leider komme ich nicht zum gewünschten Ergebniss, mit anderen Worten. Die Daten werden nicht gesichert. Meine Frage ist nun, habt ihr eine Idee woran es liegen kann und vor allem wie ich es umgehen kann ? Meine erste Vermutung ist, dass beim Herunterfahren die Informationen für die IF - Abfrage nicht zur Verfügung stehen. Aber ich weiß es halt nicht. Hat irgendjemand eine Idee ? mfg
9. September 200817 j ich habe mittlerweile rausgefunden, was das Problem ist, aber leider habe ich noch keine Lösung gefunden. Bedauerlicherweise trennt Microsoft vor dem ausführen des Skripts die Netzwerkverbindungen und da die Daten auf einen Server gespeichert werden, kann das Skript nicht ausgeführt werden. Die Frage ist nun, wie kann ich das umgehen, bzw. doch dafür sorge tragen, dass die Daten gesichert werden ?? Ich bin für jede Idee dankbar. mfg
11. September 200817 j Du könntest eine Batch schreiben die dein Script ausführt und anschließend den Rechner ausmacht. Wäre zumindest eine Lösung das du gelegentlich deine Daten sicherst. Du bräuchtest die Möglichkeit das dein Script früher ausgeführt wird als das die Netzwerkverbindungen gekappt werden. Oder Schreib das Programm um das die daten die du hast beim herunterfahren lokal zusammengepackt werden und beim nächsten Neustart auf den Server kopiert werden... Wäre zumindest etwas was ich probieren würde.
11. September 200817 j Wenn ich mich recht erinnere kann man doch auch irgendwie den Herunterfahren Button umschreiben oder war da nicht mal was? Dann könnte man das Script dort vor dem shutdown Befehl hinterlegen. Ich habe so ein Customize System mal in einer Schule gesehen weil die Schüler die Kisten nicht runterfahren durften. Der Rechner hat sich statt herunterzufahren nur abgemeldet (WinXP).
11. September 200817 j Danke für eure Hilfe. Ich habe das ganze jetzt etwas anders gelöst. Microsoft XP stoppt seine Dienste immer bevor die Netzwerkverbindunge getrennt wird und der Rechner herunterfährt. Ich habe jetzt einen Dienst geschrieben der beim Beenden des Dienstes diese Skript ausführt.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.