Почему внедрение DLL с помощью CreateRemoteThread+LoadLibrary завершается с ошибкой с кодом завершения 0 в 64-битном проC++

Программы на C++. Форум разработчиков
Anonymous
Почему внедрение DLL с помощью CreateRemoteThread+LoadLibrary завершается с ошибкой с кодом завершения 0 в 64-битном про

Сообщение Anonymous »

Я пытаюсь внедрить DLL в 64-битный целевой процесс с помощью метода CreateRemoteThread + LoadLibraryA в Windows 10. И инжектор, и DLL скомпилированы как 64-битные двоичные файлы, и целевой процесс также является 64-битным. Однако в удаленном потоке происходит сбой и возвращается 0, что указывает на то, что DLL не была загружена.
Вот код, который я использую для внедрения:
RemoteThreadInjector.exe

Код: Выделить всё

#include 
#include
#include 
#include 
#include 

bool InjectDLL(DWORD processID,const char* dllPath) {
HANDLE hProcess = nullptr;
HANDLE hThread = nullptr;
LPVOID pRemoteMem = nullptr;
bool success = false;

hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, processID);
if (hProcess == nullptr) {
std::cerr 

Подробнее здесь: [url]https://stackoverflow.com/questions/79700984/why-does-dll-injection-with-createremotethreadloadlibrary-fail-with-exit-code-0[/url]

Вернуться в «C++»