可能的重复:
如何在C中找到可执行文件的位置
我正在使用 GTK+ 用 C++ 编写一个多平台应用程序,但遇到了问题。我必须获取程序路径。例如,当程序处于/home/user/program
(or C:\Users\user\program.exe
), 我有/home/user/
(or C:\Users\user\
).
我可以以及如何做到这一点?
对于 Win32/MFC C++ 程序:
char myPath[_MAX_PATH+1];
GetModuleFileName(NULL,myPath,_MAX_PATH);
另请注意以下注释:http://msdn.microsoft.com/en-us/library/windows/desktop/ms683156%28v=vs.85%29.aspx,
本质上:WinMain 不包含 lpCmdLine 中的程序名称,main()、wmain() 和 _tmain() 应该在 argv[0] 处包含它,但是:
注意:命令行中可执行文件的名称
操作系统提供给进程的不一定是相同的
在调用进程提供给的命令行中
创建进程函数。操作系统可能会预先考虑一个完整的
未提供完整名称的可执行文件名称的限定路径
合格的路径。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)