错误:类型“”的参数与“LPWSTR”类型的参数不兼容

时间:2016-08-26 08:36:51

标签: c++ winapi wchar

我知道之前已经有人问过 ,但我需要修复。我试图改变它,但又一次这个错误不断出现。

// Get the dll's full path name
    char buf[MAX_PATH] = { 0 };
    GetFullPathName(L"Project1.dll", MAX_PATH, buf, NULL);
    printf(buf);
    printf("\n");

如果你们中的任何人能够帮助我,我会非常感激。

提前致谢。

1 个答案:

答案 0 :(得分:1)

替换

char buf[MAX_PATH] = { 0 };

WCHAR buf[MAX_PATH] = { 0 };

你显然在这里调用GetFullPathName的宽字符串版本,而你的第一个参数是wchar_t*,所以缓冲区也应该是。

或者更好的是,使用TCHAR_T("Project1.dll")代替L"Project1.dll"