AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein EInifileException Fehler beim Schreiben der Inidatei
Thema durchsuchen
Ansicht
Themen-Optionen

EInifileException Fehler beim Schreiben der Inidatei

Ein Thema von freedy · begonnen am 13. Jul 2011 · letzter Beitrag vom 13. Jul 2011
Antwort Antwort
Seite 2 von 2     12   
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: EInifileException Fehler beim Schreiben der Inidatei

  Alt 13. Jul 2011, 15:32
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;

Geändert von Bjoerk (13. Jul 2011 um 15:55 Uhr) Grund: Code
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#12

AW: EInifileException Fehler beim Schreiben der Inidatei

  Alt 13. Jul 2011, 15:41
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz