begin process at 2012 02 10 16:34:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Fichier & Disque

 > 

filemapping et un peu plus


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

filemapping et un peu plus

lundi 9 mars 2009 à 18:58:25 | filemapping et un peu plus

PADYVEN

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

lundi 9 mars 2009 à 19:38:10 | Re : filemapping et un peu plus

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
Tu veux y mettre une struct Partage_s + 1 tableau de 20 int, c'est ça ?

Si oui,
HANDLE hFileMap = CreateFileMapping(INVALID_HANDLE_VALUE,0,PAGE_READWRITE,0,sizeof(Partage_s) + 20 * sizeof(int),"filemap");
VA BON.

tu voudrais donc un pointeur *int sur le tableau et 1 pointeur sur la struct:
Partage_s *ppartage;
int *pint;
ppartage = (Partage_s*) MapViewOfFile(hFileMap, FILE_MAP_ALL_ACCESS, 0, 0, 0);
pint = (int*) (ppartage + 1);

Si tu places ton tableau int[] juste derriere la struct, devrait aller.

ciao...
BruNews, MVP VC++


Cette discussion est classée dans : int, file, partage, structure, struct


Répondre à ce message

Sujets en rapport avec ce message

pointeur de structure contenant un pointeur [ par PADYVEN ] bonjour; voila  je voudrait progresser un peu en pointeur donc j'ai une structure disont toto struct toto { insertion dans structure [ par angebrune8 ] Bonjour,j'essaie de faire une insertion dans une structure mais ca ne marche pas comme je le souhaite: int main(void){ srand((int)time(NULL) ajout d'un element à la fin d'une liste chainée [ par beatkof ] bonsoir je voudrai faire une fonction qui ajout un element à la fion d'une liste chainée et je n'y arrive pas voila ma fonction: #include #include s Type Structure dan Borland C [ par samuraijack1412 ] Bonjour,Je combine un programme avec Borland C 5. Il a indiqué qu'il y avait un erreur "Type Name Expected" à cette ligne:int prepareAcquis(char *addI PB structure C [ par lectpe ] Bonjour.Je désire réaliser un arbre binaire en C.Pour celà, j'ai déclaré une structure :typedef struct Tree{   char Node;   struct Tree *Left;   struc Wad File [ par Nicolas___ ] Bonjour , voila j'ai un petit probleme pour lire 1 fichier WAD (  wad  )donc suivant le modele décrit je me suis fait 2 structures : struct Header{ Sélection d'octet [ par dayvid75014 ] Bonjour à tous, Je récupère les octets de mon fichier vidéo dans un buffer "Buffer[]" et je voudrais sélectionner les octets 0x47 et je n'y a Liste chainée [ par popoff971 ] Bonjour,Dans le cadre d'un TP en info je dois créer un réseau de ligne de métro.je me suis mis en tete d'utiliser les liste chainée pour cela mais je tri de tableau de structure [ par samhmi ] Je veux trier un tableau de structure selon le degre décroissant tel que chaque case est de structure suivantestruct sommet{    int degré;    int arc[ Organisation de la mémoire [ par KurpeusLondon ] Désolé une petite question de plus pour la forme:)Je comprends pas comment est organisé la mémoire lors d'un malloc et compagnie : je m'explique.J'ai


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,585 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales