Hallo,
Hab bei Google nix gefunden also frage ich mal hier.
Ich will eine Aufgabe machen die nur einmal am Tag funktioniert. Wie krieg ich das hin?
Welche Befehle sollte ich nutzen?
Mfg Nakroma
AutoIt Zeit
-
- [ gelöst ]
-
Nakroma -
28. Januar 2011 um 16:42 -
Geschlossen -
Erledigt
-
-
In der Reg/ini vllt. das Datum des heutigen Tages hinterlegen nach der Aktion. Und vor der Aktion überprüfen ob in der Reg/ini schon das heutige Datum steht.
-
Eben.
Aber wie liest man das Datum aus? -
[autoit]
If @Hour=14 and @min=30 then
[/autoit]
Msgbox(0, "Messagebox", "Diese Nachricht erscheint jeweils um 14.30.") -
Also könnt ichs z.B. so machen:
[autoit]
[/autoit]
Func Aufgabe()
$hour = IniRead....
$min = IniRead....
If @hour = $hour and @min = $min Then
Aufgabe
IniWrite("bsp.ini", "zeit", "hour", @hour)
IniWrite("bsp.ini", "zeit", "min", @min)
EndIf
EndFunc -
zu kompliziert;)
bei deinem beispiel wird die ini ausgelesen und dann das gleiche wieder reingeschrieben;)
machs doch einfach wie von Twodollarbillie vorgeschlagen:) -
Ich will ja machen, das wenn die aufgabe gelöst ist wird ein datum festgesetzt. Wenn das datum überschritten ist, ist die aufgabe wieder lösbar.
-
In diesem Forum gibts schon Treads zu dieser Frage.
Einfach mal die Suche benutzen.[ gelöst ] Programm zeitgesteuert öffnen
-
beantwortet nicht meine Frage.
Ich will eine aufgabe die man nur einmal am tag lösen kannst. -
- Offizieller Beitrag
Vielleicht so:
[autoit]
[/autoit]
$sIniFile = @ScriptDir & '\Blabla.ini'
$sCheckDate = IniRead($sIniFile, 'Config', 'Date', '00000000')
If @YEAR & @MON & @MDAY <= $sCheckDate Then Exit MsgBox(0, 'Abbruch', 'Das Programm wurde heute schon gestartet!')
IniWrite($sIniFile, 'Config', 'Date', @YEAR & @MON & @MDAY)
MsgBox(0, 'Check ausgeführt', 'Programm startet...') -
So ich habs hingekriegt:
[autoit]#include <ButtonConstants.au3>
[/autoit]
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 633, 447, 192, 124)
$Button1 = GUICtrlCreateButton("Button1", 121, 91, 421, 108, $WS_GROUP)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $Button1
If Iniread(@Scriptdir&"\test.ini", "datum", "datum", "")<> @mday then
Msgbox(0, "", "Diese Messagebox wird nur einmal am tag angezeigt")
Iniwrite(@Scriptdir&"\test.ini", "datum", "datum", @mday)
else
Msgbox(0, "", "Heute hast du schon einmal den Button geklickt")
endif
EndSwitch
WEnd
ist nur ne einfache version mit @mday, kannst ja erweitern.
gruß, billie -
Danke euch