Créer un fichier rempli de zero ?

Résolu
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010 - 11 déc. 2004 à 14:21
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010 - 11 déc. 2004 à 16:24
Salut, je voudrais savoir comment faire pour créer un fichier d'une taille précise remplit de zero.
Merco!

4 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
11 déc. 2004 à 14:40
Alloue un bloc de mémoire de taille que tu veux avec HeapAlloc avec dwFlags = HEAP_ZERO_MEMORY et écris dans le fichier avec WriteFile tant que tu en as besoin.
3
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010
11 déc. 2004 à 16:12
Et on fait ca comment?
0
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010
11 déc. 2004 à 16:22
C'est bon j'ai trouvé:

HANDLE HDLWRITE;
HDLWRITE=CreateFile("tmp.mpg", GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_FLAG_SEQUENTIAL_SCAN, 0);
SetFilePointer(HDLWRITE, 0, 0, FILE_BEGIN);

DWORD taillefichier = GetFileSize(HDLREAD, 0);

DWORD ecri;
HANDLE Hheap=GetProcessHeap();
void* nulldata=HeapAlloc(Hheap,HEAP_ZERO_MEMORY,taillefichier);
WriteFile(HDLWRITE,nulldata,taillefichier,&ecri,0);

CloseHandle(HDLWRITE);
0
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010
11 déc. 2004 à 16:24
Pardon j'ai laissé quelques trucs inutile:

HANDLE HDLWRITE;
HDLWRITE=CreateFile("tmp.mpg", GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_FLAG_SEQUENTIAL_SCAN, 0);

DWORD taillefichier = 10000;
DWORD ecri;

HANDLE Hheap=GetProcessHeap();
void* nulldata=HeapAlloc(Hheap,HEAP_ZERO_MEMORY,taillefichier);
WriteFile(HDLWRITE,nulldata,taillefichier,&ecri,0);

CloseHandle(HDLWRITE);
0
Rejoignez-nous