PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → API - Au secours, je n'y arrive pas....
API - Au secours, je n'y arrive pas....
Débuté par Wanono Eric, 18 sep. 2006 16:26 - 3 réponses
Posté le 18 septembre 2006 - 16:26
Afin de réactiver des SamartPhone et pocket Pc pour la bonne éxécution d'un de mes programmes,
j'ai besoin d'utiliser la fonction CeRunAppAtTime. Je ni arrive pas en Windev Mobile....

Comment faire appel à l'API CeRunAppAtTime définit comme suit dans la DLL

BOOL CeRunAppAtTime(TCHAR *pwszAppName, SYSTEMTIME *lpTime );

SYSTEMTIME étant :

typedef struct _SYSTEMTIME { // st
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME;

Merci d'avance,

Eric
Posté le 18 septembre 2006 - 18:12
donne nous un bout de code de ce que tu fais ?

eric l.

> Wanono Eric a écrit :
Afin de réactiver des SamartPhone et pocket Pc pour la bonne éxécution d'un de mes programmes,
j'ai besoin d'utiliser la fonction CeRunAppAtTime. Je ni arrive pas en Windev Mobile....

Comment faire appel à l'API CeRunAppAtTime définit comme suit dans la DLL

BOOL CeRunAppAtTime(TCHAR *pwszAppName, SYSTEMTIME *lpTime );

SYSTEMTIME étant :

typedef struct _SYSTEMTIME { // st
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME;

Merci d'avance,

Eric

Posté le 18 septembre 2006 - 19:40
Voici mon code en C, c'est en fait l'appel à la calculatrice qui sera remplacé par un exe ne faisant rien. Ceci, dans le seul but de réveiller le Pocket pc ou Smartphone. J'avout ne pas savoir le faire en Windev...


Le code :

//
// Réveille du Pocket PC
//

#include "stdafx.h"
#include "Notify.h"

int WINAPI WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{

SYSTEMTIME time;

// Récupération de l'heure courante
GetLocalTime(&time);

// Ajoute 58 minutes
time.wMinute = time.wMinute+58;

// Definition de l'evennement à executer
CeRunAppAtTime (L"calc.exe", &time);

return 0;
}
Posté le 03 septembre 2007 - 17:32
Ce bout de code marche pour moi :

res est un booléen = Faux

SystemTime est une structure
wYear est un entier sur 2 octets //Type C : WORD
wMonth est un entier sur 2 octets //Type C : WORD
wDayOfWeek est un entier sur 2 octets //Type C : WORD
wDay est un entier sur 2 octets //Type C : WORD
wHour est un entier sur 2 octets //Type C : WORD
wMinute est un entier sur 2 octets //Type C : WORD
wSecond est un entier sur 2 octets //Type C : WORD
wMilliseconds est un entier sur 2 octets //Type C : WORD
FIN


stWakeUpTime est un SYSTEMTIME
NewDate est une Date = DateSys()
NewHour est une Heure = HeureSys()

NewHour..Minute+

stWakeUpTime:wYear=NewDate..Année
stWakeUpTime:wMonth=NewDate..Mois
stWakeUpTime:wDayOfWeek=0
stWakeUpTime:wDay=NewDate..Jour
stWakeUpTime:wHour=NewHour..Heure
stWakeUpTime:wMinute=NewHour..Minute
stWakeUpTime:wSecond=NewHour..Seconde
stWakeUpTime:wMilliseconds=0

res = API("coredll","CeRunAppAtTime",ComplèteRep(fRepExe())+ "GestionContact.exe", &stWakeUpTime)
SI res ALORS Info("ok") SINON Erreur(ErreurInfo())