2

我正在尝试将一个线程注入另一个进程,让该进程加载一个外部 dll。

这是我在互联网上找到的代码,它有效。

    HANDLE hThread  = CreateRemoteThread (hProcess, NULL, 0,
            (LPTHREAD_START_ROUTINE) GetProcAddress(
                GetModuleHandle(L"kernel32"), "LoadLibraryA"), 
                  lpMemory, 0, NULL);
    if (hThread == INVALID_HANDLE_VALUE)
    {
            return false;
    }

但据我了解,返回的地址GetProcAddress存在于当前进程的内存空间中,而不是目标进程。

那么它为什么起作用呢?

在 Windows 7 上测试

4

0 回答 0