获取程序所在的目录是一个常用的需求,在Windows下使用
GetModuleFileName可以满足需求。
在使用Qt,wxWidgets等实现可跨平台代码该如何处理?
---找与GetModuleFileName等价的API。这是我马上能相到的。很遗憾,却没有找到。
有时候,你需要的东西就在你的面前,你却找不到它。
这样的程序你一定写过,并且还用不同种语言实现过:
int main(int argc, char *argv[])
{
std::cout << "Hello World!" << std::endl;
return 0;
}
我们需要的目录信息也存在于当中:
QString applicationPath = argv[0];
int nPos = applicationPath .lastIndexOf('\\');
applicationPath = applicationPath .left(nPos+1);
所以,我们根本不需要额外的API来获取程序的目录。
说起GetModuleFileName,就会想起Set/GetCurrentDirectory。
有时候,我们并没有忘记,只是还没有想起来。