我正在尝试使用 VS c++ 获取 win7 下的当前目录,但是
TCHAR pBuf[MAX_PATH];
int bytes = GetModuleFileName(NULL, pBuf, MAX_PATH);
std::cout << bytes << " " << pBuf << " " << GetLastError() << std::endl;
返回长度 58,我认为 pBuf 中的指针指向 68。错误代码为 0。
谢谢!
最佳答案
您的<< operator不接受const TCHAR*
作为字符串参数,并将其打印为通用指针。
解决该问题的方法之一是使用 A
API 版本(CHAR
缓冲区和 GetModuleFileNameA
函数):
CHAR pBuf[MAX_PATH];
int bytes = GetModuleFileNameA(NULL, pBuf, MAX_PATH);
std::cout << bytes << " " << pBuf << " " << GetLastError() << std::endl;
关于c++ - GetModuleFileName 不返回路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20854513/