我知道这个问题以前已经被问过了,但是我仍然没有看到一个令人满意的答案,或者一个明确的“不,这不能做”,所以我再问一次!
我所要做的就是以独立于平台的方式获取当前运行的可执行文件的路径,可以是绝对路径,也可以是相对于调用可执行文件的位置。我认为boost::filesystem::initial_path是我的问题的答案,但它似乎只处理了问题的“平台无关”部分-它仍然返回应用程序被调用的路径。
对于一些背景,这是一个使用Ogre的游戏,我正在尝试使用Very Sleepy来分析它,它从它自己的目录运行目标可执行文件,所以当然在加载时游戏没有找到配置文件等,并立即崩溃。我希望能够将配置文件的绝对路径传递给它,我知道它将始终与可执行文件并存。同样的道理也适用于Visual Studio中的调试-我希望能够运行$(TargetPath)而不必设置工作目录。
https://stackoverflow.com/questions/1528298
复制相似问题