ejecutar programa en una fecha señalada

Esta sección es para preguntas sobre programación/scripting usando AutoHotkey.

Moderator: Flipeador

escaperahk
Posts: 3
Joined: 15 May 2021, 14:20

ejecutar programa en una fecha señalada

15 May 2021, 14:57

Disculpen estuve viendo como programar fechas y horas para ejecutar tareas y no estoy logrando que abra mi programa, que error estoy cometiendo?
gracias quisiera que si es el 15 de cada mes a las 16 y 14 y 22 segundos se abra hola.txt

Code: Select all


FormatTime, hora2, hh
FormatTime, time, hh:mm:ss
FormatTime , monthday, dd = 15
FormatTime , minuto2, mm
FormatTime, segundo2, ss



    
   if (hora2 = "16" && minuto2 ="14" && segundo2 = "22" && monthday = "15") ;
    {
   Run ,"C:\Users\aleja\Desktop\hola.txt"

    }Return
muchas gracias
sofista
Posts: 650
Joined: 24 Feb 2020, 13:59
Location: Buenos Aires

Re: ejecutar programa en una fecha señalada

15 May 2021, 18:46

La estructura del script tendría que ser como la siguiente, faltan algunos detalles:

Code: Select all

#Persistent ; sin esta directiva el script se ejecuta una sola vez

SetTimer, AveriguarHora, 1000	; Tiempo en milisegundos (1000 = 1s)
Return

AveriguarHora:
Horario := A_Hour A_Min A_Sec
If (Horario = "203210") ; mi horario de prueba
	{
		MsgBox, Es la hora! ; aquí la acción que quieras ejecutar
	}
Return
Como la precisión del horario es del orden de segundos, se hace necesario ejecutar el script una vez por segundo, algo que parece excesivo. Por esto yo no usaría un script sino el Programador de tareas o Task Scheduler de Windows.

Editado: Salvado un error. Gracias @w0z :thumbup:
Last edited by sofista on 16 May 2021, 09:34, edited 1 time in total.
w0z
Posts: 230
Joined: 19 Jun 2014, 08:21

Re: ejecutar programa en una fecha señalada

15 May 2021, 19:16

Primero que nada para tu ejemplo de FormatTime le falta una coma

Code: Select all

FormatTime, hora2, ,hh
FormatTime , monthday, ,dd
FormatTime , minuto2, ,mm
FormatTime, segundo2, ,ss

Segundo en mi experiencia trabajar con segundos en autohotkey a veces o casi siempre es impreciso,
Por eso lo mejor para lo que quieres lograr es Ejecutar tu script desde el Task Scheduler de Windows como te sugiere @sofista .

Entonces en el script de tu ejemplo ya no tendrias que preocuparte por definir la condicional, de eso se encargaria el windows Task Scheduler
solo te quedarias con las lineas que deseas ejecutar en este caso:

Code: Select all

Run ,"C:\Users\aleja\Desktop\hola.txt"
If I was helpful consider Donate me. :beer: , plz :D

Return to “Pedir Ayuda”

Who is online

Users browsing this forum: No registered users and 49 guests