survcopt
Messages postés224Date d'inscriptionmardi 27 mai 2003StatutMembreDernière intervention13 mai 2022
-
1 juin 2007 à 11:19
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
2 juin 2007 à 19:35
Toujours moi avec ma dll et ces multiples fonctions en C
elle se declare comme ca en C , cette fonction me renvoie une date au format time_t je suppose que c'est le format DateTime
GM_DLL_EXPORTED time_t __stdcall GM_GetSDKBuildDate
(
void
)
Je l'ai déclaré comme ca
[DllImport(DLLFileName, EntryPoint = "GM_GetSDKBuildDate")]
public static extern DateTime GM_GetSDKBuildDate();
et j'ai une jolie erreur
"La signature du type de cette méthode n'est pas compatible avec PInvoke."
J'en conclu que time_t != DateTime
Y a t il une idée sur le forum ?
Merci
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201822 1 juin 2007 à 12:34
Bonjour,
time_t est par défaut un entier sur 8 octets (long en c#)
DateTime datebuild = new DateTime(1970,1,1).AddSeconds(GlobalMapperDLL.GM_GetSDKBuildDate());
survcopt
Messages postés224Date d'inscriptionmardi 27 mai 2003StatutMembreDernière intervention13 mai 20221 1 juin 2007 à 14:03
comme ceci ca fonctionne
long datebuild = GlobalMapperDLL.GM_GetSDKBuildDate();
Maintenant j'ai une probleme de conversion
J'ai un chiffre : 1177801200 et je sais qu'il correspond à la date
04/07/2007 ,
j'ai compris qu'il s'agit d'un compteur qui commence le
01/01/1900 .
Existe-t-il une fonction qui effectue la conversion :
1177801200 => 04/07/2007