Einzelnen Beitrag anzeigen

MSerror

Registriert seit: 28. Jan 2010
10 Beiträge
 
Delphi 2010 Professional
 
#57

AW: Fehlermeldung bei AssignFile

  Alt 11. Feb 2011, 21:37
Danke blauweiss für Deine Tipps.
Es ist aber nur eine kleine "Unschärfe" im Programm.
tmpIOResult liefert "5" (Zugriff verweigert) also das gleiche, wie die Exception. Selbstverständlich verfüge ich über alle Administrationsrechte.

Hier die korrigierte Prozedur:
Delphi-Quellcode:
procedure TForm1.Schreiben(Sender: TObject);
begin
    if SaveDialog1.Execute then { Dialog zum Speichern anzeigen }
    begin
      AssignFile(meinedatei, SaveDialog1.FileName);
      // FileMode := fmShareDenyNone;
 {$I-}
      Rewrite(meinedatei);
      tmpIOResult := IOResult;
 {$I+}
      If tmpIOResult <> 0 Then
      begin
           ShowMessage('Kann die Datei nicht erstellen! Fehler: ' + IntToStr(tmpIOResult));
      end
      Else
      begin
         satz.name := 'Test-Datensatz';
         satz.email := 'info@testserver.de';
         try
            write(meinedatei, satz);
         except
            on E : Exception do
            begin
                ShowMessage('Schreibfehler in myfile.dat!' + #13
                           + E.ClassName + ', Meldung: ' + E.Message);
            end;
         end;
         CloseFile(meinedatei);
         ShowMessage('myfile.dat erfogreich erstellt.');
      end;
    end; // von SaveDialog1
end;
Es läuft meiner Meinung nach eindeutig auf einen Bug in der System-Unit von Delphi 2010 hinaus.

Gruß
MSerror
  Mit Zitat antworten Zitat