begin process at 2010 03 18 19:37:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Système

 > 

Fichier & Disque

 > 

Accés au Fichier


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

Accés au Fichier

mercredi 28 novembre 2007 à 15:13:56 | Accés au Fichier

Lamarmottedu73

Salut tlm, j'ai un petit problème de fichier j'ai une idée pour le résoudre mais je ne trouve pas comment le faire. Voici le problème :
Un programme génère des fichiers et les copies dans un dossier.
Le 2eme programme via un thread lit ces fichiers au fur et à mesure qu'ils arrivent, puis les déplaces. Seul problème c'est que défoit le 2eme programme est trop rapide par rapport au programme 1 et zou "Violation d'accés" car il accède encore au fichier.

Ma solution serait de tester si le fichier est fermé et que je peux y accéder sans problème, mais je ne trouve pas comment le faire.

Merci bien pour votre aide.
mercredi 28 novembre 2007 à 16:27:48 | Re : Accés au Fichier

Lamarmottedu73

Réponse acceptée !

Re finalement c'est good méthode un peu bourrin mais ça marche et ça donne cela

while (1=1) do
begin
   Handle := FileOpen(Fichier_a_ouvrir, $0040);      //On essaye d'ouvrir le fichier en mode exclusif
   if Handle <> -1 then                                             //Si le résultat est différent de -1 cela veux dire que cela à marché
   begin
      FileClose(Handle);                                            //On ferme le fichier
      //*** Faire ce qu'il y a à faire ***//
   end;
end;

Voilà bonne soirée !!!!

mercredi 28 novembre 2007 à 20:39:23 | Re : Accés au Fichier

Guillemouze

Réponse acceptée !
petite question, pourquoi while (1=1) do et pas while true do ?
autre chose, il serait peut etre judicieux de faire un sleep dans ta boucle pour ne pas surcharger le systeme de fichier, et peut etre aussi de mettre un nombre de boucles max, au cas ou ton fichier reste ouvert par l'autre programme

jeudi 29 novembre 2007 à 10:46:51 | Re : Accés au Fichier

Lamarmottedu73

Salut en fait c'est juste un code exemple c'est pas le final !!! sinon je risque d'assoir la machine !!! Mais tes remarque sont judicieuse ... Pour le while (1=1) do en fait c'est une conneri qu'on avait fait en BTS IRIS avec des potes.
A bientôt
jeudi 29 novembre 2007 à 11:13:13 | Re : Accés au Fichier

Loda

Membre Club
salut,

ce genre de system (utiliser une fichier comme moyen de communication entre deux programme) est pas terrible, lent (accès disque) et souvent problematique (concurrence).

Il existe des moyen de partager des info entre processus (par ex: filemap). Perso, je trouve que UDP peut être un très bon moyen (simple, assez rapide). surtout pour un serveur (après tu peux bouger un des processus sur une autre machine en 2min). Evidemment cela dépend de ce que tu veux faire et de ton environnement.

réflèchit, et demandes toi si tu ne peux pas remplacer ce système par qqch de plus propre.

bon code,

Loda

Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.


Cette discussion est classée dans : fichier, problème, programme, trouve, accés


Répondre à ce message

Sujets en rapport avec ce message

probléme d'accés fichier [ par GawiNDX ] Bonjour !J'ai un petit souci avec un soft que je suis en train de développer, je m'explique :j'execute un programme externe via un createprocess,ce pr Fin d'écriture dans un fichier ? [ par azera ] Voilà j'ai pas mal recherché mais je n'ai pas trouvé, alors je me suis dit que j'allais vous demander de l'aide.Je veux réaliser un programme de surve problème d'execution ds un programme de BDD [ par Rankin ] Salut, alors voilà j'ai posté il y a quelques jours pour faire part d'un problème d'éxecution de l'appli que je viens de finir, à savoir qu'elle ne se Problème de BDE [ par atrebate62 ] Bonjour,J'ai un programme développé en Delphi3 fonctionnant avec le BDE, et j'ai fait un programme d'installation avec InstallShield.Sous W95/98 l'ins Pack/Archive de fichier [ par Benitora ] Bonjour,voilà, je cherche a utiliser dans mon programme des fichiers "pack", je m'explique :j'ai plusieurs dossiers et sous-dossiers contenant des fic Big Problème! [ par Faust ] Voila en gros le topoj'ai un fichier: toto.avi, et Animate1tout les deux sont liés.Comment je peux faire pour que mon prog intègre directement mon fic Erreurs de page pendant l'exécution du programme [ par Emandhal ] Bonjour!Je suis en train de faire un programme (c'est original, je sais ), il marche parfaitement (c'est génial pour moi ). Mais il y a un p problème avec l'objet XMLDoc [ par csweety13 ] Bonjour,j'ai un soucis avec l'objet de Delphi le XMLDoc.j'ai inscrit la ligne suivante : XMLFic := LoadXMLDocument(Nom_Fic);qui me charge dans mon o Cacher un mot de passe... [ par TiDaN326 ] Bonjour à tous...J'ai un léger problème de sécurité... J'ai un programme qui accède à une base de donnée... Évidemment, le mot de passe d'accès à cett Rechercher dans le HDD [ par norton ] Hello, j'essaye de faire un petit anti-virus mais j'aimerai que mon programme recherche un fichier dans tous le hdd.par exemple le fichier hallo.exe e


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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 : 1,357 sec (3)

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