向目标进程注入DLL用完之后再释放掉! 如题。知道目标进程ID注入进去 然后释放怎么卸载掉呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 LZ是远程注入到其它进程的DLL吧!你那个DLL的main函数里有一个入参是ul_reason_for_call,DLL工程建立后,会自动生成一些代码,请看生成代码如下: switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: { 这个地方是你注入的DLL后进程启动时会调用的,你可以在这里申请资源 break; } case DLL_THREAD_ATTACH: { break; } case DLL_THREAD_DETACH: { break; } case DLL_PROCESS_DETACH: {这个地方是当目标进程结束后才会调用,你可以在这里放掉你申请的资源。 break; } hThread = CreateRemoteThread(hProcess, NULL, 0, // 释放注入的dll (LPTHREAD_START_ROUTINE)::GetProcAddress(hKernel32, "FreeLibrary"), (void*)hLibModule, 0, NULL ); WaitForSingleObject( hThread, INFINITE ); CloseHandle(hThread ); 之中hLibModule是远程线程所要释放的dll句柄 CFileDialog 求教 MDI如何创建新文档 关于树节点问题 急 ....vc中的资源列表 突然没了 我建立了一个单文档的工程,怎么让它一运行,窗口就在屏幕正中间? 如何制作这样的界面呀,高人指点 求助!界面和进程的问题 我怎样获得某个文件夹下的全部文件的名字? 请问如何防止控件的闪烁啊(在formview上) 图形识别思路 Windows系统外观设置 两个程序能否同时访问数据库?
LZ是远程注入到其它进程的DLL吧!你那个DLL的main函数里有一个入参是ul_reason_for_call,DLL工程建立后,会自动生成一些代码,请看生成代码如下: switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
{
这个地方是你注入的DLL后进程启动时会调用的,你可以在这里申请资源
break;
}
case DLL_THREAD_ATTACH:
{
break;
}
case DLL_THREAD_DETACH:
{
break;
}
case DLL_PROCESS_DETACH:
{
这个地方是当目标进程结束后才会调用,你可以在这里放掉你申请的资源。
break;
}
hThread = CreateRemoteThread(hProcess, NULL, 0, // 释放注入的dll
(LPTHREAD_START_ROUTINE)::GetProcAddress(hKernel32, "FreeLibrary"),
(void*)hLibModule, 0, NULL );
WaitForSingleObject( hThread, INFINITE );
CloseHandle(hThread ); 之中hLibModule是远程线程所要释放的dll句柄