![]() |
Exception bei Reset(FileName)
Hallo
Ich möchte Daten aus einer Textdatei laden. Ich hole mir den Dateipfad aus einem OpenDialog und möchte die Datei dann öffnen. Das ganze mache ich ganz normal mit:
Delphi-Quellcode:
Die Datei wurde zuvor schonmal auf dem selben Wege gespeichert. Und jetzt spuckt mir der Compiler bei Reset(FCurrentFile) eine Exception vom Typ:
FCurrentFile : TextFile;
SourceFileName : String ... AssignFile(FCurrentFile, SourceFileName); Reset(FCurrentFile); tuwasdamit CloseFile(FCurrentFile); External : SIGSEGV bei Adresse 403244 aus. DIe Datei ist nicht schreibgeschützt und nicht anderweitig geöffnet. Was kann ich tun? |
AW: Exception bei Reset(FileName)
Was passiert, wenn du mal direkt die WinAPI
![]() ![]() ![]() ![]() |
AW: Exception bei Reset(FileName)
Zitat:
Sind da vielleicht dyn. Arrays oder Pointer im Spiel. Hast Du Bereichsprüfung & Co. aktiviert? Gruß K-H |
AW: Exception bei Reset(FileName)
Normalerweise kapselt man ein reset/rewrite/append nach den AssignFile in {$I-} und {$I+} und fragt das IOResult=0 bzw. <>0 ab.
Aber SIGSEGV = Illegal storage access tritt auch bei einem I/O-Error nicht auf. Das SIGSEGV zeigt wohl ehr, daß der PfadName ungültig ist und ins Nirwana schreibt. |
AW: Exception bei Reset(FileName)
:wall:
Oh man bin ich blöd! FCurrentFile : TextFile; ist Teil einer Klasse von der ich genau wie viele Instanzen erzeugt habe? Richtig, die Zeile OpenFile := TOpenFile.create hat gefehlt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:00 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