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, 2652 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
Neue Wissensbeiträge
Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(2)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Viren und Trojaner

Neue Magazin Ausgabe: Malware und Angriffe abwehren

Information von Frank zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Windows Systemdateien
Warum System auf "C:" (29)

Frage von DzumoPRO zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Cisco SG200: Auf bestimmtem vLAN bestimmte TCP-Ports sperren (16)

Frage von SarekHL zum Thema LAN, WAN, Wireless ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Cloud-Dienste
gelöst Bitcoins minen über Nacht? (16)

Frage von 1410640014 zum Thema Cloud-Dienste ...