Page 1 of 1

Skript automatisieren

Posted: 04 Dec 2022, 13:28
by Electro
Moin,

Ich hab ein Skript welches ein Programm schließt und danach startet und sich einloggt,
wie bekomme ich es hin das täglich um xx Uhr startet (wichtig ist, das es nur 1x startet und
danach wieder am nächsten Tag um xx Uhr).

Hatte gerade folgendes via google gefunden:

Code: Select all

Start := "19:16"
SecondsToWait -= A_YYYY A_MM A_DD SubStr(Start,1,2) SubStr(Start,-1), Seconds
SetTimer, TIMER,% SecondsToWait * 1000
Hat auch soweit funktioniert, nur hat das das Skript kurze Zeit später wieder ausgeführt.


mfg

Re: Skript automatisieren

Posted: 04 Dec 2022, 14:44
by KHA
Dafür eignet sich die Windows Aufgabenplanung sehr gut.
Bitte Beachten, ein haken muss bei "Mit höchsten Privilegien ausführen" gesetzt werden.

Re: Skript automatisieren

Posted: 07 Dec 2022, 10:21
by UnReALiTyy
Electro wrote:
04 Dec 2022, 13:28
Moin,

Ich hab ein Skript welches ein Programm schließt und danach startet und sich einloggt,
wie bekomme ich es hin das täglich um xx Uhr startet (wichtig ist, das es nur 1x startet und
danach wieder am nächsten Tag um xx Uhr).

Hatte gerade folgendes via google gefunden:

Code: Select all

Start := "19:16"
SecondsToWait -= A_YYYY A_MM A_DD SubStr(Start,1,2) SubStr(Start,-1), Seconds
SetTimer, TIMER,% SecondsToWait * 1000
Hat auch soweit funktioniert, nur hat das das Skript kurze Zeit später wieder ausgeführt.


mfg
Dies ist eigentlich relativ Simpel. In der IF Zeile schreibst du zwischen die Anführungszeichen " " die Uhrzeit und in die Klammern { } darunter die Befehle die zu dieser Uhrzeit ausgeführt werden sollen. Der SetTimer führt es dann jede Minute erneut aus und ist somit nur einmal am Tag möglich.

Code: Select all

Timer:
IF (A_Hour ":" A_Min = "08:30") {
	MsgBox, Zeit erreicht
	;deine Befehle XY
}
SetTimer, Timer, -60000
Return
Du kannst aber auch eine kurze Version ganz oben im Skript setzen. Finde ich persönlich besser. Der Befehl bleibt identisch.

Code: Select all

SetTimer, Timer, 60000
Timer:
IF (A_Hour ":" A_Min = "08:30")
	goto, start
else Return

start:
;deine Befehle XY
Return