[Win API] problème avec WriteFile
Bonjour,
J'ai déjà utilisé WriteFile mais je n'ai jamais eu ce problème et je n'arrive pas à trouver l'origine du bogue:
J'ai fait une fonction pour enregistrer temporairement l'adresse d'un fichier dans un fichier texte. Voici la fonction:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
void fichierTemporaireEcrire(char *fichier)
{
HANDLE hFichier=NULL;
DWORD nbcharRead= 0;
hFichier = CreateFile( "~fichier.tmp", GENERIC_WRITE, 0,NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
SetFilePointer( hFichier,0,0,FILE_BEGIN);
//La ligne qui suit est un simple test pour voir ce que contient fichier
MessageBox(NULL,fichier,"",MB_OK);
WriteFile(hFichier, &fichier,sizeof(char)*256, &nbcharRead, NULL);
CloseHandle(hFichier);
} |
Quand je teste fichier, l'adresse du fichier est correcte.
Mais dans ~fichier.tmp l'adresse est précédée de 16 caractères ... j'ai beau tourner le problème dans tous les sens je n'arrive pas à enlever ces 16 caractères... qq'un voit l'erreur ?
Merci !;)
Edité: je suis sur cette erreur depuis assez longtemps et il suffit que je pose la question ici pour que je trouve seule la réponse !!
:roll:
Honte à moi j'ai mis & devant fichier :oops:
Avec ce code tout fonctionne .
Code:
1 2
|
WriteFile(hFichier, fichier,sizeof(char)*256, &nbcharRead, NULL); |