我正在将一个c ++ Qt应用程序从Windows移植到OSX,无法绕过.app包概念.我希望有人能帮助我理解.
我的可执行文件存在于此处:MyProgram.app/Content/MacOS/MyProgram.exe
我的资源文件夹位于此处:MyProgram.app/Content/Resources/
在我的代码中,我使用相对路径来引用资源文件夹中的项目:
"../Resources/something.png"
如果我打开.app包并直接运行.exe,这很有用.
但这不是.app包的工作方式.用户应该在Finder中单击.app包以运行该程序.但在那种情况下,我的相对路径不再有效,这是我不明白的.
有谁理解我的问题以及如何解决它?
QApplication::applicationDirPath()
http://doc.qt.io/qt-5/qcoreapplication.html#applicationDirPath