以下代码将注入dll并将调用DllMain.我如何从DLL中调用特定函数,而不仅仅是DllMain?
DWORD pid; HANDLE hd; LPVOID gp,rs,proc; gp = (LPVOID)GetProcAddress(GetModuleHandle(L"Kernel32.dll"),"LoadLibraryA"); pid = 6096; hd = OpenProcess(PROCESS_ALL_ACCESS,pid); rs = (LPVOID)VirtualAllocEx(hd,sizeof(DLL_NAME),MEM_RESERVE | MEM_COMMIT,PAGE_READWRITE); if (!WriteProcessMemory(hd,(LPVOID)rs,DLL_NAME,strlen(DLL_NAME),0)) { printf("WriteProcessMemory %d",GetLastError()); } if (!CreateRemoteThread(hd,(LPTHREAD_START_ROUTINE)gp,0)) { printf("CreateRemoteThread %d",GetLastError()); }