IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

probl�me ouverture d'un fichier


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Ao�t 2013
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Ao�t 2013
    Messages : 3
    Par d�faut probl�me ouverture d'un fichier
    salut a tous est a toutes

    j'ai le code suivant :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    Memo1->Lines->LoadFromFile("save.txt");
    notant que le fichier "save.txt" est utilis� par d'autre processus
    lors de l�ex�cution j'ai l'erreur suivante :
    impossible d'ouvrir le fichier save.txt car ce fichier est utilis� par d'autre processus

    ma question comment ouvrir le fichier sans l�arr�t du processus ?

    merci

  2. #2
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    D�tails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par d�faut
    Salut, voici le code de LoadFromFile:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    procedure TStrings.LoadFromFile(const FileName: string; Encoding: TEncoding);
    var
      Stream: TStream;
    begin
      Stream := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
      try
        LoadFromStream(Stream, Encoding);
      finally
        Stream.Free;
      end;
    end;
    Comme tu peux voir il utilise fmShareDenyWrite ce qui veut dire (selon la doc):
    Les autres applications peuvent ouvrir le fichier en lecture, mais pas en �criture.
    Donc tu pourrais essayer de coder ta propre m�thode LoadFromFile qui va cr�er un TStream en utilisant fmShareCompat ou fmShareDenyNone.

  3. #3
    Membre du Club
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Ao�t 2013
    Messages
    3
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Ao�t 2013
    Messages : 3
    Par d�faut
    merci Crayon

    dans le fichier unit.h
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void load(const String filename, TMemo *memo)
    {
      TStream *stream;
      stream=new TFileStream(filename,fmShareDenyNone);
      memo->Lines->LoadFromStream(stream);
      stream->Free();
     
     
    }
    dans le fichier unit.cpp
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
     
      load("save.txt",Memo1);
     
    }
    j'ai une autre question :
    le contenu du fichier save.txt change dans le temps
    alors comment afficher (d�tecter)le changement sans faire un Ttimer ?

  4. #4
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    D�tails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par d�faut
    Citation Envoy� par rab2000 Voir le message
    j'ai une autre question :
    le contenu du fichier save.txt change dans le temps
    alors comment afficher (d�tecter)le changement sans faire un Ttimer ?
    Salut, je crois que tu peux utiliser FindFirstChangeNotification. Je n'ai jamais utilis� cette fonction, par contre si tu veux de l'aide tu peux aller lire cet article. Il y a aussi ReadDirectoryChangesW avec de l'aide ici.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [EXCEL 2002] Probl�me ouverture de 2 fichiers Excel
    Par Golork dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 30/06/2010, 19h45
  2. [VB]Probl�me ouverture de deux fichier excel
    Par Yanmeunier dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 17/02/2006, 15h51
  3. probl�me d'ouverture d'un fichier EXCEL!!
    Par JauB dans le forum Macros et VBA Excel
    R�ponses: 1
    Dernier message: 27/11/2005, 13h37
  4. probl�me ouverture fichier texte
    Par ice-t69 dans le forum Langage
    R�ponses: 4
    Dernier message: 07/11/2005, 19h29
  5. Probl�me ouverture fichier par double clic...
    Par sankookai dans le forum MFC
    R�ponses: 4
    Dernier message: 11/05/2005, 09h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo