通常,使用Windows,我将应用程序的数据保存在用户文件夹(%appdata%)中。
为此,我使用与Windows连接的函数ExpandEnvironmentStrings来获取我需要的文件夹,我存储在一个子文件夹我的inifile。
是否有最佳实践来管理并符合所有支持的平台(Windows32b,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;
解决方法
没有尝试XE2,但可能您可以使用
SysUtils.GetHomePath.还检查IoUtils哪里可以找到有用的记录(
TFile,
TPath,
TDirectory)来管理文件,路径和目录。他们应该支持不同的平台。