为什么CreateRemoteThread在这里工作?

我试图注入一个线程到另一个进程,这让进程加载一个外部DLL。

这是我在互联网上find的代码,它的工作原理。

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上testing

Solutions Collecting From Web of "为什么CreateRemoteThread在这里工作?"