内存加载Dll
分享一份自己之前总结以前的代码写的dll内存加载库C++版本
项目要自行编译生成lib文件
支持:
1. Win32标准Dll
2. MFC Dll
3. 易语言Dll
4. 其他环境下生成的Dll但 不能加壳加密
File: include/ldr.h
/* __ldr_header__ */ #ifndef __LDR_H__ #define __LDR_H__ #ifdef _DEBUG #pragma comment(lib, "image.d.lib") #else #pragma comment(lib, "image.lib") #endif #ifdef _WIN32 #include <stdio.h> #include <stdlib.h> #include <tchar.h> #include <Windows.h> #include <WinNT.h> #else #error Current platform is not supported #endif typedef PVOID (__stdcall *malloc_t) (ULONG); typedef VOID (__stdcall *free_t) (PVOID); PVOID LdrLoadImage (PVOID Buffer, DWORD Size, malloc_t m = NULL, free_t f = NULL); PVOID LdrGetProcAddress (PVOID Addr, LPCSTR Name); VOID LdrFreeImage (PVOID Addr); #endif
Dll处理接口
PVOID LdrLoadImage (PVOID Buffer, DWORD Size, malloc_t m = NULL, free_t f = NULL);
PVOID LdrGetProcAddress (PVOID Addr, LPCSTR Name);
VOID LdrFreeImage (PVOID Addr);