Hallo ich möchte gerne einen Shutdown Timer machen damit ich meinen pc bis nachts an lassen kann und er sich dann auschaltet.
Aber ich hab keine ahnung wie man das man in die input box schreibt das es ausgelesen wird
Shutdown Timer
-
- [ offen ]
-
lolxd232 -
8. August 2011 um 23:04 -
Geschlossen -
Erledigt
-
-
schau dir einfach mal die Befehle
[autoit]
[/autoit]
InputBox()
Shutdown()
; und ggf
Sleep()
in der Hilfe an. -
Hallo lolxd232,
herzlich willkommen im Forum und viel Spass mit AutoIt.
Hier kannst du dir die deutsche Hilfe herunterladen.
Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/Tutorial Sehr hilfreich ist auch das Buch von peethebee .und hier ein kleines Demo zu deinem Problem:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <StaticConstants.au3>
#include <date.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include<WindowsConstants.au3>Opt('GUIOnEventMode', 1)
[/autoit] [autoit][/autoit] [autoit]Global $sTitel = 'Beispiel zur Nutzung der _NowCalc - Func'
[/autoit] [autoit][/autoit] [autoit]Global $hMainGui = GUICreate($sTitel, 400, 280, 140, 150, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX))
[/autoit] [autoit][/autoit] [autoit]
;erzeugt eine GUI die zurückgebebene ID wird in der Variablen $hMainGui gespeichert
;die GUI hat BOXen für Mininmieren, Maximieren und ist in der Größe frei änderbar
GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
;Verknüpft dem Event $Gui_Event_Close mit der Funktion _End;Menübar anzeigen
[/autoit] [autoit][/autoit] [autoit]
Global $menu_help = GUICtrlCreateMenu("?", -1, 1)
Global $item_help_auto = GUICtrlCreateMenuItem("Autor: (Auto)Bert", $menu_help)
Global $item_help_exit = GUICtrlCreateMenuItem("Beenden", $menu_help)
GUICtrlSetOnEvent(-1, '_End')Local $hedtShutDown = GUICtrlCreateDate("01.01.2009", 20, 10, 150, 25, $DTS_UPDOWN)
[/autoit] [autoit][/autoit] [autoit]
;erzeugt ein Datum Steuerelement die zurückgegebene ID wird in der Variablen $hedtShutDown gespeichert
Local $DTM_SETFORMAT_ = 0x1032
Local $style = "dd/MM/yyyy HH:mm"
;Local $style = "hh:mm"
GUICtrlSendMsg($hedtShutDown, $DTM_SETFORMAT_, 0, $style)
GUICtrlSetFont(-1, 12)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKHEIGHT)
;verankert das "$hedtshutdown" Steuerelement Links, rechts, oben und fixiert die Höhe
;beim Resizen bleibt es dadurch auf seiner Position und ändert nur die Breite$hbtndStart = GUICtrlCreateButton('&starten', 220, 10, 150, 25)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
;verankert den Button "Prüfen" rechts und oben und fixiert die Größe
;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand
GUICtrlSetOnEvent(-1, '_SetShutDown')
;Beim Klicken des Buttons wird die Funktion _CheckTime aufgerufenLocal $hlblDifferenz = GUICtrlCreateLabel("hier steht danach die verbleibende Zeit", 12, 80, 170, 100)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
;verankert das Label links und oben und fixiert die Größe
;beim Resizen bleibt es dadurch auf seiner Position am linken RandGUICtrlCreateButton('Be&enden', 220, 115, 150, 25)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
GUICtrlSetOnEvent(-1, '_END')
GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)GUICtrlCreateGraphic(0, 210, 400, 2, $SS_BLACKRECT)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKRIGHT + $GUI_DOCKLEFT + $GUI_DOCKBOTTOM)
Global $hStatus = GUICtrlCreateLabel("Statuus", 5, 215, 400, 25)GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKRIGHT + $GUI_DOCKLEFT + $GUI_DOCKBOTTOM)
[/autoit] [autoit][/autoit] [autoit]
;verankert das Label Links, rechts und unten; fixiert die Höhe
;beim Resizen bleibt es dadurch auf seiner Position und ändert nur die Breite wird angepasst
GUISetState()While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(20000)
WEndFunc _End()
[/autoit] [autoit][/autoit] [autoit]
GUIDelete($hMainGui)
Exit
EndFunc ;==>_EndFunc _SetShutDown()
[/autoit] [autoit][/autoit] [autoit]
If GUICtrlRead($hbtndStart) = "&starten" Then
GUICtrlSetData($hbtndStart, "&stop")
GUICtrlSetState($hedtShutDown,$GUI_DISABLE)
AdlibRegister("_CheckShutDown",5000) ;prüft alle 5 Sekunden
Else
GUICtrlSetData($hbtndStart, "&starten")
GUICtrlSetState($hedtShutDown,$GUI_ENABLE)
AdlibUnRegister("_CheckShutDown")
EndIf
EndFunc ;==>_SetShutDownFunc _CheckShutDown()
[/autoit]
Local $dtNow = StringLeft(_NowCalc(), 16)
Local $sCheckShutDown = GUICtrlRead($hedtShutDown)
Local $dtShutDown = StringMid($sCheckShutDown, 7, 4) & "/" & StringMid($sCheckShutDown, 4, 2) & "/" & StringLeft($sCheckShutDown, 2) & " " & StringRight($sCheckShutDown, 5)
Local $dtDiff = _DateDiff('n', $dtNow, $dtShutDown)
GUICtrlSetData($hlblDifferenz, "noch " & $dtDiff & " Minuten")
If $dtDiff = 0 Then Shutdown(33)
EndFunc ;==>_CheckShutDownSchau dir zum besseren Verständnis die verwendeten Funktionen in der Hilfe nach,
mfg autoBert
-
autobert danke schön ich werd mir die hilfe herunterladen!
-
Das sollte gehen (Ist jetzt ein TIMER, er zählt runter. Wenn du um eine bestimmte Uhrzeit herunterfahren möchtest musst du es anders machen.)
[autoit]$iMinutes = InputBox("Time", "in wievielen MINUTEN soll der PC heruntergefahren werden?")
[/autoit][autoit][/autoit][autoit]$hTimer = TimerInit()
[/autoit][autoit][/autoit][autoit]
While TimerDiff($hTimer) <= $iMinutes * 60000
Sleep (20)
WEndShutdown (12)
[/autoit] -
Oder du machst das mit den Windows Board mitteln
WIN-TASTE+R
und dort das eingeben: shutdown /s /t 3600
z.B. fährt den PC nach einer Stunde runter.abbrechen kannst du ihn mit shutdown /a
Wenn du mehr über shutdown wissen willst gib cmd ein und dann in der Konsole: shutdown /?
Falls dir das zuviel rechnerrei ist dann musste dir wirklich was basteln oder ein Programm suchen.
Mein Tipp bastel dir selber was dann lernste was und kannst stolz drauf sein das du wasgeschaffen hast was du gebrauchen kannstGruss DevFly
-
Hi,
ich würde mir hier mal Beispiel 4 anschauen. Wenn die Zeit erreicht ist, dann ...
http://translation.autoit.de/onlinehilfe/fu…lCreateDate.htm
Gruß
Thomas