DLL卸载
DLL卸载 DLL卸载的工作原理 实现DLL卸载 参考文献 DLL卸载的工作原理 主要来说与DLL注入类似,DLL注入是驱使目标进程调用LoadLibrary() API,DLL卸载则是驱动目标进程调用FreeLibrary() API: 将FreeLibrary() API的地址传递给CreatRemoteThread()的lpStartAddress参数 将要卸载的DLL的句柄传递给lpParameter参数 引用指数:记录DLL被调用的次数,卸载时也要卸载相同的次数。 实现DLL卸载 EjectDll.exe # include "windows.h" # include "tjhelp32.h" # include "tchar.h" # define DEF_PROC_NAME(L"notepad.exe") # define DEF_DLL_NAME (L"myhack.dll") DWORD FindProcessID ( LPCTSTR szProcessName ) { DWORD dwPID = 0xFFFFFFFF ; HANDLE hSnapShot = INVALID_HANDLE_VALUE ; PROCESSENTRY32 pe ; //获取系统快照(Snapshot) pe . dwSize = sizeof ( PROCESSENTRY32 ) ;