Der Wert dieses Artikels liegt nicht in der Lösung selbst, sondern in einer Erinnerung daran, wie einfache Probleme schnell gelöst werden können.
Wenn Sie jedoch eine einfache Lösung benötigen, gehen Sie bitte wie folgt vor:
Speichern Sie diese Zeilen in CMD und nach dem Start in 20 Minuten (1200 Sekunden) wechselt der Computer in den Ruhemodus. Insgesamt benötigte das Programm 73 Bytes :
ping 127.0.0.1 -n 1201 > nul
rundll32 powrprof.dll,SetSuspendState 0,1,0
Wenn Sie es jedoch nur ausschalten müssen , ist alles noch kürzer, nämlich 47 Byte . Nur die zweite Zeile sieht so aus:
shutdown -s -t 00
Ich benutze dies vor dem Schlafengehen, einschließlich meines Lieblings-Online-Radios "damit der Schlaf kommt", auch über die Kommandozeile, die unter dem Schnitt besprochen wird.
Wer ist noch neugierig, bitte unter der Katze. Links zu vorgefertigten Skripten am Ende des Artikels.
Zum größten Teil ist alles Neue gut vergessen, alt.
Schauen wir uns zunächst an, was diese Zeilen bewirken:
Wir pingen eine IP-Adresse , die immer verfügbar ist (es sei denn, Ihre Firewall ist "ausgefallen" konfiguriert). Das Standardintervall beträgt 1000 ms = 1 Sekunde. Der Schalter -n stellt die Anzahl der Wiederholungen auf 20 Minuten x 60 Sekunden = 1200 + 1 ein (da der erste Ping in weniger als 1 ms zurückgegeben wird). Und das Konstrukt > nul teilt dem Interpreter mit, dass die Standardausgabe an nul gesendet wird , um unnötige Ausgaben auf dem Bildschirm zu vermeiden.
ping 127.0.0.1 -n 1201 > nul
Das Programm rundll32.exe wird aufgerufen , um eine DLL-Routine auszuführen. In diesem Fall SetSuspendState mit den benötigten Parametern. Detaillierte Beschreibung auf MSDN .
rundll32 powrprof.dll,SetSuspendState 0,1,0
Es sollte beachtet werden , dass , wenn Sie Hybrid - Sleep - Modus (aktiviert haben Hibernate ), dann wird es diesen Modus ein. Sie können es deaktivieren, indem Sie Folgendes als Administrator ausführen:
powercfg -hibernate off
Es gibt ein paar weitere Verwendungszwecke unter dem Spoiler, zum Beispiel ...
Winamp .
(WIN + L).
(Hibernate).
.
( ).
.
.
.
.
, WinAPI .
start winamp http://cast.loungefm.com.ua:8000/acoustic128
(WIN + L).
rundll32.exe User32.dll,LockWorkStation
(Hibernate).
rundll32.exe PowrProf.dll,SetSuspendState
.
shutdown.exe -r -t 00
( ).
rundll32 user32.dll,SwapMouseButton
.
rundll32 shell32.dll,Control_RunDLL main.cpl,@0,1
.
rundll32 user,SetCursorPos
.
rundll32 user,CascadeChildWindows
.
rundll32 user,TileChildWindows
, WinAPI .
Es gibt einen bekannten Ausdruck, den viele Menschen mögen:
Faulheit ist der Motor des Fortschritts.
Ein bisschen Geschichte:
Bereits 2003 wurde in Eile ein einfaches Programm geschrieben, um den PC per Timer auszuschalten. Ich habe es selbst geschrieben, weil ich zu dieser Zeit keine vertrauten Programmierer und keinen Zugang zum Internet hatte. Ich bin sicher, dass viele der gleichen "Heimprogrammierer", die MSDN-Discs gekauft oder in diese geschnitten haben, die ganze Nacht über Windows-Programmierung studiert haben. Anlässlich des Schreibens des Artikels habe ich ihn in einem alten Archiv auf dem PC meiner Eltern geöffnet. Sie sah einfach aus, erfüllte aber ihre Aufgabe. Wie sich herausstellte, benutzen es sogar jetzt einige meiner Freunde.
Ich kann mich nicht erinnern, worauf es geschrieben wurde (VC, VB, Delphi oder Assembler). Seine Größe war auch nicht groß, aber immer noch 16 166 gegenüber 47 Bytes können nicht verglichen werden.
Und als ich vor ein paar Tagen die gleiche Funktionalität benötigte, suchte ich nach ähnlicher Software. Stellen Sie sich meine Enttäuschung vor, als ich eine Reihe von Programmen im Durchschnitt von 1,1 MB bis zu riesigen Monstern mit einer Größe von 15,2 MB fand . Mein Gewissen erlaubte mir natürlich nicht, diese Häresie auch nur im Sandkasten auszulösen. Als ich merkte, dass ich eine Verzögerung von 20 Minuten und den Aufruf von nur einer Prozedur benötige, erinnerte ich mich an rundll32.exe , ging ins Internet und täuschte mich nicht. Als Ergebnis wurde die Lösung in 1 Minute gefunden.
Moral:
Wir benötigen oft keine Software von Drittanbietern, um einfache Aufgaben zu lösen. Es reicht aus, nur zu einer Suchmaschine zu gehen und eine einfache Lösung für das Problem zu finden, das in 98,785% bereits gemeinfrei ist. Natürlich müssen wir einen anderen Weg erwähnen, für echte IT-Spezialisten die Fantasie anregen, zu den MSDN-Handbüchern gehen und die vorgefertigten Betriebssystemfunktionen nutzen. Stimmen Sie zu, es ist angenehm, einfache und elegante Lösungen zu verwenden, aber es ist doppelt angenehmer, wenn Sie mit Ihrem eigenen Verstand zu ihrer Entscheidung kommen.
Wie versprochen frühere Links:
Skripte für Shutdown-Timer, starten Sie das Radio und wechseln Sie in den Ruhemodus - radio_sleep_scripts.zip
Plötzlich wird mein altes Handwerk interessant sein - ExitXP.exe
Ich hoffe dir hat mein erster Beitrag gefallen. Ich würde mich über Kommentare und Vorschläge zum Artikel freuen. Ich würde gerne Ihre interessanten Lösungen für ähnliche Probleme in den Kommentaren sehen. Vielen Dank für Ihre Zeit und lesen Sie bis zum Ende.