1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
typedef int(WINAPI *DLL_InstallHook)(DWORD threadID);
DLL_InstallHook InstallHook;
char* exeString = "C:\\hook\monExe.exe";
char* workingDir = "C:\\hook"
STARTUPINFO si = {0};
PROCESS_INFORMATION pi = {0};
si.cb = sizeof(STARTUPINFO);
result = CreateProcess(NULL, exeString, NULL, NULL, FALSE, CREATE_SUSPENDED, NULL, workingDir, &si, &pi);
if(!result)
{
MessageBox(0, "Erreur CreateProcess", "Error", MB_ICONERROR);
return -1;
}
HANDLE dllHandle = NULL;
dllHandle = LoadLibrary("DllInjectHook.dll");
InstallHook = (DLL_InstallHook)GetProcAddress((HMODULE)dllHandle,"?InstallHook@@YAPAUHHOOK__@@K@Z");
InstallHook ((DWORD)pi.dwThreadId); // on appelle la fonction exportee de la DLL
ResumeThread(pi.hThread);
return 0;
} |
Partager