Нужно заинжектиться в explorer.exe, имею dll
который имеет такой код:
#include "stdafx.h"
#include <stdio.h>
#include "windows.h"
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
MessageBox(NULL, "Hello injected to explorer.exe", "Info", MB_OK);
}
Я пробовал собирать как 32 битку так и 64 битку. Windows 10 x64.
Есть инжектор с таким кодом:
char *CDP = TEXT("C:\\ProgramData\\windows.dll");
printf("Hi from inject\n");
HANDLE proc_handle;
printf("Hi from inject\n");
LPVOID RemoteString;
printf("Hi from inject\n");
LPVOID LoadLibAddy;
printf("Hi from inject\n");
if (pID == 0)
{
printf("pID not found\n");
return false;
}
proc_handle = OpenProcess(PROCESS_ALL_ACCESS, false, pID);
printf("Hi from inject\n");
if (proc_handle == 0) {
printf("Cannot take file handle\n");
return false;
}
LoadLibAddy = GetProcAddress(GetModuleHandle("kernel32.dll"), "LoadLibraryA");
printf("Hi from inject\n");
RemoteString = (LPVOID)VirtualAllocEx(proc_handle, NULL, strlen(CDP), MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE);
printf("Hi from inject\n");
WriteProcessMemory(proc_handle, RemoteString, CDP, strlen(CDP), NULL);
printf("Hi from inject\n");
CreateRemoteThread(proc_handle, NULL, NULL, (LPTHREAD_START_ROUTINE)LoadLibAddy, RemoteString, NULL, NULL);
printf("Injection was successful\n");
CloseHandle(proc_handle);
return true;
printf("Hi from inject\n")
используется для отладки. Также собирал как 32 так и 64 битку. Только ничего не инжектится. В программы типа торрентов или браузеров инжектится без проблем. В чем может быть проблема?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Задача в том, чтобы удалять элементы массива по индексуНо делать это нужно без смещения элементов(a[n] = a[n+1]), ибо много времени на эти операции...
Что нужно освоить(по порядку),чтобы стать системным программистом и какие качества желательны,а также сколько времени в среднем занимает?