当前位置:首页 » 编程软件 » vb反编译修改代码

vb反编译修改代码

发布时间: 2024-10-17 06:06:26

‘壹’ VB反编译还原代码 求助

如果说 VB3、VB4 还有可能的话,那么 VB5、VB6 反编译就是完全的痴人说梦了,VB6 已经不是纯粹的解释性语言了,根本不可能反编译出完整的源代码,对于这种语言写出来的程序,只能获得中间语言或低级语言。一般来说 VB6 都是 P 代码,而 P-Code 的代码逆向回来只能自己看,机器是识别不了的。

举个例子:

比如在 VB6 中有一句代码 : MsgBox "Decompile Test."

那么反编译出来的结果就是:

(代码太长不贴,这里贴主要的)
...

mov dword ptr [ebp-58], 004012E4 ; 这里把 "Decompile Test."的地址弄进去了。
...

call dword ptr [<&MSVBVM60.__vbaVarDup>]; 可以清楚的看出来,复制了一份变量的句柄。因为VB里字符串指向的是内存地址。
...

call dword ptr [<&MSVBVM60.#595>] ; 这一句弹出了MsgBox.这里如果跟进去的话是一大堆API 。
...

所以正常反编译(学汇编语言和计算机编译原理去吧)的话,看到段了就会知道这是一个 Msgbox 函数,但是具体显示的内容是什么,那是根本看不出来的。

P.S. 针对楼上[你不懂就别乱说]说的插一嘴,未加壳的 .NET 为何能被反编译出源代码,那是因为 .NET 是托管,而托管有中间语言,所以它的源代码被编译成 msil 这种中间语言而非像 VB6 直接编译成机器语言了。

‘贰’ 编程求教,vb.net程序exe,想反编译-修改-重生成exe。

反汇编的程序代码肯定是有错误的,你可以把东西拿上来,如果工程不是太大的话我们可以试试帮你改

‘叁’ VB反编译还原代码 求助

如果说 VB3、VB4 还有可能的话,那么 VB5、VB6 反编译就是完全的痴人说梦了,VB6 已经不是纯粹的解释性语言了,根本不可能反编译出完整的源代码,对于这种语言写出来的程序,只能获得中间语言或低级语言。一般来说 VB6 都是 P 代码,而 P-Code 的代码逆向回来只能自己看,机器是识别不了的。

举个例子:

比如在 VB6 中有一句代码 : MsgBox "Decompile Test."

那么反编译出来的结果就是:

(代码太长不贴,这里贴主要的)
...

mov dword ptr [ebp-58], 004012E4 ; 这里把 "Decompile Test."的地址弄进去了。
...

call dword ptr [<&MSVBVM60.__vbaVarDup>]; 可以清楚的看出来,复制了一份变量的句柄。因为VB里字符串指向的是内存地址。
...

call dword ptr [<&MSVBVM60.#595>] ; 这一句弹出了MsgBox.这里如果跟进去的话是一大堆API 。
...

所以正常反编译(学汇编语言和计算机编译原理去吧)的话,看到段了就会知道这是一个 Msgbox 函数,但是具体显示的内容是什么,那是根本看不出来的。

P.S. 针对楼上[你不懂就别乱说]说的插一嘴,未加壳的 .NET 为何能被反编译出源代码,那是因为 .NET 是托管,而托管有中间语言,所以它的源代码被编译成 msil 这种中间语言而非像 VB6 直接编译成机器语言了。

‘肆’ 我学过VB编程,VB能不能对VC++或C++编写的软件进行反编译出源代码呢

VC++或C++编写的软件不能进行反编译,高级语言和目标代码不是一一对应的,所以不能进行反编译。只有那些伪编译的目标代码有可能反编译。

热点内容
oracle同步mysql数据库 发布:2025-07-18 00:42:27 浏览:190
go语言编译其他平台 发布:2025-07-18 00:42:23 浏览:279
二叉树非递归先序遍历算法 发布:2025-07-18 00:39:45 浏览:356
压缩热泵循环 发布:2025-07-18 00:38:04 浏览:888
安卓自动升级在哪里关掉 发布:2025-07-18 00:36:37 浏览:360
键盘按f9键不可以编译怎么调 发布:2025-07-18 00:11:34 浏览:312
安卓手机的广告如何删除 发布:2025-07-18 00:10:50 浏览:105
linux安装composer 发布:2025-07-18 00:04:52 浏览:241
地址存储器的容量 发布:2025-07-17 23:42:56 浏览:167
win7电脑用户名和密码在哪里查询 发布:2025-07-17 23:39:44 浏览:476