Beiträge von chip
-
-
Was ist es den, flash, rein html, javascript? Ohne weiter Angaben oder noch besser der Link zu der Seite kann man garnichts dazu sagen.
-
Tasten kannst zu entweder mit HotKeySet oder _IsPressed machen. Texte musst halt immer z.b. nach dem drücken von Enter die Editbox mit GUICtrlRead auswerten.
-
Kannst so machen:
Spoiler anzeigen
[autoit]#include < Misc.au3 >
[/autoit] [autoit][/autoit] [autoit]
MsgBox(0, "Stop", "Dein Computer schaltet sich in 15 Sekunden automatisch ab" & @CRLF & @CRLF & "Tschüss " & "laal", 15)
Local $hDLL = DllOpen("user32.dll")$begin = TimerInit()
[/autoit] [autoit][/autoit] [autoit]
While 1
If TimerDiff($begin) < 5000 Then
If _IsPressed("7A", $hDLL) Then ; 7A ist die F11 Taste
ConsoleWrite("_IsPressed - Shift Key was pressed." & @CRLF)
DllClose($hDLL)
ExitEndIf
[/autoit]
Else
Shutdown(13)
Exit
EndIf
WEnd -
So lange die MsgBox noch offen ist wird das Script nicht weiter ausgeführt sprich du kommst nicht in deine While. Und sobald du die Msg schließt muss sofort die F11 gedrückt sein sonst geht es direkt in den else-Zweig deiner If-Abfrage und damit zum Shutdown.
-
Hier ich habs dir mal umgeschrieben. So kann das ganze auch nichtmehr via Icon und Taskmanager beendet werden:
Spoiler anzeigen
[autoit]#NoTrayIcon
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
#include <Date.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>#region ### START Koda GUI section ### Form=
[/autoit] [autoit][/autoit] [autoit]
$Form1 = GUICreate("PC Laufzeit", 459, 89, 340, 299, BitOR($WS_SYSMENU, $WS_CAPTION, $WS_POPUP, $WS_POPUPWINDOW, $WS_BORDER, $WS_CLIPSIBLINGS, $WS_EX_LAYERED))
$Label1 = GUICtrlCreateLabel("Bitte geben Sie hier die gewünschte PC laufzeit in Minuten ein!", 8, 8, 444, 24)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$minuten1 = GUICtrlCreateInput("60", 16, 48, 145, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Button1 = GUICtrlCreateButton("Zeit Setzen", 168, 48, 75, 25, 0)
$input1 = GUICtrlCreateInput("", 260, 48, 180, 21, $ES_READONLY)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$minuten = GUICtrlRead($minuten1)If $minuten > 0 Then
[/autoit] [autoit][/autoit] [autoit]
$final = _DateDiff('s', "1970/01/01 00:00:00", _NowCalc())
$final = $final + (GUICtrlRead($minuten1) * 60)
AdlibRegister("check")
GUISetState(@SW_HIDE)
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\system", "DisableTaskMgr", "REG_DWORD", 1)
Else
Exit
EndIf
EndSwitch$state = WinGetState("PC Laufzeit")
[/autoit] [autoit][/autoit] [autoit]If BitAND($state, 2) Then
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($input1, _Now())
EndIf
WEndFunc check()
[/autoit] [autoit][/autoit] [autoit]
If _DateDiff('s', "1970/01/01 00:00:00", _NowCalc()) > $final Then
AdlibUnRegister("check")SplashTextOn("Abmelden in", "60", 80, 50)
[/autoit] [autoit][/autoit] [autoit]
For $x = 10 To 1 Step -1
ControlSetText("Abmelden in", "", "Static1", $x)
Sleep(1000)
NextRegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\system", "DisableTaskMgr", "REG_DWORD", 0)
[/autoit] [autoit][/autoit] [autoit][/autoit]
Shutdown(0)
EndIf
EndFunc ;==>check -
Mal abgesehen das der Titel nix mit dem Inhalt zu tun hat, kann man das Script über das Trayicon bzw. im Taskmanager beenden.
Massenhaft unnötige includes hast auch drin, es kann alles raus bis auf:
Date.au3
EditConstants.au3
GUIConstantsEx.au3
WindowsConstants.au3Auch geht dein Countdown für die Restzeit nicht.
-
Grins ich weiß genau was gleich pee schreiben wird :D.
-
Blockierte Posts zählen nicht als posts ;).
-
Tja und genau deshalb bin ich schon lange dafür die Shoutbox erst nach X posts im Forum nutzbar zu machen. Scriptkiddis werden so direkt rausgefilter wegen der Threadmoderierung.
-
Was bezahlst den?
-
Wenn du das getan hättest wäre es nie zu diesem Thread und deinem Script gekommen. Wenn es nicht lernen willst dann lass es gleich bleiben ;).
-
-
Bitte tue dir und allen anderen einen gefallen und schau dir das Tutorial an: http://wiki.autoit.de/wiki/index.php/Tutorial
-
Warum nimmst du dafür DOS Befehle und nicht die entsprechenden Autoitfunktionen. Sehe keinen Sinn in diesem Script so wie es aktuell ist.
-
Ich seh schon die ersten Leute mit Werbeinblendungen auf dem Shirt rumlaufen XD.
-
Naja wenn man die Farbe des Shirts z.b. komplett ändern könnte wäre das durchaus interessant. so aber nur spielerei.
-
Oh auf dem Stand war ich noch gar nicht. Ich dachte es gäbe nur Anfänge vom decompilen, aber wenn das schon soweit ausgereift ist ist das leider doof :(.Das hat nichts mit ausgereift zu tun. Autoit schmeist beim "compilieren" lediglich die au3 + interpreter in eine exe mehr nicht. Dementsprechend einfach ist auch das herrausholen der au3.
-
-
Wie gesagt jedem das sein. Ich für meinen Teil werde ihn aus den bereits genannten Gründen nicht nutzen, außerdem finde ich es nicht gut wenn man anderen Lösungen zu Problemen vorenthällt statt sie im Forum dann zu Lösen.
-
Erhoff dir nicht viel davon. Beim Programmieren braucht man seine Ruhe und nicht von x Leuten die Ohren voll gelabert bekommen ;).