软件DIY----用汇编语言给XP记事本添加“自动保存”功能

本文介绍了如何通过汇编语言,为Windows XP的记事本程序添加自动保存和关闭自动保存功能。作者详细阐述了利用OD、LordPE和eXeScope工具,以及SetTimer、KillTimer和SendMessageA API,分析记事本程序流程,找到窗口过程地址,最终在代码中插入处理消息的代码,实现了定时自动保存的功能。
摘要由CSDN通过智能技术生成

 

【文章标题】: 用汇编语言给XP记事本添加“自动保存”功能

【文章作者】: newjueqi

【作者邮箱】:zengjiansheng1@126.com

【作者QQ:190678908

【使用工具】: OD LordPEeXeScope
【操作平台】: XP-SP2

【作者声明】本人平时一般的文字处理都是用记事本(用Word好像大材小用了),电脑自从拿去大修后有时候会莫名其妙的重启,弄得经常重写(本人常常忘记保存^-^),于是想给记事本增加类似于Word的自动保存功能,以图个方便。失误之处敬请诸位大侠赐教!

 

具体的思路:其实自动保存功能就是程序隔一段时间保存一次,而记事本程序是自带了保存功能的,所以只要编程安装一个记时器,每隔一段时间模拟点击“保存菜单”,就能实现自动保存,最后退出时把记时器撤销。

首先,用eXeScope给记事本增加两个菜单项“自动保存”“关闭自动保存”,如图1所示:

                        图1

 

其中,“自动保存”的菜单ID8 ,“关闭自动保存” 的菜单ID13

完成后的菜单选项如图2所示:

             图2

 

本次修改要用到3window API函数: SetTimer, KillTimer , SendMessageA, 3API没包括在记事本的输入表里,所以要用LordPE 在输入表里增加这3API

LordPE打开记事本程序,依次选择Direction->输入表的“”按钮­->点击右键->add import,出现如图3的界面,就可以在输入表里增加新的API

                 图3

 

完成后就新增了一个区段Slivana如图4,放的就是新的IID数据,如图4所示

 

                         图4

添加完新的API后又有一个新的问题了,那就是要确定新的API地址,这个在PEDIY的过程中是要自己解决的,而平时是编译器帮忙的。获得API地址有两个方法:

(1)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

newjueqi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值