Einzelnen Beitrag anzeigen

Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

IOResult stimmt nach WriteLn nicht!

  Alt 27. Dez 2006, 14:26
aloha...

so langsam krieg ich die krise...


in meinem programm sollen in einem txt file user daten gespeichert werden...
wenn beim hinzufügen der daten (über writeln) ein fehler passiert soll eine fehlermeldung ausgegeben werden...
soweit zur theorie...
und hier ist jetzt mal der quellcode...

Delphi-Quellcode:
function TAddPW_Form.fnAddPWtoTextFile(sPWLocation, sPassword, sUser : String) : Boolean;

var
sPath, sRow : String;
txtFile : TextFile;

begin

  sPath := 'UserPWs\' + sUser + '_SPW.txt'; // Diese Datei Existiert nicht!
  sRow := sPWLocation + #9 + sPassword + #13;

  {$I-}
  AssignFile(txtFile, sPath);

  Append(txtFile);

  Writeln(txtFile, sRow); //Hier müsste ein Fehler auftreten
  ShowMessage(IntToStr(IOResult));
  If IOResult <> 0 Then
  Begin
    fnAddPWtoTextFile := False;
    ShowMessage(IntToStr(IOResult));
  End
  Else
  Begin
    fnAddPWtoTextFile := True;
    ShowMessage(IntToStr(IOResult));
  End;

  CloseFile(txtFile);

  {$I+}

end;
wenn ich mir nach dem WriteLn denn IOResult ausgeben lasse ist er auf 103...
in meiner If abfrage setzt er denn wert von fnAddPWtoTextFile aber trotzdem auf True!!!
und zeigt mir in der nächsten messagebox einen IOResult = 0 an!!!

Hab ich irgendwas falsch gemacht??? meiner meinung nach müsste ich ja einen False wert in fnAddPWtoTextFile erhalten!!!
und mich wundert es ausserdem warum sich der IOResult während der IF abfrage verändert!
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat