Windows 2000 defragmentieren über Taskplaner
Ich stand vor dem Problem, dass ich unter Windows 2000 meine Festplatten defragmentieren wollte. Da es immer sehr viel Zeit in Anspruch nimmt, wollte ich es über den Taskplaner automatisieren. Das Problem ist, dass es die "alte" Defrag.exe unter Windows 2000 nicht mehr gibt.
Die Lösung dazu habe ich im Internet gefunden. Ist also nicht mein Verdienst! Da der Autor unter einem Pseudonym die Lösung zu Verfügung gestellt hat, kann ich nicht einmal seinen Namen erwähnen. Doch ich finde, der Lösungsansatz sollte in diesem Forum zu finden sein!
Es handelt sich bei der Lösung um ein VBE-Script. Dieses Script ruft das Programm auf und simmuliert die "Usereingaben".
Zur Erstellung reicht der Editor. Öffnen Sie den Editor und fügen Sie folgende Zeilen ein:
Im Grundprinzip erklärt sich das Script selber. Es werden die ersten beiden Laufwerke, die im Defrag angezeigt werden, defragmentiert. Will man noch mehr Festplatten defragmentieren, müssen Sie ensprechend die o.a. Steuerbefehle erweitern. Nun speichern Sie das Script unter einem beliebigen Namen in einem Verzeichnis ab.
Das Script muss die Endung *.vbs haben!
Jetzt rufen Sie den Taskplaner auf und wählen "geplanten Task hinzufügen". Nach einem Klick auf "weiter" können Sie mit "Durchsuchen" das jeweilige Verzeichnis (in dem Sie das Script gespeichert haben) sowie die Datei mit der Endung *.vbs anwählen. Danach legen Sie die jeweilige Ausführung des Scripts fest. Fertig!
Viel Erfolg!
MfG
Klansoft
P.S. Ob das Script wirklich funktioniert können Sie mit einem einfachen Doppelklick auf das VBE-Script überprüfen...
Die Lösung dazu habe ich im Internet gefunden. Ist also nicht mein Verdienst! Da der Autor unter einem Pseudonym die Lösung zu Verfügung gestellt hat, kann ich nicht einmal seinen Namen erwähnen. Doch ich finde, der Lösungsansatz sollte in diesem Forum zu finden sein!
Es handelt sich bei der Lösung um ein VBE-Script. Dieses Script ruft das Programm auf und simmuliert die "Usereingaben".
Zur Erstellung reicht der Editor. Öffnen Sie den Editor und fügen Sie folgende Zeilen ein:
'Zeile 1-3 normaler Script-Beginn.
Option Explicit
Dim WshShell
set WshShell = WScript.CreateObject("WScript.Shell")
'Aufruf von Defrag.
WshShell.Run "dfrg.msc"
WScript.Sleep 1000
'Wartet bis Defrag geladen ist.
While WshShell.AppActivate("Defragmentierung") = FALSE
wscript.sleep 1000
Wend
'Bringt Defrag in den Vordergrund.
WshShell.AppActivate "Defragmentierung"
WScript.Sleep 1000
'Erstes Laufwerk im Defrag-Programm wird selektiert.
WshShell.SendKeys "{TAB}"
WScript.Sleep 1000
'Das Menü Vorgang wird geöffnet.
WshShell.SendKeys "%o"
WScript.Sleep 1000
'Die Defragmentierung wird gestartet.
WshShell.SendKeys "D"
'Wartet bis das Dialogfeld "Defragmentierung abgeschlossen" erscheint.
While WshShell.AppActivate("Defragmentierung abgeschlossen") = FALSE
wscript.sleep 5000
Wend
'Bringt das Dialogfeld "Defragmentierung abgeschlossen" in den Vordergrund.
WshShell.AppActivate "Defragmentierung abgeschlossen"
WScript.Sleep 1000
'Wechselt im Dialogfeld "Defragmentierung abgeschlossen" zu Schließen.
WshShell.Sendkeys "{TAB}"
Wscript.Sleep 1000
'Schließt das Dialogfeld "Defragmentierung abgeschlossen".
WshShell.Sendkeys "{ENTER}"
Wscript.Sleep 1000
'Bringt das Fenster Defragmentierung in den Vordergrund.
WshShell.AppActivate "Defragmentierung"
'Zweites Laufwerk im Defrag-Programm wird selektiert.
WshShell.SendKeys "{PGDN}"
'Das Menü Vorgang wird geöffnet.
WshShell.SendKeys "%o"
WScript.Sleep 1000
'Die Defragmentierung wird gestartet.
WshShell.SendKeys "D"
'Wartet bis das Dialogfeld "Defragmentierung abgeschlossen" erscheint.
While WshShell.AppActivate("Defragmentierung abgeschlossen") = FALSE
wscript.sleep 5000
Wend
'Bringt das Dialogfeld "Defragmentierung abgeschlossen" in den Vordergrund.
WshShell.AppActivate "Defragmentierung abgeschlossen"
WScript.Sleep 1000
'Wechselt im Dialogfeld "Defragmentierung abgeschlossen" zu Schließen.
WshShell.Sendkeys "{TAB}"
Wscript.Sleep 1000
'Schließt das Dialogfeld "Defragmentierung abgeschlossen".
WshShell.Sendkeys "{ENTER}"
Wscript.Sleep 1000
'Bringt das Fenster Defragmentierung in den Vordergrund.
WshShell.AppActivate "Defragmentierung"
'Das Defrag-Programm wird beendet.
WshShell.Sendkeys "%{F4}"
'Optionale Kontrolle ob das Script auch ausgeführt wurde.
WScript.echo "Defragmentierung wurde ausgeführt"
'Script wird beendet
Wscript.quit
Das Script muss die Endung *.vbs haben!
Jetzt rufen Sie den Taskplaner auf und wählen "geplanten Task hinzufügen". Nach einem Klick auf "weiter" können Sie mit "Durchsuchen" das jeweilige Verzeichnis (in dem Sie das Script gespeichert haben) sowie die Datei mit der Endung *.vbs anwählen. Danach legen Sie die jeweilige Ausführung des Scripts fest. Fertig!
Viel Erfolg!
MfG
Klansoft
P.S. Ob das Script wirklich funktioniert können Sie mit einem einfachen Doppelklick auf das VBE-Script überprüfen...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 133737
Url: https://administrator.de/contentid/133737
Ausgedruckt am: 12.11.2024 um 22:11 Uhr
3 Kommentare
Neuester Kommentar