DeleteFile

oh81 Messages postés 17 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 20 mars 2006 - 17 mars 2006 à 15:21
oh81 Messages postés 17 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 20 mars 2006 - 20 mars 2006 à 11:03
Bonjour tout le monde,
En utilisant les sockets, j'ai fait un serveur et un client (que j'ai dupliqué par la suite). Le serveur attend une connexion. Dès qu'il reçoit une connexion, il crée un thread pour la gérer. Tous les threads effectuent les mêmes opérations. Parmi ces opérations, copier un fichier src.txt dans Des.txt puis supprimer src.txt. Le copie marche sans soucis cependant, j'utilise DeleteFile pour supprimer et là ça ne marche pas ! en utilisant, GetLastError l'erreur est 32 : ERROR_SHARING_VIOLATION.
Je ne pense pas que c'est lié aux autres processus. En effet, chaque processus manipule ses propres fichiers: src.txt et Des.txt

Merci

4 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 mars 2006 à 15:35
Doit y avoir un handle ouvert sur le fichier.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
oh81 Messages postés 17 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 20 mars 2006
17 mars 2006 à 16:04
Ok mais comme trouvé ce handle? un fclose suffirait pour le fermer?
merci
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 mars 2006 à 16:57
Que vient faire fclose ici alors que tu utilises l'API ?
CloseHandle pour fermer ce qui est ouvert par CreateFile.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
oh81 Messages postés 17 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 20 mars 2006
20 mars 2006 à 11:03
Dans mon code, j'utilise parfois fopen + fclose et d'autre fois CreateFile + CloseHandle. J'appele DeleteFile aprés un fclose.
0
Rejoignez-nous