Page 1 sur 1

[R] Planifier l'exécution

Posté : mar. 11 déc. 2007 13:09
par Guy
Bonjour,
Déjà, je suis très content d'avoir de nouveau accès au forum, un grand merci aux intervenants.
Voici ma question : Y a t'il moyen de différer l'exécution d'un script (exe ou au3), à savoir, avoir dans une GUI une liste de scripts, en choisir 1, et avoir un bouton "Planifier" permettant de lancer l'ecécution à une date/heure précise.
Merci d'avance de vos réponses.

Posté : mer. 12 déc. 2007 00:20
par Tlem
Oui, c'est tout à fait possible, mais pour ce faire, trois solutions :

- Créer un programme de planification qui sera résident.

- Créer à la volée un script de temporisation (Valable 1 fois pour le script concerner).

- Utiliser le planificateur de tache intégré à XP (Recommander).

Posté : jeu. 13 déc. 2007 08:20
par Guy
Merci, je vais creuser.
Pour l'instant, je n'arrive pas à forcer une heure dans un GUICtrlCreateDate ?

Posté : jeu. 13 déc. 2007 09:36
par Tlem
Avez-vous essayer l'exemple de l'aide ?

Code : Tout sélectionner

#include <GUIConstants.au3>

GUICreate ( "Choix de date", 200,200,800,200)
$date=GUICtrlCreateDate ("2007/12/13", 10,10,185,20 )
GUISetState ()

Do
    $msg = GUIGetMsg()
Until $msg = $GUI_EVENT_CLOSE

MsgBox(0,"Date",GUICtrlRead($date))
GUIDelete()
 
Et si je veut mettre une date en particulier sur le contrôle en cours de fonctionnement, j'utiliserais :

Code : Tout sélectionner

GUICtrlSetData ($date, "2007/12/03")
 

Posté : ven. 14 déc. 2007 10:33
par Guy
Oui, mais c'est pour l'heure que ça me pose problème,
j'ai essayé

Code : Tout sélectionner

#include <GUIConstants.au3> 
#include <Date.au3>
GUICreate ( "Choix heure", 200,200,800,200) 
$time=GUICtrlCreateDate ("", 10,10,185,20, $DTS_TIMEFORMAT) 
GUISetState () 

Do 
    $msg = GUIGetMsg() 
Until $msg = $GUI_EVENT_CLOSE 
GUICtrlSetData ($time, "20:00:00") 
MsgBox(0,"time",GUICtrlRead($time)) 
GUIDelete()
mais l'heure n'est pas réactualisée, même avec

Code : Tout sélectionner

GUICtrlSetData ($time, _NowTime()) 
 

Posté : ven. 14 déc. 2007 19:07
par Tlem
Guy a écrit :mais l'heure n'est pas réactualisée, même avec

Code : Tout sélectionner

GUICtrlSetData ($time, _NowTime()) 
 
Effectivement, il y à un 'piège'.
J'ai trouvé la réponse sur le forum Anglais : http://www.autoitscript.com/forum/index ... t&p=275120

Il suffit donc de renvoyer la commande GUICtrlSetData avec la date et l'heure.
Si votre contrôle n'utilise que l'heure, alors mettez la date que vous voulez.

Code : Tout sélectionner

GUICtrlSetData ($time, "01/01/1970 20:00:00")
 

Posté : ven. 14 déc. 2007 23:41
par Guy
Merci Thierry,
ça fait plaisir de pouvoir compter sur quelqu'un :D