Delphi中把执行文件内存中的DLL的代码全部保存下来


本文整理自网络,侵删。

 有时,有些软件有保护,看不到他程序内部是怎么一个样,如果想简单的把他的内存保存下来!
我写了一个简单的函数,调用一下就可以把DLL和EXE的内存里的信息全部导到文件里!到时再慢慢查吧!

uses
TlHelp32;


procedure GetDLLMemToFile;
var
PID: Dword;
Hand: THandle;
lppe: TModuleEntry32;
found: boolean;
File111: TFileStream;
dd, Add1, Add2, index: dword;
begin
Hand := CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, GetCurrentProcessID);
lppe.dwSize := SizeOf(lppe);
found := Module32First(Hand, lppe);
while found do
begin
File111 := TFileStream.Create('debug\' + extractfilename(lppe.szExePath), $FFFF);

Add1 := dword(lppe.modBaseAddr);
Add2 := Add1 + lppe.modBaseSize;
index := dword(lppe.modBaseAddr);
while true do
begin
dd := Pdword(index)^;
File111.WriteBuffer(dd, 4);
inc(index, 4);
if index >= Add2 - 4 then break;
end;

File111.Destroy;

found := Module32Next(Hand, lppe);
end;
CloseHandle(Hand); // 释放快照句柄
end;

相关阅读 >>

Delphi 记事本与计算器的调用

Delphi 获取本机 hostname ip address

Delphi datetimetogmt gmt时间与tdatetime转换

使用idhttp抓取百度和google会出错

Delphi 生成随机字符串

Delphi tserversocket 发送消息之前检查客户端是否仍处于连接状态

Delphi驱动开发研究第一篇--实现原理

Delphi获取dos命令行输出函数 运行cmd命令并获取结果

Delphi 提升权限查找进程关闭进程单元

Delphi 获取自身软件的版本号

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...