Notification de fichier

Résolu
Messages postés
16
Date d'inscription
mercredi 30 octobre 2002
Statut
Membre
Dernière intervention
14 novembre 2007
-
Messages postés
16
Date d'inscription
mercredi 30 octobre 2002
Statut
Membre
Dernière intervention
14 novembre 2007
-
J'aimerai savoir s'il exisite une classe ou un COM pour gérer la
notification de fichiers à la façon d'Excel ou Word.
Cette classe évite l'ouverture en écriture d'un même fichier (en réseau par
exemple) plusieurs fois par des processus différents.
Je code sous windows 2000 avec Visual C++.

Merci d'avance
Lann

5 réponses

Messages postés
16
Date d'inscription
mercredi 30 octobre 2002
Statut
Membre
Dernière intervention
14 novembre 2007

J'ai réalisé l'exemple de ce que je voulais faire. A voir à cette adresse

http://www.cppfrance.com/code.aspx?ID=39916

J'aimerai quand même savoir s'il existe une classe qui gère cela tout seul.

Lann
Messages postés
746
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
23 mai 2007
10
Tu peut tout simplement faire ton CreateFile en enlevant le droit FILE_SHARE_WRITE, je pense que c'est plus simple.

Sinon, je vois pas bien ce que fait Word, je suis uniquement sous OpenOffice .

<hr size="2" width="100%" />Sachant qu'on peut toujours enlever une ligne à un programme, et que dans un programme il y a toujours un bug, un programme peut se résumer à une ligne avec un bug.
Messages postés
16
Date d'inscription
mercredi 30 octobre 2002
Statut
Membre
Dernière intervention
14 novembre 2007

Je pense que tu n'as pas bien compris ce que je voulais dire :
 je veux que :
   - le premier utilisateur puisse ouvrir le fichier avec tous les droits (écriture et lecture)
   - les utilisateurs suivants à l'ouverture du même fichier ne possèdent que les droits de lecture. Ils peuvent notifier la fermeture du fichier ou l'ouvrir en lecture seule. Ainsi
   - lorsque le premier utilisateur ferme le fichier, l'utilisateur suivant récupère les droits d'écriture et de lecture.

Cela se passe ainsi pour un fichier Word ou Excel lors d'une ouverture simultanée.

Lann
Messages postés
746
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
23 mai 2007
10
Ben la solution que je t'ai donné au dessus marche : le fichier est verrouillé en écriture si tu ne met que FILE_SHARE_READ en accès partagé dans CreateFile, et lors de l'appel de CloseHandle le fichier sera dévérouillé.

<hr size="2" width="100%" />Sachant qu'on peut toujours enlever une ligne à un programme, et que dans un programme il y a toujours un bug, un programme peut se résumer à une ligne avec un bug.
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
2
Oui il y à cette astuce sur le site des snippets je pense, vas toujours voir

++
deck_bsd

[http://deck-bsd.eurower.net]