Ошибка я получаю:C2664 ошибка, C++, которая чужда мне
"DWORD GetModuleFileNameW(HMODULE,LPWSTR,DWORD)' : cannot convert parameter 2 from 'char *' to 'LPWSTR"
На этой линии
GetModuleFileName(NULL, &strL[0], MAX_PATH);
Этот код
BOOL APIENTRY DllMain(HMODULE hModule, DWORD fdwReason, LPVOID lpReserved)
{
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
{
std::string strL;
strL.resize(MAX_PATH);
GetModuleFileName(NULL, &strL[0], MAX_PATH);
DisableThreadLibraryCalls(hModule);
if(strL.find("notepad.exe") != std::string::npos)
{
gl_hThisInstance = hModule;
LoadOriginalDll();
}
break;
}
case DLL_PROCESS_DETACH:
{
ExitInstance();
break;
}
}
return TRUE;
}
Нам нужно больше вашего кода. В частности, определение 'strL' (хотя мы * знаем, что это такое, потому что сообщение об ошибке описывает его достаточно подробно). – usr2564301
и используйте правильное форматирование. неформатированный код затрудняет чтение –
'typedef wchar_t * LPWSTR, * PWSTR; ' – texasbruce