begin process at 2010 02 09 20:27:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

modification de fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

modification de fichier

mercredi 26 avril 2006 à 12:06:24 | modification de fichier

gdpasmini

Hello !

J'aimerai savoir si quelqu'un sait comment utiliser les fonctions FindFirstChangeNotification et ReadDirectoryChangesW de l'API windows.

Je voudrais en effet savoir qd la taille d'un fichier est modifiée. Je ne sais pas ou placer ces fonctions pour qu'un signal soit émis et capté par ma fonction proc et ainsi réagir en conséquence...

Si quelqu'un peut m'aider, je lui serais grandement reconnaissant !

merci d'avance !
jeudi 27 avril 2006 à 08:22:55 | Re : modification de fichier

fraboulet

Il y a en effet deux techniques permettant la détection des modifications sur un dossier/fichier sous Windows.

  • La première fonctionne avec des technologies  Windows 9x et NT et utilise la fonction :

FindFirstChangeNotification(.) (ainsi que d'autres fonctions très liées).

Le problème est que cette fonction prévient uniquement du changement, mais pas de ce qui a changé dans un répertoire donné, la seule solution est donc de rafraîchir le répertoire intégralement pour trouver le changement sans quoi, nous n'avonspas d'autres précision sur la modification.

  • La seconde, ReadDirectoryChangesW(.), s'utilise uniquement avec les OS de type NT, mais est beaucoup plus simple d'utilisation puisqu'elle permet d'obtenir tous les renseignements souhaités sur le dossier/fichier modifié.
La fonction ReadDirectoryChangesW(.) permet de préciser un filtre dans son prototype intervenant sur le type de changement auxquels la fonction est 'sensible' => pout toi FILE_NOTIFY_CHANGE_SIZE.

Le principe est de créer un thread de polling de ton fichier ou répertoire (il scrute en permanence d'éventuelles modifications (while...
ReadDirectoryChangesW ), et lorsqu'une modification a lieu tu pourras alors :

  • Soit réagir directement dans le thread de polling,
  • soit lever un event pour que le process principal traite l'info.

Pour la mise en oeuvre, j'attire ton  attention sur les deux liens suivants :
  • http://www.codeguru.com/Cpp/W-P/files/article.php/c4467/
  • http://www.codeproject.com/file/directorychangewatcher.asp

Voilà!bonne continuation.




Cette discussion est classée dans : fichier, quelqu, fonctions, modification


Répondre à ce message

Sujets en rapport avec ce message

Changer la date de dernière modification d'un fichier [ par GoldenEye ] Bonjour et bonne année à tous. Je m'étais fait rare ces derniers temps...Existe t'il une API pour changer la date de dernière modification d'un fichie Creer ses propres fonctions [ par CHENRY ] En VC++6, avec les MFC, je voudrais ajouter à mon projet un fichier de fonctions et procédures personnelles. J'ai créé un fichier d'en-tete contenant HELP!!! Redondance de définition de fonctions!!!!!! - MFC [ par Rololo ] Salut à tous,Avec MFC, j'ai créé plusieurs boîtes de dialogue (je précise car c'est peut-être important pour la suite). Avec ce même Projet, j'ai créé selection/modification d'un enregistrement [ par wannie ] Salut, J'ai un petit pb sous VC++. J'arrive à selectionner une ligne d'un fichier avec la méthode: Citation: fgets(ligne,391,File); Ca me selectionne problèmes liens entre fichiers C et C++ dans un projet Visual C++ 6.0 [ par nico ] J'ai récupéré un projet contenant des fichiers écrits en C. Le fichier "principal" de ce projet également écrit en C fait appel à des fonctions se tro modification d'un fichier .exe [ par jackky ] salut je voulais savoir comment faire un fichier .exe en c++(crack) pour changer un saut dans un fichier .exeexemple00401595 7416 je 004015ADCHANGER Tableau de correspondance des fonctions c++ et de leur fichier #include [ par guguy ] BonjourJ'aimerais savoir s'il serait possible de trouver un tableau de correspondance entre les fonctions c++ et leur fichier #include (ex : cout -> i lecture de fichiers avec c++ builder [ par TheLenain ] Bonjour,J'ai à ouvrir un fichier texte avec c++ builder 4 et pour cela j'ai utilisé les fonctions de l'api win32 (createfile et readfile).Mais seuleme utiliser les fonctions dans un fichier .LIB? [ par lequoc ] Bonjour,Je voudrais savoir ce qu'est exactement un fichier .LIB. Je pensais que çapouvait notamment être un fichier dans lequel on avait pré-compilé d fonctions [ par pingooo ] Bonjour tout le monde !VOici mon problème: je travaille en C, et je veux faire un logiciel de résolution d'équa diff avec Runge Kutta...jusque là, ça


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales