Я знаю, что этот вопрос задавался ранее, но я все еще не видел удовлетворительного ответа или окончательного ответа "нет, этого нельзя сделать", поэтому я спрошу снова!
Все, что я хочу сделать, - это получить путь к исполняемому в данный момент исполняемому файлу, либо в виде абсолютного пути, либо относительно того, откуда исполняемый файл вызывается, независимо от платформы. Я, хотя boost :: filesystem :: initial_path был ответом на мои проблемы, но, похоже, он обрабатывает только «независимую от платформы» часть вопроса - он по-прежнему возвращает путь, из которого было вызвано приложение.
Для справки: это игра с использованием Ogre, которую я пытаюсь профилировать с помощью Very Sleepy, которая запускает целевой исполняемый файл из своего собственного каталога, поэтому, конечно, при загрузке игра не находит конфигурационные файлы и т. Д. и быстро вылетает. Я хочу иметь возможность передать ему абсолютный путь к файлам конфигурации, которые, как я знаю, всегда будут жить рядом с исполняемым файлом. То же самое касается отладки в Visual Studio - я хотел бы иметь возможность запускать $ (TargetPath) без необходимости устанавливать рабочий каталог.