重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
如果是vb 的话,基本没有必要加壳,因为vb是不能反编译的,反编译出来的都是汇编码,破解的话不比重写一个新的简单多少。
为陵城等地区用户提供了全套网页设计制作服务,及陵城网站建设行业解决方案。主营业务为网站设计制作、网站设计、陵城网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
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.NET,那么它是被编译成中间语言的,则可以使用VS提供的一个混淆器阻止他人反编译。