Einzelnen Beitrag anzeigen

FarAndBeyond
(Gast)

n/a Beiträge
 
#14

AW: Rewrite(f) findet File nicht...

  Alt 9. Aug 2015, 16:23
Ich würde grundsätzlich immer try..finally innerhalb von try..except benutzen...
Der Schutzblock steht ja auch bei SirRufo schon mit drin...

Delphi-Quellcode:
Function CDevice.storerSettings(name: string) : integer;
 Var
  i: integer;
  f: file of TPSettingsFile;
  s: TSettingsFile;
 Begin
  Try
   storeSettings := -1;
    If Not FileExists( name )
    Then raise EInOutError.CreateFmt( 'File %s does not exists!', [name] );
  
    If IsFileInUse( name )
    Then raise EInOutError.CreateFmt( 'File %s is open!', [name] );
    
   AssignFile(f, name);
    Try
     Rewrite(f);
     s.magic := $537916;
     //...usw.
     Write(f, s);
    Finally
     Try
      Closefile(f); // oder direkt in separater, abgesicherter Prozedur...
      storeSettings := 0;
     Except
      Info + StandardExceptionHandling.... was auch immer...
      storeSettings := -1;
     End;
    End;
  Except
   // Standard ExceptionHandling, was auch immer man möchte...
  End;
 End;
Ist halt immer die Frage wie detailiert braucht man ein ExceptionHandling... schließlich kann man das noch um einiges erweitern...
  Mit Zitat antworten Zitat