采用dll多线程的方案进行注入
BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved )
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
{
// 开新线程处理
/*
// 此处是调试界面,存在不完善情况
HANDLE lThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ShowDialog, hModule, NULL, 0);
if (lThread != 0) {
CloseHandle(lThread);
}
*/
// 采用多线程执行函数
HANDLE mThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)函数或者需要执行代码函数, hModule, NULL, 0);
if (mThread != 0) {
CloseHandle(mThread);
}
break;
}
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}