首页
社区
课程
招聘
[讨论]实现程式一运行按钮就点下去
发表于: 2008-7-2 15:27 4726

[讨论]实现程式一运行按钮就点下去

2008-7-2 15:27
4726
我有个绿色软件,每次开机都要运行,然后要点一下软件的"开始按钮"才会运行,有没有什么办法实现软件一运行,这个"开始按钮"就自动点下去了?
我不想用第三方软件实现,只想学会修改软件本身实现这个功能,因为我没有源码,只能通过修改这个没有加壳的PE文件本身来实现。谢谢!

附件里有改好了的,其它论坛的人改的,我不会改,想找那人教,无奈每天上网都没看到他在线,不知道哪位老大会改么?可以写个教程或修改时抓几张图上来不!

我不是想用这个软件,是想学会怎么改。附件里有改好了的。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
2
打一个补丁,补丁内容就是 GetDlgItem,按钮的ID可以使用各种方法获得,我不说了,得到按钮的句柄后向它PostMessage,消息可以用鼠标消息。具体API的用法可以自己查

补丁的时机是个问题,理论上应该在程序初始化代码执行完毕后进行,不过这个很难找

我给你出个主意,不算好主意,可能会工作,将入口点patch,内容就是创建一个新的线程,而创建的线程可以先“睡一小会”,比如500ms,给程序足够的初始化时间,再执行向按钮发送消息的代码,最后ExitThread就行了
2008-7-2 16:02
0
雪    币: 224
活跃值: (147)
能力值: ( LV9,RANK:970 )
在线值:
发帖
回帖
粉丝
3
既然你贴了图,那应该这样去描述“需要把程序Patch成一运行就启动服务”
2008-7-2 17:30
0
雪    币: 190
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
希望你能试一下并发图片教程,谢谢!



乱说,我要一运行就单击下了那个按钮,附件里都已实现了,我只是不知如何实现的。我并不想这个软件,只是用这个软件来举例,希望有可以改的人发出教程!
2008-7-2 20:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
偶是初学者,只能简单跟跟....
附件看了下,用UE比较下,看到了差别,他是找了个空位将调用开始服务的call写了进去,并且做了判断,如果"停止服务"状态,则跳过执行该call,接着返回到跳转处.

00422023      90            nop
00422024   .  E9 77F90B00   jmp     004E19A0   '跳到自己的代码
00422029   >  FF52 44       call    dword ptr [edx+44]
0042202C   .  C3            retn

004E19A0   > \803D D90E4E00>cmp     byte ptr [4E0ED9], 0  '比较是否停止服务
004E19A7   .  74 15         je      short 004E19BE
004E19A9   .  90            nop
004E19AA   .  90            nop
004E19AB   .  90            nop
004E19AC   .  90            nop
004E19AD   .  60            pushad
004E19AE   .  8B40 10       mov     eax, dword ptr [eax+10]
004E19B1   .  E8 9EBCF6FF   call    0044D654     'call调用开始服务
004E19B6   .  C605 D90E4E00>mov     byte ptr [4E0ED9], 0
004E19BD   .  61            popad
004E19BE   >  8B40 10       mov     eax, dword ptr [eax+10]
004E19C1   .  8B10          mov     edx, dword ptr [eax]
004E19C3   .^ E9 6106F4FF   jmp     00422029
2008-7-3 13:45
0
游客
登录 | 注册 方可回帖
返回
//