Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Script zu einem späteren Zeitpunkt starten

Frage Entwicklung

Mitglied: zubbel

zubbel (Level 1) - Jetzt verbinden

10.12.2010, aktualisiert 08:53 Uhr, 2656 Aufrufe, 10 Kommentare

Hallo allesamt,

Habe ein bisschen Probleme mein Script zum laufen zu bringen. Die eigendliche Aufgabe sollte darin bestehen, dass das Script vom Loginscript aufgerufen wird, dann die aktuelle Systemzeit ausliest und z.B. 15 Minuten hinzu addiert und zu diesem neuen Zeitpunkt ein weiteres Script startet.

Zum System:
Das Loginscript liegt auf einem SBS 2008.
Das zweite Script liegt auf einem separaten NAS.
Die Clients sind mit Windows XP, Vista und Windows 7 installiert.


Also um meine Versuche gleich mal aufzuzählen:
- Als erstes habe ich den Versuch mit einem VBScript gemacht und dabei die Zeit mittels eines "wait" Befehls überbrückt. Das Script habe ich beim Kunden getestet, was zur Folge hatte, dass diverse Computer nicht mit dem Loginscript fertig wurden und daher gar nicht erst aufgestartet haben oder auch abgestürzt sind. Ich muss den Vorgang also irgendwie unterbrechen können, sodass er das Loginscript fertigstellt ohne auf zu warten bis der wait Befehl fertig ist.

- Danach bin ich auf den Batch von Biber gestossen (wirklich grosses Lob an dich, hat mir schon mal weitergeholfen ) mit dem ich über einen DOS Batch die Zeit addieren kann. Diese Zeit habe ich dann ganz einfach in einen AT-Befehl eingefügt, die Aufgabe wurde auch ohne Probleme gestartet nur wird dabei nichts gemacht.

- Schlussendlich habe ich jetzt versucht den Batch in ein VBScript zurückzuschreiben, dazu habe ich aber keinen Befehl gefunden mit dem ich das Script unterbrechen könnte, deshalb hab ich auf den DOS-Befehl "schtasks" zurück gegriffen. Aber leider funktioniert das ebenfalls nicht, oder besser gesagt nur zum Teil, da dies von Computer zu Computer variiert.


Hier mal mein Code (ist nicht viel aber sollte eigentlich die Aufgabe erfüllen):
01.
AddTime = TimeSerial(0, 15, 0) 
02.
Pfad = "\\Server\Temp\inventarisieren.vbs" 
03.
Set WshShell = WScript.CreateObject("WScript.Shell") 
04.
 
05.
WshShell.Run "schtasks.exe /delete /tn Script /f" 
06.
 
07.
NewTime = Time + AddTime 
08.
 
09.
WshShell.Run "schtasks.exe /Create /sc Einmal /tn Script /st " & NewTime & " /tr " & Pfad & 


Nun hoffe ich dass mir jemand sagen könnte wo ich den Fehler mache oder ob jemand eine Idee hat das ganze besser umzusetzen.


Zubbel
Mitglied: Mad-Eye
10.12.2010 um 08:57 Uhr
Hi,

ich vermute mal es ist ein Copy&Paste-Error das die letzte Zeile nicht vollständig ist?

Gruß
Mad-Eye
Bitte warten ..
Mitglied: zubbel
10.12.2010 um 09:03 Uhr
Danke für die schnelle Antwort erstmal

Ne ich hab da ein "&" zuviel reingepostet, müsste eigentlich lauten:
01.
WshShell.Run "schtasks.exe /Create /sc Einmal /tn Script /st " & NewTime & " /tr " & Pfad
Gruss

Zubbel
Bitte warten ..
Mitglied: Mad-Eye
10.12.2010 um 09:23 Uhr
Mmhhm

das schtasks.exe das du mit " anfängst sollte damit es ein Vollständiger Befehl ist auch mit " abschliesen damit WshShell.Run auch den Pfad als Parameter mitgibt.

WshShell.Run "schtasks.exe /Create /sc Einmal /tn Script /st " & NewTime & " /tr " & Pfad & "" so in etwa.

Gruß
Mad-Eye
Bitte warten ..
Mitglied: zubbel
10.12.2010 um 09:40 Uhr
Ich weiss nicht ob dass das einzige Problem ist. Wenn ich es manuell von meinem PC starte funktioniert es ohne Probleme und auch wenn es über das Loginscript aufgerufen wird funktioniert es bei manchen Computern, bei Anderen jedoch leider nicht.
Bitte warten ..
Mitglied: MiniStrator
10.12.2010 um 10:19 Uhr
Hi zubbel,

vielleicht hilft dir ein Ping weiter?

ping 1.0.0.0 -n 1 -w 900000

schickt einen Ping nach 1.0.0.0 (ist nicht erreichbar) und wartet 900000ms auf Antwort...

Gruß
Bitte warten ..
Mitglied: BigWim
10.12.2010 um 10:32 Uhr
Moin Zubbel,

wenn ich auch mal meinen Senf dazugeben darf.

Die eine Anforderung, die mal umsetzen mußte, habe ich mit der Delay.exe erledigt.

Markus
Bitte warten ..
Mitglied: zubbel
10.12.2010 um 11:02 Uhr
hi BigWim und MiniStrator

Werd beides mal ausprobieren, aber laufen beide Varianten nicht auf das gleiche raus wie mit der wait.exe?

Gruss
Bitte warten ..
Mitglied: 76109
10.12.2010 um 11:17 Uhr
Hallo zubbel!

TimeAdd = DateAdd("n", 15, Time)

Gruß Dieter
Bitte warten ..
Mitglied: BigWim
10.12.2010 um 11:30 Uhr
Das mit dem "Wait" habe ich überlesen.

Vom Prinzip ja, die "Kunst" ist ja, ein Script zu starten ohne das das Loginscript auf die Beendigung wartet.

Das schaffst Du nur, wenn Du eine "eigene" CMD aufmachst. Was dann für die Zeitverzögerung sorgt, ist "Geschmackssache". Sinngemäß müßtest Du also (ungetestet) solches probieren.

ohne Verzögerung - Loginscript läuft weiter
01.
start MyScript.cmd
mit Verzögerung - Loginscript läuft weiter
01.
start delay.exe <Parameter> MyScript.cmd
Markus


[edit] Tippfehler beseitigt [/edit]
Bitte warten ..
Mitglied: MiniStrator
10.12.2010 um 11:34 Uhr
Hi,

du könntest ja in deinem Loginscript ein zweites Batch aufrufen:

a.cmd:

tu dies
mach jenes

>> start b.cmd

tu das noch
mach nochwas

und in der b.cmd dann

ping blabla
jetzt mach das


//edit: Da war BigWim wohl schneller...
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Findstr Path CMD ja - Batch Script nein - FireFox Profiles (2)

Frage von ChrisIO zum Thema Batch & Shell ...

Peripheriegeräte
PowerChute Business Edition startet das Script nicht (11)

Frage von merome zum Thema Peripheriegeräte ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte