Thema: Delphi IniDateien

Einzelnen Beitrag anzeigen

colaflasche

Registriert seit: 1. Jun 2007
33 Beiträge
 
#1

IniDateien

  Alt 24. Aug 2020, 14:52
Guten Tag,

ich habe seit Jahr und Tag folgenden Code in meiner Anwendung um eine Inidatei zu schreiben (vereinfachte Darstellung). Der Code hat auch immer funktioniert.
Schreiben von Daten per TMemIniFile, dann schreiben von Daten per TINIFile. Warum auch immer man das so macht ist egal, es hat funktioniert.

Nun habe ich schon ein paar mal das PRoglem gehabt, dass es nicht mehr funktioniert hat und die Ini-Sektion danach zweimal in der selben Ini-Datei stand. Bei einem Kunden hat das jetzt auf 7 Rechner geklappt, auf 3 nicht. Zusätzlich habe ich das Problem bei 2 anderen Kunden festgestellt.

Code:
procedure TForm6.Button2Click(Sender: TObject);
var
  lDateiName: string;
  lMemInifile: TMemIniFile;
  lInifile: TIniFile;
begin
  lDateiName := '.\Meine.ini';
  lMemInifile := TMemIniFile.Create(lDateiName);
  try
    lMemInifile.WriteString('SEKTION', 'KEY1', 'VALUE1');
    lMemInifile.UpdateFile;
  finally
    FreeAndNil(lMemInifile);
  end;

  lInifile := TIniFile.Create(lDateiName);
  try
    lInifile.WriteString('SEKTION', 'KEY2', 'VALUE2');
  finally
    FreeAndNil(lInifile);
  end;
end;
Wenn ich den Code umstelle, so dass ausschließlich TMemIniFiles verwendet werden, habe ich das Problem nicht mehr:

Code:
procedure TForm6.Button2Click(Sender: TObject);
var
  lDateiName: string;
  lMemInifile: TMemIniFile;
  lInifile: TMemIniFile;
begin
  lDateiName := '.\Meine.ini';
  lMemInifile := TMemIniFile.Create(lDateiName);
  try
    lMemInifile.WriteString('SEKTION', 'TEST', 'VALUE1');
    lMemInifile.UpdateFile;
  finally
    FreeAndNil(lMemInifile);
  end;

  lInifile := TMemIniFile.Create(lDateiName);
  try
    lInifile.WriteString('SEKTION', 'TEST2', 'VALUE2');
    lInifile.UpdateFile;
  finally
    FreeAndNil(lInifile);
  end;
end;
Wie ich das löse ist mir klar, aber was mich interessieren würde, woher kommt das Problem so plötzlich? Wurde da durch ein Windows-Update was am Ini-File-Handling geändert? Ist da jemandem was bekannt?
Gruß Jan

Geändert von colaflasche (24. Aug 2020 um 16:08 Uhr)
  Mit Zitat antworten Zitat