viele Personen setzen auf Ihrem Rechner den ccleaner ein.
Ob das unbedingt sinnvoll ist, oder nicht, möchte ich an dieser Stelle mal dahingestellt sein lassen. Ich finde es zumindest praktisch um bestimmte Spuren im System zu löschen....
Wie auch immer:
Das angehängte Script bereinigt den PC und fährt ihn anschließend herunter.
Das könnte der ccleaner auch selbst und zwar mit den Befehlserweiterungen:
ccleaner.exe /auto /shutdown
ABER: Es kann dann passieren das er noch auf hängende Programme wartet. Dies wirkt beim herunterfahren immer sehr unprofessionell.
Zwar könnte das mit einem Registry Eingriff ebenfalls beschleunigt werden, aber wer will das denn an jedem Rechner durchführen.
Dies übernimmt die Windows eigene shutdown.exe selbst:
Code: Select all
/*
fuehre shutdown.exe versteckt (, "Arbeitsverzeichniss" , Hide) aus und
fahre den PC herunter (Schalter /s), beende alle laufenden Prozesse sofort (Schalter /f),
zeige keinen Dialog an und warte nicht mit dem Herunterfahren (Schalter: /t 0 = 0 Sekunden)
*/
Run, C:\Windows\System32\shutdown.exe /s /f /t 0, ,Hide
Return
Der CCleaner muß einmal gestartet werden und die (zusätzlich) zu bereinigenden Elemente müssen ausgewählt werden.
GANZ WICHTIG:
Unter "Einstellungen" >> "Überwachung" >> "Systemüberwachung aktivieren" und "Überwachung aktivieren" müssen anschließend alle Haken entfernt werden. Bei der ProVersion zusätzlich noch "Browserüberwachung aktivieren" ebenfalls den Haken entfernen, soweit aktiviert.
Hintergrund:
Das Script startet den ccleaner.exe Prozess. Ist die Überwachung aber aktiv, läuft dieser ja bereits und die nachfolgenden Befehle können nicht funktionieren.
Zwar dauert das Herunterfahren etwas länger, dafür wird aber auch alles in einem Rutsch erledigt!
Allerdings könnte das mit der UAC kollidieren, sofern diese aktiv ist. Dann muss mit dem von moefr01 erstellten Script eine Aufgabe erstellt werden und eine Verknüpfung auf dem Desktop erfolgen:
https://autohotkey.com/boards/viewtopic ... 10&t=10733
Code: Select all
#NoTrayIcon ; Das AHK Symbol wird nicht angezeigt
#SingleInstance force ; Bei Neustart des Scriptes die alte Instanz ohne Nachfrage ersetzen
#Persistent ; Keeps a script permanently running - fuer den Timer notwendig
; ###########################################################
CCleaner := A_Is64bitOS ? "ccleaner64.exe" : "ccleaner.exe"
; Ist es ein 64 bit System?
; ###########################################################
If (FileExist("C:\Program Files\CCleaner")) ; Pruefe ob der Ordner vorhanden ist
RunWait, C:\Program Files\CCleaner\%CCleaner% /Auto, , ; Der CCleaner laeuft versteckt und automatisch mit den aktuell gespeicherten Optionen um den PC zu reinigen
Else ; wenn C:\Program Files\CCleaner nicht gefunden wurde, den naechstmoeglichen Pfad testen
{
RunWait, C:\Program Files (x86)\CCleaner\%CCleaner% /Auto, , UseErrorLevel; Der CCleaner laeuft versteckt und automatisch mit den aktuell gespeicherten Optionen um den PC zu reinigen
If ErrorLevel ; der CCleaner wurde nicht an den ueblichen Zielen gefunden
{
MsgBox,
( Join
Der CCleaner wurde nicht gefunden!`n`nEventuell wird eine portable Version verwendet, oder die Installation wurde in einem anderen Ordner oder auf einem anderen Laufwerk durchgeführt!
)
ExitApp
}
}
; MsgBox,
; ( Join
; Die Bereinigung mit dem CCleaner verlief erfolgreich!
; )
; ExitApp
SetTimer, Shutdown, 1000 ; erstelle einen Timer, und wiederhole ihn jede Sekunde (in Millisekunden)
Return
Shutdown: ; was soll der Timer genau machen:
Process, Exist, %CCleaner% ; prueft ob der CCleaner Prozess noch laeuft
If !ErrorLevel ; wenn der CCleaner Prozess nicht mehr gefunden wird - fuehre den naechsten Befehl aus
Run, C:\Windows\System32\shutdown.exe /s /f /t 0, ,Hide ; fuehre shutdown.exe versteckt (, "Arbeitsverzeichniss" , Hide) aus und fahre den PC herunter (Schalter /s), beende alle laufenden Prozesse sofort (Schalter /f), zeige keinen Dialog an und warte nicht mit dem Herunterfahren (Schalter: /t 0 = 0 Sekunden)
Return
/*
###########################################################
shutdown /s /f /t 0
Dabei bewirkt /s das Herunterfahren, /f erzwingt das Schließen ausgeführter Anwendungen ohne Warnung
und /t gibt das Zeitlimit für das Herunterfahren an, t 0 = 0 Sekunden, also sofort! Ohne Zeitangabe wird der Standart: 30 Sekunden ausgefuehrt
Syntax: C:\Windows\System32\shutdown.exe [/i | /l | /s | /r | /g | /a | /| /e] [/f] [/m \\Computer][/t xxx][/d [p:]xx:yy [/c "Kommentar"]]
/? Zeigt die Hilfe an. Dies entspricht einer Eingabe ohne Option
/i Zeigt eine grafische Benutzeroberfläche an. Dies muss die erste Option sein.
/l Abmelden. Dies kann nicht mit den Optionen /m oder /d verwendet werden.
/s Fährt den Computer herunter.
/r Fährt den Computer herunter und startet ihn neu.
/g Fährt den Computer herunter und starten ihn neu. Nach dem Neustart des Systems werden die registrierten Anwendungen gestartet.
/a Bricht das Herunterfahren des Systems ab. Diese Option kann während der Zeitüberschreitungsperiode verwendet werden.
/p Schaltet den lokalen Computer ohne Zeitlimitwarnung aus. Kann mit den Option /d und /f verwendet werden.
/h Versetzt den lokalen Computer in den Ruhezustand. Kann mit der Option "/f" verwendet werden.
/e Dokumentiert die Ursache für das unerwartete Herunterfahren eines Computers.
/m \\Computer Legt den Zielcomputer fest.
/t xxx Legt die Zeitüberschreitungsperiode vor dem Herunterfahren fest. Gültiger Bereich: 0-315360000 (10 Jahre),
der Standardwert ist 30. Wenn der Zeitüberschreitungswert größer ist als 0, wird der Parameter /f einbezogen.
/c "Kommentar" Kommentar bezüglich des Neustarts bzw. Herunterfahrens. Es sind maximal 512 Zeichen zulässig.
/f Erzwingt das Schließen ausgeführter Anwendung ohne Vorwarnung
Der Parameter /f wird einbezogen, wenn ein Wert größer als 0 für den Parameter /t angegeben wird.
###########################################################
###########################################################
Moegliche Programmpfade:
"C:\Program Files (x86)\CCleaner\CCleaner.exe"
"C:\Program Files (x86)\CCleaner\CCleaner64.exe"
"C:\Program Files\CCleaner\CCleaner.exe"
"C:\Program Files\CCleaner\CCleaner64.exe"
CCleaner.exe /AUTO
Der CCleaner laeuft versteckt und automatisch mit den aktuell gespeicherten Optionen um den PC zu reinigen.
Es wird das Traysymbol angezeigt und Balloon-Tipps werden eingeblendet
CCleaner.exe /AUTO /SHUTDOWN
Der CCleaner laeuft versteckt und automatisch mit den aktuell gespeicherten Optionen um den PC zu reinigen.
Es wird das Traysymbol angezeigt und Balloon-Tipps werden eingeblendet
Dann wird Windows automatisch heruntergefahren. Es muss der Befehl / AUTO vorangestellt sein.
Das Problem Prozesse werden nicht gekillt, sondern es wird gewartet bis die Prozesse beendet wurden
(per Windows Default sind das 30 Sekunden)
Die Loesung: ein Shutdown Batchbefehl der anschliessend ausgefuehrt wird
###########################################################
*/