bonjour,
bon j'ai un probleme tout simple je pense qui concerne le file mapping
je veux partager des données entre deux applications
c'est données sont en deux partie
une structure:
<code>
struct Partage_s
{
char Path1[500];
char Path2[500];
Ulong NbInfo;
int BitVie;
};
</code>
et apres un tableau de structure ou disons plus simple un tableau de int
int Valeur[NbInfo]
dont le nombre d'elements est le ULong NbInfo contenu dans la structure precedante(ULong=unsigned long int)
j'ai reussi a mapper la structure puis naivement j'ai essayer de mapper la suite donc mon tableau.
et la sa plante(le pointeur de mDataValue est NULL).
<code>
HANDLE hFileMap = CreateFileMapping(INVALID_HANDLE_VALUE,0,PAGE_READWRITE,0,sizeof(struct Partage_s)+20*sizeof(int),"filemap");
mData = (struct Partage_s*)MapViewOfFile(hFileMap,FILE_MAP_ALL_ACCESS,0,0,0);
mDataValue = (int*)MapViewOfFile(hFileMap,FILE_MAP_ALL_ACCESS,0,sizeof(struct Partage_s),0); //pointe a l'offset suivant
</code>
il ne faut pas faire gaffe a l'ecriture en elle meme elle est surement fausse (c'est juste pour expliquer)
je part du fait que j'ai 20 int dans mon tableau
en lisant la doc de MapViewOfFile j'ai vu que les offset devait tenir compte de la granularité de la memoire du systeme chez moi 0x10000 . j'ai essaye de chercher des exemples mais j'ai pas tout compris
si vous pouvez m'aider...merci beaucoup d'avance