Hallo Delphi-PRAXIS,
ich speichere bei meinem Programm die Daten mit einen Speicher-Dialog.
Beim ersten mal speichern verläuft alles reibungslos, Dateien und Ordner werden angelegt, ... .
Beim zweitenmal Speichern kommt aber jedesmal folgende
Exception:
Code:
Erste Gelegenheit für
Exception bei $7737B727.
Exception-Klasse EAccessViolation mit Meldung 'Zugriffsverletzung bei Adresse 00406934 in Modul Projekt.exe Lesen von Adresse 0000007C'. Prozess Projekt.exe (3040)
Delphi-Quellcode:
function Speichern_mit_Dialog : boolean;
var Speicher_Pfad : string;
Ordner_Pfad : string;
Datei_Name : string;
begin
try
Programm.SpeicherDialog.InitialDir := Dokumente_Pfad;
if Programm.SpeicherDialog.Execute = True then
begin
Datei_Name := ExtractFileName(Programm.SpeicherDialog.FileName);
Ordner_Pfad := Dokumente_Pfad+'\'+ChangeFileExt(Datei_Name,'');
if not DirectoryExists(Ordner_Pfad) then
ForceDirectories(Ordner_Pfad);
Speicher_Pfad := Ordner_Pfad+'\'+Datei_Name;
AktuellerDateiName := Speicher_Pfad;
{***Speichern***}
if Speichern(Speicher_Pfad) = True then //Das eigentlich speichern ist unwichtig, es verursacht den Fehler nicht (getestet)
ShowMessage('Speichern erfolgreich.')
else
ShowMessage('Speichern abgebrochen.');
end;
finally
Result := True;
end;
Programm.SpeicherDialog.Free;
end;
Kann sich das jemand erklären oder mir Hilfsversuche geben?
Ich bin langsam am
.