Ecrire une structure dans un fichier

Résolu
draluorg Messages postés 625 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 25 novembre 2010 - 26 mai 2007 à 13:16
draluorg Messages postés 625 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 25 novembre 2010 - 26 mai 2007 à 13:32
Salut a tous,

J'essai d'ecrire une structure dans un fichier mais apparement je dois mal m'y prendre...

Voici mon code:

#include <windows.h>


typedef struct _MY_STRUCT {
   long      MyLong1;        /* bytes */
   long      MyLong2; /* bytes */
   LPCSTR    MyBuffer;
 } MY_STRUCT;
 
int main(int argc, char *argv[])
{


    HANDLE      hFile;
    LPCSTR      sFile    = "E:\\TstFile.txt";
    DWORD       Ret      = 0;
    LPCSTR      sTxt     = "Test";
    MY_STRUCT   TStruct;
   
    TStruct.MyLong1 = 1200;
    TStruct.MyLong2 = 200;
    TStruct.MyBuffer = "Struct Test 1";
   
    char *ByteArray = (char *)&TStruct;
   
    hFile = CreateFileA(sFile, GENERIC_WRITE, FILE_SHARE_WRITE,NULL,CREATE_NEW,FILE_ATTRIBUTE_NORMAL, NULL);
   
    WriteFile(hFile, ByteArray, sizeof(TStruct) , &Ret, 0);
    CloseHandle(hFile);
    
  return 0;
 
}

Le fichier se crée bien mais ne contient pas ce qu'il devrait :(
Le but ici c'est enregistrer une structure dans un fichier et pouvoir la recuperer telle quelle ensuite

Merci d'avance pour votre aide

++

Quand on pose une question on est con 5 minutes,
Quand on ne la pose pas on le reste toute sa vie...

2 réponses

The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007 1
26 mai 2007 à 13:27
Salut,

LPCSTR ca serait pas un pointeur par hasard ? car tu peux pas copier des pointeurs et en les lisant retrouver la valeur pointee car faut copier la chaine complete

=
3
draluorg Messages postés 625 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 25 novembre 2010
26 mai 2007 à 13:32
rhoooo que je suis C**

Merci beaucoup!

Quand on pose une question on est con 5 minutes,
Quand on ne la pose pas on le reste toute sa vie...
0
Rejoignez-nous