Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Herausfinden mit welchem File ein Filestream erstellt wurde (https://www.delphipraxis.net/96780-herausfinden-mit-welchem-file-ein-filestream-erstellt-wurde.html)

alleinherrscher 30. Jul 2007 21:46


Herausfinden mit welchem File ein Filestream erstellt wurde
 
Hi@all!

Sorry, dass ich euch in letzter Zeit so viel nerve! Es soll dieses mal aber auch das letzte Mal sein:

Meine Frage: Gibt es nach dem erstellen eines FileStreams mit TFileStream.create(FileName,Filemode);

noch eine Möglichekeit, herauszufinden, welchen Filename man angegeben hat? Und ich möchte jetzt nicht hören: "Ja, indem du ihn dir in einer Variable speicherst" oder "Als guter Programmierer weiß dein Programm immer, welches File da gerade geöffnet wurde"...

Vielen Dank,

Euer Alleinherrscher (mit schlechtem gewissen)

Luckie 30. Jul 2007 21:58

Re: Herausfinden mit welchem File ein Filestream erstellt wu
 
Schon in der Hilfe geguckt? Da die Klasse keine entsprechende Eigenschaft besitzt (Delphi 6), wohl her nicht. Und warum willst du sie dir nicht merken? Ansonsten entsprechend nachrüsten:
Delphi-Quellcode:
type
  TMyFileStream = class(TFileStream)
  private
    FFilename: String;
    function GetFilename: String;
    procedure SetFilename(Filename: String);
  public
    constructor Create(const FileName: string; Mode: Word); overload;
    property Filename: string read GetFilename write SetFilename;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function TMyFileStream.GetFilename: String;
begin
  Result := FFilename;
end;

procedure TMyFileStream.SetFilename(Filename: String);
begin
  FFilename := Filename;
end;

constructor TMyFileStream.Create(const FileName: string; Mode: Word);
begin
  inherited Create(Filename, Mode);
  FFilename := Filename;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  MyFileStream: TMyFileStream;
begin
  MyFileStream := TMyFileStream.Create('d:\test.txt', fmCreate);
  try
    ShowMessage(MyFileStream.Filename);
  finally
    FreeAndNil(MyFileStream);
  end;
end;

Hawkeye219 30. Jul 2007 21:58

Re: Herausfinden mit welchem File ein Filestream erstellt wu
 
Hallo,

zumindest bis Delphi 7 (einschließlich) sieht es schlecht aus, bei Delphi 2006 gibt es die Eigenschaft Delphi-Referenz durchsuchenTFileStream.FileName.

Gruß Hawkeye

alleinherrscher 30. Jul 2007 22:06

Re: Herausfinden mit welchem File ein Filestream erstellt wu
 
Danke Jungs!!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:15 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