Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Datei in Benutzung (https://www.delphipraxis.net/86684-datei-benutzung.html)

SaFu 17. Feb 2007 18:22


Datei in Benutzung
 
Hi hab mal ne ganz Dumme Frage

Muss man eigentlich Dateien wieder die So auf gerufen werden Freigeben

Delphi-Quellcode:
 lehrerl2:= ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+ 'alleLehrer.txt';
  Combobox4.Items.LoadFromFile(lehrerl2);
mit File.Free oder sowas :gruebel:

Daniel G 17. Feb 2007 18:23

Re: Datei in Benutzung
 
Nein, brauchst du nicht. Die Arbeit wird dir von Delphi abgenommen.. :wink:

SaFu 17. Feb 2007 18:27

Re: Datei in Benutzung
 
Woran kann es liegen das mein Programm beim ersten Neutart den Fehler aus gibt das die Datei von einem anderen Prozess z.Zt in Benutzung ist sie wird am Anfang erzeugt wenn sie nicht da ist

Delphi-Quellcode:
{TxT Dateien erstellen}
procedure TForm1.listeerst;
begin
  if not FileExists(ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+'liste.txt') then
    begin
      FileCreate(ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+'liste.txt')
    end;
     begin
       if not FileExists(ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+'alleLehrer.txt') then
         begin
           FileCreate(ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+'alleLehrer.txt')
         end;
     end;
end;

Daniel G 17. Feb 2007 18:32

Re: Datei in Benutzung
 
Weil du in diesem Falle mit FileCreate eine Datei erstellst. Das war in deinem obigen Beispiel nicht der Fall. :wink:

Außerdem müsste eigentlich Delphi-Referenz durchsuchenFileCreate einen Rückgabewert vom Typ Integer haben. Damit du die Datei wieder freigeben kannst, muss dieses Handle an die Funktion Delphi-Referenz durchsuchenFileClose übergeben werden.

Bsp.:

Delphi-Quellcode:
var
fs: Integer;
begin
  if not FileExists(ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+'liste.txt') then
     fs := FileCreate(ExtractFilePath(ParamStr(0)) +'\Lehrer Liste\'+'liste.txt')
  //An dieser Stelle mit der Datei arbeiten.
FileClose(fs); //Und wieder freigegeben.
Näheres dazu auch in der OH.. :wink:

SaFu 17. Feb 2007 18:58

Re: Datei in Benutzung
 
Danke genau das hatte ich nicht gemacht

Dank dir :thumb: :cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz