如题。
知道目标进程ID注入进去 然后释放怎么卸载掉呢?

解决方案 »

  1.   


    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;
    }
      

  2.   


        hThread = CreateRemoteThread(hProcess, NULL, 0,         // 释放注入的dll   
            (LPTHREAD_START_ROUTINE)::GetProcAddress(hKernel32, "FreeLibrary"),   
            (void*)hLibModule, 0, NULL );   
        WaitForSingleObject( hThread, INFINITE );   
        CloseHandle(hThread );   之中hLibModule是远程线程所要释放的dll句柄