ABehm Geschrieben 7. September 2004 Geschrieben 7. September 2004 Hallo Ich denk mal ihr könnt mir helfen! Ich muss eine Batch Datei schreiben, die zu einer bestimmten Zeit ausgeführt wird. Die dan zwei Dosfenster schließt und den Rechner neustartet. Ist da möglich? Mfg ABehm Zitieren
kLeiner_HobBes Geschrieben 7. September 2004 Geschrieben 7. September 2004 Welches BS? Bei Windows XP reicht shutdown -r -t <zeit in sek>. Da werden auch die beiden DOS-Fenster automatisch geschlossen. Zitieren
-roTekuGeL- Geschrieben 7. September 2004 Geschrieben 7. September 2004 also bei nem Zeitpunkt is die AT funktion wohl nich ganz unangebracht... (muss aber NTreskit drauf sei) und dann so singemäß at 12:00 shutdown.exe(u.u. noch n paar parameter mitgeben) damit wird das event dann um 12Uhr ausgeführt... hilfe im DOS (at ?) Zitieren
ABehm Geschrieben 7. September 2004 Autor Geschrieben 7. September 2004 Das Problem ist nicht unbedingt das der Rechner neustartet, sondern das die Dosfenster geschlossen werden. Da man bei den Fenstern bestimmte Tasten Kombinationen braucht um sie zu schließen! Zitieren
kLeiner_HobBes Geschrieben 7. September 2004 Geschrieben 7. September 2004 sind das DOS-Hintergrundapplikationen, die da laufen oder sind das richtige Programme?(Weil du von Tastenkombinationen sprichst). Ist es z.B. schlimm, wenn der Prozeß einfach abgeschossen wird? Zitieren
-roTekuGeL- Geschrieben 7. September 2004 Geschrieben 7. September 2004 kennst du denn den unterschied ob abgeschossen oder richtig beendet? wenn ja teste das ganze doch mal mit der shutdown.exe (erstmal manuell) und schau mal wie die fenster geschlossen werden, vielleicht schießt die exe die gar nicht ab, sondern beendet die auf irgendeine art und weise richtig :confused: Zitieren
ABehm Geschrieben 7. September 2004 Autor Geschrieben 7. September 2004 Ich hab das jetzt mal mit shutdown ausprobiert, geht leider nicht, dann kommt "Please terminate Windows Application"! Also einfach so beenden is nich! Der Rechner muss irgendwie vorher die Tastenkombination Alt+F7 ausführen! Zitieren
prohaxxor Geschrieben 7. September 2004 Geschrieben 7. September 2004 ich hab mal was über nen befehl gelesen der irgendwas mit "exit xxx" war... ich such den auf alle fälle mal und poste dann nochmal wenn ich was gefunden habe! Zitieren
maxim_42 Geschrieben 8. September 2004 Geschrieben 8. September 2004 In Win 2000 gibt es den Konsolenbefehl Kill mit dem man einen Prozess terminieren kann. Das selbe erledigt Taskkill in Win XP. Dabei kann sowohl eine PID (ProzessId) oder der Windowtitle verwendet werden. Zitieren
ABehm Geschrieben 8. September 2004 Autor Geschrieben 8. September 2004 Danke,hilft mir aber nicht weiter, da die zwei Anwendungen keine PID besitzen, die Programme liegen auf einem Server und werden nur auf dem Client ausgeführt! Zitieren
kLeiner_HobBes Geschrieben 8. September 2004 Geschrieben 8. September 2004 Bitte? Wenn sie auf dem Client ausgeführt werden, müssen sie auf dem Client auch ne PID haben. Ansonsten erklär mir mal, wie das ohne geht *wirr* Zitieren
ABehm Geschrieben 8. September 2004 Autor Geschrieben 8. September 2004 Ja das weiß ich eben selber nicht! Das ist ist ja mein Problem! Zitieren
kLeiner_HobBes Geschrieben 8. September 2004 Geschrieben 8. September 2004 dann öffne im Client mal den Taskmanager und schau mal, ob du im Reiter Prozesse deine beiden Applikationen findest. Daneben steht dann idR eine PID. Alternativ kannst du in der Kommandozeile auch "qprocess *" eingeben (zumindest bein WinXP, vielleicht heißt es bei W2k etwas anders) und siehst es auch. Dadurch hast du zusätzlich die Möglichkeit mit ner Windows-Version von awk die PID auszulesen und für den kill zu verwenden. Zitieren
maxim_42 Geschrieben 8. September 2004 Geschrieben 8. September 2004 pmon listet alle laufenden Prozesse auf. Neben der PID kann man dort auch den Windowtitle lesen. Der bleibt im Gegensatz zur PID konstant, und sollte sich daher besser eignen den jeweiligen Prozess zu beenden. Zitieren
Schotti101 Geschrieben 9. September 2004 Geschrieben 9. September 2004 was muss man den da jetzt genau eingeben um den kill befehl auszuführen um einen Task mit hilfe der PID zu killen??? Zitieren
lakarando Geschrieben 10. September 2004 Geschrieben 10. September 2004 Mal ein anderer Vorschlag, probier folgendes Script ( als VBScript mit Endung .vbs abspeichern ) Option Explicit Dim objWMI, objProcess, strWQL, colResult, colInstances Dim objInstance Set objWMI = GetObject("winmgmts:{(Shutdown)}") strWQL = "select * from win32_process where name='cmd.exe'" Set colResult = objWMI.ExecQuery(strWQL) For each objProcess in colResult objProcess.Terminate 0 Next Set colInstances = objWMI.InstancesOf("win32_operatingsystem") For Each objInstance In colInstances objInstance.Win32Shutdown 0,0 next hier wird der User nur abgemeldet, den Shutdownmodus bestimmt die erste Zahl in der Zeile "objInstance.Win32Shutdown 0,0", mögliche Optionen sind: 0 = abmelden 1 = herunterfahren 2 = neustart 4 = forciert 8 = abschalten 16 = Kill das geht aber nur bei Windows2000 8 allein reicht zum abmelden-runterfahren-ausschalten. 16 wäre ein versuch wert, wenn sich deine Konsolenfenster doch nicht geschlossen haben mit "objProcess.Terminate 0", sei es weil sie hartnäckig sind, oder nicht von cmd.exe stammen. Da hast du aber noch die Möglichkeit in Zeile 8 "strWQL = "select * from win32_process where name='cmd.exe'" das cmd.exe durch einen anderen Namen zu ersetzen. Gruss Thoralf Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.