我有我已经为Mac OSX上开发的程序。 当程序从Qt Creator的内部运行,日志文件和文件的config.cfg在myapp.app/Contents/MacOS文件夹的创建,旁边的可执行文件。 这是正确的行为,程序都需要这些文件。
当我部署的应用程序来运行独立的(通过使用macdeploymentqt工具,将所需的库)的应用程序启动和运行正常不过的日志和文件的config.cfg没有得到写入myapp.app/Contents/MacOS文件夹等设置可以“T中读出。
反正是有解决这个问题? 有没有人遇到过吗?
米奇
OSX可能不会让你上安装的应用程序写入到你的包的位置,出于安全原因,因为它可以当多个用户使用你的应用程序冲突。
是跨平台的,你可以改为写信至:
QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation)
解析为
~/Library/Application Support/<APPNAME>
和
C:/Users/<USER>/AppData/Local/<APPNAME>
或等同于Windows。
你永远应该写入应用程序包,无论是在Mac或Windows。 即使是在Windows上,如果你的用户是不是管理员将无法正常工作。 这个想法在Windows 95上一次进行感 - 甚至在Windows NT上。 不这样做。
文章来源: qt program deployed on mac. config file not writing when standalone app launched, works when run from within qt creator