Обычно в Windows я сохраняю данные своих приложений в папке пользователя (% appdata%).
Для этого я использую функцию ExpandEnvironmentStrings
, связанную с Windows, чтобы получить нужную мне папку, и я храню внутри подпапки myifile.
Есть ли какая-нибудь лучшая практика для управления этим и совместимость со всеми поддерживаемыми платформами (Windows 32b, 64b и Mac)?
Я успешно протестировал вот так:
procedure TfrmMain.SaveSettings;
var
fnINI: TFileName;
ini : TIniFile;
begin
fnINI := IncludeTrailingPathDelimiter(GetHomePath) + IncludeTrailingPathDelimiter(APP_NAME) + ChangeFileExt(APP_NAME, '.ini');
if ForceDirectories(ExtractFilePath(fnINI)) then
begin
ini := TIniFile.Create(fnINI);
try
ini.WriteString(INI_CONNECTION, INI_IP, edtIP.Text);
finally
ini.Free;
end;
end;
end;