Bon, soyons concis et précis!
Je veux transférer des fichiers sur mon baladeur mp3, c'est comme une clé usb.
Pour copier : j'ai utilisé SHFileOperation, ca marchait mais je ne peux pas gérer la fenêtre de copie et la progress bar, tout est automatique... D'autre part, la fonction n'aime pas qu'un PC soit connecté à un intranet et bug pour effacer car elle veut absolument balancer à la corbeille, qui n'existe pas sur la clé usb bien entendue. Bon en captant l'exception ça efface, sauf si Intranet... là elle n'efface que dalle. (c un pote qui l'a remarqué).
Y a CopyFile, mais pas de gestion de progress bar... CopyFileEx n'est pas compatible Win98 et je veux que mon prog le soit.
Bon, finalement c'est assez long! :o)
Conclusion je me rabat sur :
fopen(fichier source)
fopen(fichier dest)
while(!foef(source))
{
fread(source)
fwrite(dest)
/****** et la je gère mes progress bar ******/
}
fclose(dest)
fclose(source)
Bon, ca marche super de disque dur à disque dur, mais le gros hic, c'est que la boucle while se fait à toute vitesse, mais que l'écriture ne se termine que lors du fclose(dest)... car le fwrite n'est pas bloquant! Et le temps de transfert sur port USB est bien supérieur à celui de l'execution de la boucle while...
Donc gros hic : les progress bar se remplissent à toute pompe... et le prog bloque gentiment sur le fclose(dest) pour passer au fichier suivant...
Quelqu'un peut me dire comment capter la quantité réellement écrite.
PS : j'ai essayé de capter la taille du fichier écrit, mais elle est à 0 jusqu'à la fin du fclose(dest).
PS 2 : j'ai pensé capter l'espace libre sur le lecteur, mais c'est un peu la chasse au pigeon avec un lance roquette... et je ne suis meme pas sur que ca marche... comme la taille ne semble prendre effet qu'à partir du fclose(dest).
En gros, HELP!!!! PLEASE!!!!!