Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   EInifileException Fehler beim Schreiben der Inidatei (https://www.delphipraxis.net/161627-einifileexception-fehler-beim-schreiben-der-inidatei.html)

Bjoerk 13. Jul 2011 14:32

AW: EInifileException Fehler beim Schreiben der Inidatei
 
TIniFile/ TMemIniFile benötigen die Datei exklusiv. Diese wird vermutlich aber von einem anderen Prozess benutzt.

Delphi-Quellcode:
procedure Wait (var N: integer);
var
  fTime: Cardinal;
begin
  fTime:= GetTickCount;
  repeat until (GetTickCount-fTime) > 500;
  N:= N+1;
end;


function IsFileReadyForOpen (const FileName: string): boolean;
var
  N, IO: integer;
  F: TextFile;
begin
  N:= 0;
  AssignFile(F, FileName);
  repeat
    {$I-} Reset(f); {$I+}
    IO:= IOResult;
    if IO <> 0 then Wait(N);
  until ((IO = 0) or (N = 10));
  Result:= (IO = 0);
  if Result then
    closeFile(f)
  else
    MessageDlg(Application.ExeName+': '+FileName+' ['+SysErrorMessage(IO)+'].', mtWarning, [mbOK], 0);
end;


var
  Ini : TInifile;
begin
  if not IsFileReadyForOpen (Inifilename) then Exit;

DeddyH 13. Jul 2011 14:41

AW: EInifileException Fehler beim Schreiben der Inidatei
 
Wie schon erwähnt wurde ruft WriteString auch nur WritePrivateProfileString auf. Im MSDN findet sich dann Folgendes dazu:
Zitat:

Return Value

If the function successfully copies the string to the initialization file, the return value is nonzero.

If the function fails, or if it flushes the cached version of the most recently accessed initialization file, the return value is zero. To get extended error information, call GetLastError.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:48 Uhr.
Seite 2 von 2     12   

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