以下代码:
#include <iostream>
#include <Windows.h>
using namespace std;
int main ()
{ LPWSTR buffer; //or wchar_t * buffer;
GetModuleFileName(NULL, buffer, MAX_PATH) ;
cout<<buffer;
cin.get();
cin.get();
}
应该显示程序执行的完整路径。但是在VS 2012中,我得到了错误:
代码有什么问题?
最佳答案
您需要为其提供一个可以容纳一些字符的缓冲区;
wchar_t buffer[MAX_PATH];
例如。
关于c++ - 如何正确使用GetModuleFileName?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18783087/