![]() |
Inkompitable Typen bei AssignFile
Hi,
mein Code:
Delphi-Quellcode:
procedure TForm3.Button3Click(Sender: TObject);
var F: TextFile; S: String; datei : TFileStream; begin Datei:=TFileStream.create(ExtractFilePath(Application.ExeName)+'\webver.txt',fmCreate); IdHttp1.Get('http://www.softprose.de/pub/website/webver.txt',Datei); AssignFile(F,datei); {$I-} Reset(F); {$I+} try if IOResult=0 then begin ReadLn(F, S); Label8.caption:=S; end; finally label7.Enabled:=TRUE; button4.enabled:=TRUE; CloseFile(F); Datei.free; end; end; Zitat:
Greetz un thx |
Re: Inkompitable Typen bei AssignFile
muss jetzt nicht klappen, aber nimm mal statt tfilestream file of tfilestream.
|
Re: Inkompitable Typen bei AssignFile
Zitat:
|
Re: Inkompitable Typen bei AssignFile
F1 -> AssignFile -> lesen -> verstehen -> anwenden -> glücklich werden.
|
Re: Inkompitable Typen bei AssignFile
Fungiert. Danke ;-)
Lösung: datei in pchar umwandeln:
Code:
Greetz
pchar(datei)
|
Re: Inkompitable Typen bei AssignFile
Hai onlinehome,
AssignFile möchte als zweiten Parameter den Dateinamen als String. Zitat:
|
Re: Inkompitable Typen bei AssignFile
Das kann nicht funktionieren:
Delphi-Quellcode:
:gruebel:
procedure AssignFile(var F; FileName: string);
|
Re: Inkompitable Typen bei AssignFile
Doch, weil die Delphi Hilfe meint das man anstatt String auch Pchar verwenden kann:
Zitat:
|
Re: Inkompitable Typen bei AssignFile
Ja und? Deine Variable datei ist aber vom Typ TFileStream!!! AssignFile erwartet aber als zweiten Paramter eine Zeichenkette in der der Pfad und der Name der Datei steht, die der Dateivariablen F zu gewiesen werden soll. Den Cast nach PChar mag der Kompiler zwar akzeptiren, aber funktionieren wird es nicht.
Desweitern könnte es Probleme geben, weil der FileStream die datei noch nicht geschlossen hast und du sie mit AssignFile und reset öffnen willst. Da es sich ja eh um eine Textdatei handelt, warum nicht so:
Delphi-Quellcode:
var
sl: TStringlist; begin sl := TStringList.Create; try sl.Text := IDHTTP.Get('...'); Label1.Caption := sl.Strings[0]; finally FreeAndNil(sl); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz