Вызов функции во внедренной DLL

Я хочу вызвать функцию в удаленном процессе внедренной DLL, которую я создал.

Я успешно внедрил свою DLL с помощью:

CreateRemoteThread(pHandle, NULL, 0, (LPTHREAD_START_ROUTINE)GetProcAddress(GetModuleHandle("kernel32"), "LoadLibraryA"), pLibRemote, 0, NULL);

DllMain выполняется, а DLL работает в режиме ожидания. Что я хотел бы сделать, так это каким-то образом вызвать удаленно загруженную DLL, чтобы выполнить некоторую работу.

Я пробовал экспортировать функцию следующим образом:

extern "C" __declspec(dllexport) void MyFunc(void)

, а затем выполнять функцию следующим образом:

CreateRemoteThread(pHandle, NULL, 0, (LPTHREAD_START_ROUTINE)GetProcAddress(GetModuleHandle("mydll"), "MyFunc"), NULL, 0, NULL);

, но это приводит к сбою

Как мне решить эту проблему?

5
задан André 7 April 2012 в 19:36
поделиться