当前位置:编程学习 > VB >>

无源码的VB程序,现在需要做一个小小的修改

但是问题在于没有源码。
其实程序的功能非常简单,就是单击一个按钮后会在一个Textbox中倒计时7分钟,现在要把这个数值改为5分钟,有什么可以考虑的思路么?就把它设想成为一个有着一个按钮和一个Textbox的简单程序即可,点击按钮后Textbox显示7:00然后自动倒计时,直到0:00,现在要在没有源代码的情况下修改为,单击按钮后显示5:00然后倒计时。
我也有思考过方法,比如直接修改汇编代码,或者使用Hook之类来实现。问题在于我不知道有哪些技术或者工具可以帮助我来实现这个功能。
请大家踊跃给予指教。非常感谢。其实我都不知道这种问题应该分在哪一类,所有就发到这里来了。 --------------------编程问答-------------------- 估计可以试试这样,findwindow API或类似函数找到Textbox,getWindowText API或类似函数获得Textbox的值,SETWindowText  API或类似函数设置值 --------------------编程问答-------------------- 用OllyDBG反汇编后修改即可,此工具网上一大把。 --------------------编程问答--------------------
重作一个可能更简单。
--------------------编程问答-------------------- 得到Textbox的值没有意义,应是一个timer在控制,Textbox仅是显示时间,功能很简单,真不如重做一个 --------------------编程问答-------------------- 反汇编调试修改应该比较简单 --------------------编程问答-------------------- 没有壳的小程序吗?那还不简单。上程序。 --------------------编程问答-------------------- 不知道能不能用winhex等软件把里面的7分钟修改下? --------------------编程问答-------------------- 写那个程序的人有意思,这个文本框竟不让你定制.
不过想动态改应是很简单的事吧,比如你自己外挂一个VB6程序对他操作总没啥问题吧.
但我觉得4楼说的可能性比较大,你要有重写这整个模块的准备:) --------------------编程问答-------------------- 反编译出来或多或少有这样那样的问题,长痛不如短痛,重整一个吧! --------------------编程问答-------------------- 想练手的话用winICE等调试软件跟踪寻找exe文件中的7然后改成5,仅为使用此软件的话就马上动手去写一个,要不了几分钟就OK了。
--------------------编程问答-------------------- 看了楼主的要求,觉得功能并不复杂啊,何不重做? --------------------编程问答-------------------- 这么简单的代码 lz自己怎么可能不会写
看来lz真的很寂寞 --------------------编程问答--------------------
引用 1 楼 kendyhj101 的回复:
估计可以试试这样,findwindow API或类似函数找到Textbox,getWindowText API或类似函数获得Textbox的值,SETWindowText  API或类似函数设置值


建议楼主试试这个方法 --------------------编程问答-------------------- 给个思路:
先找到文本框和按钮的句柄(这个我就不多说了)
然后用钩子钩住按钮的消息处理过程,
当收到点击消息时,启动你的定时器开始计时,
每当时间变化需要显示的时候就设置文本框的内容为你要显示的倒计时时间
当到了5:00的时候,释放你的钩子,归还原始按钮的处理函数句柄。
然后再模拟点击按钮过程,后面的就由原来的程序自己处理了。 --------------------编程问答-------------------- 路过...
--------------------编程问答--------------------
引用 2 楼 lidaye2008 的回复:
用OllyDBG反汇编后修改即可,此工具网上一大把。

谢谢你的建议,不过VB的程序反汇编之后能得到源码么?我试过类似工具只得到了窗口和资源信息,无法得到源码 --------------------编程问答--------------------
引用 14 楼 supermanking 的回复:
给个思路:
 先找到文本框和按钮的句柄(这个我就不多说了)
 然后用钩子钩住按钮的消息处理过程,
 当收到点击消息时,启动你的定时器开始计时,
 每当时间变化需要显示的时候就设置文本框的内容为你要显示的倒计时时间
 当到了5:00的时候,释放你的钩子,归还原始按钮的处理函数句柄。
 然后再模拟点击按钮过程,后面的就由原来的程序自己处理了。

感谢,窗口句柄是我现在唯一没有试过的方法了 --------------------编程问答--------------------
引用 7 楼 yiguangqiang88 的回复:
不知道能不能用winhex等软件把里面的7分钟修改下?

我有用hex工具打开了这个项目,但是里面没有7分钟之类的数值(我把所有的7都找了一遍都不是我想要的那个),我怀疑他并不是直接用字符串设置的:( --------------------编程问答-------------------- 上程序 --------------------编程问答-------------------- 楼主寂寞,我更寂寞。大家都很寂寞!无聊时候顶顶帖,话曰:顶顶更健康! --------------------编程问答-------------------- 重做一个吧.................... --------------------编程问答-------------------- up.......................................... --------------------编程问答-------------------- 免费帮你做一个  Q:421511699
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,