Bonjour,
J'ai besoin de r�cup�rer le nombre de seconde depuis 1970 dans un projet WinCE.
Cependant la fonction time(NULL) fonctionne pour win32 et linux mais pas pour WinCE.
Est ce que quelqu'un peut m'aider.
Merci
Bonjour,
J'ai besoin de r�cup�rer le nombre de seconde depuis 1970 dans un projet WinCE.
Cependant la fonction time(NULL) fonctionne pour win32 et linux mais pas pour WinCE.
Est ce que quelqu'un peut m'aider.
Merci
Google a r�pondu � ma place :
http://www.opennetcf.com/SharedSourc...7/Default.aspx
Qui pointe sur :
http://time.codeplex.com/
Les noms des fonctions et types sont postfix�s avec _ce pour �viter les probl�mes de red�finition.
[FAQ des forums][FAQ D�veloppement 2D, 3D et Jeux][Si vous ne savez pas ou vous en �tes...]
Essayez d'�crire clairement (c'est � dire avec des mots fran�ais complets). SMS est votre ennemi.
Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Caf�. C'est d�pass� tout �a.
Et si vous �tes sages, vous aurez peut �tre vous aussi la chance de passer � la t�l�. Ou pas.
Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.
Il manque en effet pas mal de fonction de la biblioth�que standard C sur Windows CE et c'est souvent bien p�nible lorsqu'on veut utiliser du code provenant d'Unix.
Perso, j'avais utilis� http://wcelibcex.sourceforge.net/ il y a quelques temps et n'avais pas rencontr� de probl�me (mais je n'avais pas test� les fonctions time non plus)
En tout cas, attention si tu choisis d'�crire la fonction time � la main : le pi�ge �tant que �a semble tr�s simple � faire � premi�re vu - la structure windows FILETIME repr�sente le nombre de centaines de nanosecondes depuis le 1 janvier 1601, epoch le nombre de seconde depuis 1970, donc une simple soustraction semble r�gler le probl�me - mais c'est en fait plus compliqu� que �a car des probl�mes de timezone assez p�nible rentrent en jeu.
Merci Emmanuel Deloget et arzar pour vos r�ponses.
Effectivement vous avez raison il y a des commandes standard C non support� par WinCE.
Il fallait les impl�menter ou trouver des librairies pour �a.
En fait j�ai besoin de faire une comparaison entre deux instants pour voir est ce que un timeout est �coul� ou non.
Pour �a j�ai besoin de r�cup�rer deux temps en seconde.
J�ai trouv� une fonction dans MSDN que je pence satisfaire mon besoin.
�galement vos propositions peuvent r�soudre le probl�me.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 time_t time( time_t *inTT ) { SYSTEMTIME sysTimeStruct; FILETIME fTime; ULARGE_INTEGER int64time; time_t locTT = 0; if ( inTT == NULL ) { inTT = &locTT; } GetSystemTime( &sysTimeStruct ); if ( SystemTimeToFileTime( &sysTimeStruct, &fTime ) ) { memcpy( &int64time, &fTime, sizeof( FILETIME ) ); /* Subtract the value for 1970-01-01 00:00 (UTC) */ int64time.QuadPart -= 0x19db1ded53e8000; /* Convert to seconds. */ int64time.QuadPart /= 10000000; *inTT = int64time.QuadPart; } return *inTT; }
Encore merci pour l�aide.
Partager