关于c ++:’HMODULE GetModuleHandleW(LPCWSTR)’:无法将参数1从’const char *’转换为’LPCWSTR’


'HMODULE GetModuleHandleW(LPCWSTR)': cannot convert argument 1 from 'const char *' to 'LPCWSTR'

我对C ++还是很陌生,但是遇到了一个我无法解决的问题,这是我的错误消息:

'HMODULE GetModuleHandleW(LPCWSTR)': cannot convert argument 1 from 'const char *' to 'LPCWSTR'

这是引发错误的行:

1
        ModuleHandle = (DWORD)GetModuleHandle(moduleName.c_str());


您正在将char *传递给需要wchar_t *的对象。 您必须将字符串类型转换为wchar_t *,例如,使用MultiByteToWideChar函数(https://msdn.microsoft.com/zh-cn/library/windows/desktop/dd319072%28v=vs.85%29。 aspx),也可以通过调用GetModuleHandleA()而不是GetModuleHandleW()使用GetModuleHandle的非宽版本。