Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1244 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Proteger l'acces a un fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Proteger l'acces a un fichier

n°1091041
tching pao
Posté le 20-05-2005 à 17:27:58  profilanswer
 

Deux ordi en reseaux windows 2000 et Xp pro
si je demarrre un programme qui ouvre un fichier sur l'ordi 1
je voudrais empecher a un autre programme sur l'ordi 2 d'acceder au meme fichier tant que celui-ci est ouvert par le programme sur l'ordi 1
 
En fait cela revient a gerer l'acces concurentiel comme dans une base de donnees
 
Comment faire cela en c++ ?

mood
Publicité
Posté le 20-05-2005 à 17:27:58  profilanswer
 

n°1091175
IrmatDen
Posté le 20-05-2005 à 19:16:35  profilanswer
 

Salut,
Tu peux créer un fichier lock, si c'est toi qui développe les deux programmes.
Edit: Tu n'as plus qu'à tester l'existence de ce fichier et ne pas ouvrir dans ce cas.


Message édité par IrmatDen le 20-05-2005 à 19:17:58
n°1091190
tching pao
Posté le 20-05-2005 à 19:31:47  profilanswer
 

IrmatDen a écrit :

Salut,
Tu peux créer un fichier lock, si c'est toi qui développe les deux programmes.
Edit: Tu n'as plus qu'à tester l'existence de ce fichier et ne pas ouvrir dans ce cas.


oui c moi qui developpe mais c quoi un fichier lock ?

n°1091285
HelloWorld
Salut tout le monde!
Posté le 20-05-2005 à 21:48:15  profilanswer
 

Et si tu l'ouvre en lecture + écriture (fstream) ça suffit pas ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°1091295
tching pao
Posté le 20-05-2005 à 22:08:16  profilanswer
 

HelloWorld a écrit :

Et si tu l'ouvre en lecture + écriture (fstream) ça suffit pas ?


non car je veux ne pas pouvoir ecrire dedans si il est deja ouvert en ecriture par un autre programme

n°1091324
IrmatDen
Posté le 20-05-2005 à 23:31:04  profilanswer
 

Un fichier lock, c'est rien de bien compliqué (de la façon dont je le conçois, faut voir avec les pro après).
 
Admettons que le fichier dont l'accès doit être protégé se nomme db.bin . Lorsque l'une des applications essaye d'ouvrir ce fichier, elle vérifie si un fichier nommé db.bin.lock existe. S'il n'existe pas, elle créée ce fichier au même endroit que le fichier que tu essayes d'ouvrir (ça impose que tu ais l'accés en écriture cependant), sinon, tu refuses la lecture.
Ce fichier peut-être vide ou servir à stocker des informations sur la partie du fichier qui est verrouillé en lecture et/ou en écriture, par exemple. De cette façon tu as un mécanisme de verrouillage qui m'a l'air un peu extensible.

n°1091350
tching pao
Posté le 21-05-2005 à 00:03:56  profilanswer
 

IrmatDen a écrit :

Un fichier lock, c'est rien de bien compliqué (de la façon dont je le conçois, faut voir avec les pro après).
 
Admettons que le fichier dont l'accès doit être protégé se nomme db.bin . Lorsque l'une des applications essaye d'ouvrir ce fichier, elle vérifie si un fichier nommé db.bin.lock existe. S'il n'existe pas, elle créée ce fichier au même endroit que le fichier que tu essayes d'ouvrir (ça impose que tu ais l'accés en écriture cependant), sinon, tu refuses la lecture.
Ce fichier peut-être vide ou servir à stocker des informations sur la partie du fichier qui est verrouillé en lecture et/ou en écriture, par exemple. De cette façon tu as un mécanisme de verrouillage qui m'a l'air un peu extensible.


 
merci les 2 applications auront acces total en lecture/ecriture donc ca me semble facile a implementer
merci car je regarder du coté des semaphores mais sa me semble trop complexe pour proteger l'acces a l'eciture de moins d'une dizaine de fichier

n°1091360
dividee
Posté le 21-05-2005 à 00:11:57  profilanswer
 

Tu as essayé d'utiliser l'API Win32 directement ? D'après MSDN (http://msdn.microsoft.com/library/ [...] _files.asp), utiliser CreateFile avec un "ShareMode" de 0 doit interdire tout partage...

n°1091368
tching pao
Posté le 21-05-2005 à 00:14:30  profilanswer
 

dividee a écrit :

Tu as essayé d'utiliser l'API Win32 directement ? D'après MSDN (http://msdn.microsoft.com/library/ [...] _files.asp), utiliser CreateFile avec un "ShareMode" de 0 doit interdire tout partage...


 
merci aussi je vais y jeter un oeil


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Proteger l'acces a un fichier

 

Sujets relatifs
[Perl & XML] Validatin d'un fichier XMLcreer un fichier
renommer automatiquement une case dans un fichier ExcelEnregistrer des données VB dans une base acces
recherche de fichier en javaRemplir des champs d'un fichier pdf
Récup de données numérique fichier txtAssemblage de fichier
inserer des donnée dans un fichierproteger l'acces a un fichier .txt par mot de passe
Plus de sujets relatifs à : Proteger l'acces a un fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR