用VB编写的程序,主窗口标题栏文字如何修改?

最近想学习点VB程序汉化方法,在网上下载的一个单文件VB程序(程序使用了其他界面控件),检测用upx脱壳后可以正常运行,想尝试下修改程序主窗口标题栏文字(原程序窗口标题栏是汉字)。
1、ResHack、exescope这两款软件不能修改
2、网上看了很多资料,说用vbexplorer可以修改,用这个程序可以看到主窗口的Caption属性,修改后保存后运行程序,标题栏文字居然没有改动。用GetVBRes、VBLocalize结果一样
3、用UltraEdit打开程序文件搜索主窗口标题栏文字的Unicode、ASCII码,找到几处全部修改保存后重新运行程序,标题栏文字居然没有改动。
请各位大神给个方法,小弟积分少不够上分见谅

这种情况一般是标题栏文字为动态生成的情况,比如说在Form1_Load过程中有一行:
Form1.Caption="Test"
这种情况下标题栏文字就变为“Test”了。一般情况下为了防止恶意修改,窗体的属性即便已通过属性窗口设置好,还是会用代码设置一遍的。追问

那上面的例子中“Test”会不会作为字符串保存在可执行文件的资源中?难道不能用UltraEdit进行修改么?

追答

大软件项目一般会把这些东西写到字符串表里。可是小软件出于方便起见一般不写入表中。除非反编译,否则无法修改。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-10-28
估计是运行后由编码生成的,各有各的做法
第2个回答  2012-10-29
你用 OD 反汇编找到最终偏移地址! 修改后保存!
第3个回答  2012-10-28
不能,除非你反编译。
相似回答