|
|
|||
|
Comment programmer des notifications avec eVB ? N'avez-vous jamais eu envie de déclencher l'exécution de votre programme eVB sur un événement ? Le système d'exploitation possède cette possibilité, mais pour utiliser ces fonctions il faut créer une structure, chose impossible en eVB (il existe bien une méthode, mais c'est pas simple). Perso, j'utilise la technique de notification pour effectuer une serie de mesures par RS. Mon application de réveille toutes les 2h30, effectue ses mesures (durée 30 secondes) et se reprogramme un nouveau réveil sur 2h30 plus tard puis quitte. La fonction de mise en veille auto rendort le Pocket PC au bout de 3 minutes. Très pratique donc. Nous avons donc créé une DLL pour eVB qui permet de déclencher un programme sur 3 événements : A une date et heure données VBNotify.dll (c'est son nom) doit être copiée dans le dossier \Windows de votre Pocket PC. Elle exporte 5 fonctions :
Cette fonction permet de lancer un programme (chemin complet dans le premier paramètre) à un instant donné. Le moment du lancement est défini par les 6 paramètres suivants, qui sont l'année, le mois, le jour, l'heure, les minutes, et les secondes. Si vous voulez lancer le programme "\Windows\Essai.vb" le 15/07/2001 à 15:30:00 vous devez executer la ligne de code suivante : Call ExecuteAppAtTime("\Windows\Essai.vb",2001,7,15,15,30,0) Cette fonction est déclarée dans eVB de la manière suivante : Public Declare Function ExecuteAppAtTime Lib "VBNotify" (ByVal wApplicationFilename As String, ByVal wYear As Integer, ByVal wMonth As Integer, ByVal wDay As Integer, ByVal wHour As Integer, ByVal wMinute As Integer, ByVal wSecond As Integer) As Boolean
Si avant l'échéance vous souhaitez arrêter la notification d'un programme, il faut utiliser cette fonction avec comme simple paramètre le nom du programme. Ceci nous indique qu'il ne peut y avoir qu'une notification par programme. Cette fonction est déclarée dans eVB de la manière suivante : Public Declare Function StopExecuteAppAtTime
Lib "VBNotify" (Byval wApplicationName as String)
Il faut utiliser cette fonction pour indiquer au système qu'il doit exécuter un programme à chaque mise sous tension. Le programme est stipulé en paramètre (le chemin complet) Cette fonction est déclarée dans eVB de la manière suivante : Public Declare Function ExecuteAppOnWakeUp Lib "VBNotify" (ByVal wApplicationFilename As String) As Boolean
Cette fonction indique au système qu'il faut exécuter un programme passé en paramètre à chaque changement (réglage) de l'heure système. Cette fonction est déclarée dans eVB de la manière suivante : Public Declare Function ExecuteAppOnTimeChange Lib "VBNotify" (ByVal wApplicationFilename As String) As Boolean
Si vous voulez stopper la notification sur événement d'un programme, vous devez utiliser cette fonction, qui ne prend comme paramètre que le programme concerné. Attention tout de même, vous devez ecrire EXACTEMENT la même chaine que lors de l'appel à ExecuteAppOnWakeUp et ExecuteAppOnTimeChange car "\Windows\Toto.vb" c'est pas la même chose que "\windows\toto.vb" pour le système de notification (zarbi !) Cette fonction est déclarée dans eVB de la manière suivante : Public Declare Function StopExecuteAppOnEvent
Lib "VBNotify" (ByVal wApplicationFilename As String) As Boolean
Vous trouverez ci-dessous les sources en
eVC de cette DLL, la DLL pour ARM (si vous souhaitez les autres formats
faites le nous savoir sur le forum).
Voilà, avec cette DLL vous pouvez maintenant écrire des programmes qui se réveillent tout seuls.
|
|||
|
|
|||
|
Copyright 2001-2004 - Tous droits réservés
|
|||
|
iPAQ
est un produit de COMPAQ.
|