我的C++程序中只有一行

HINSTANCE hInstLibrary = LoadLibrary("DLL_tut.dll");

在这里,我收到错误消息,说错误C2664:'LoadLibraryW':无法将参数1从'const char [12]'转换为'LPCWSTR'

我正在尝试实现http://www.codeguru.com/cpp/cpp/cpp_mfc/tutorials/article.php/c9855/DLL-Tutorial-For-Beginners.htm链接中给出的程序

我试图找到一些解决方案,并找到了最接近的Incompatible var types,但是我不了解如何隐蔽该文件字符串,我想这个问题的最后答案更合适。
有人可以建议如何消除此错误吗?

PS:不是一些家庭作业,是dll的新功能,并且试图自己理解。停留在最后一步。

最佳答案

尝试

HINSTANCE hInstLibrary = LoadLibrary(L"DLL_tut.dll");

要么
HINSTANCE hInstLibrary = LoadLibrary(_TEXT("DLL_tut.dll"));

事实是,您的项目可能是使用定义的UNICODE宏编译的,这使LoadLibrary使用LoadLibraryW版本,该版本需要Unicode字符串作为参数。

关于c++ - 如何清除LoadLibrary()函数中不兼容的变量类型的错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30750705/

10-16 05:20