【发布时间】:2011-05-24 19:00:39
【问题描述】:
正如标题所说,我正在寻找一种方法来执行 initial_path()。 如您所见,这里没有替代品: http://www.boost.org/doc/libs/1_46_0/libs/filesystem/v3/doc/deprecated.html
【问题讨论】:
标签: boost filesystems deprecated
正如标题所说,我正在寻找一种方法来执行 initial_path()。 如您所见,这里没有替代品: http://www.boost.org/doc/libs/1_46_0/libs/filesystem/v3/doc/deprecated.html
【问题讨论】:
标签: boost filesystems deprecated
为什么不自己记住一些变量呢?为什么你需要提升来处理这个问题?正如他们在文档中所说,这由用户轻松处理。
【讨论】:
您是否正在寻找一种方法来获取可执行文件的完整路径?
阅读此SO question
我认为答案如下(感谢 Mike)
Here's code to get the full path to the executing app:
Windows:
int bytes = GetModuleFileName(NULL, pBuf, len);
if(bytes == 0)
return -1;
else
return bytes;
Linux:
char szTmp[32];
sprintf(szTmp, "/proc/%d/exe", getpid());
int bytes = MIN(readlink(szTmp, pBuf, len), len - 1);
if(bytes >= 0)
pBuf[bytes] = '\0';
return bytes;
【讨论】: