《当程序员的那些狗日日子》(十)编译与反编译

本文讲述了作者学习ASP.NET编程的过程,从使用Visual Studio .NET 2003(VS2003)开发简单的ASP.NET程序,理解DLL编译,到面对无法查看公司网站源代码的困境。通过Reflector反编译工具,作者成功揭示了DLL文件中的程序代码,展示了在缺乏源代码情况下的解决之道。

经过几个月的艰苦学习,我终于把那本厚厚的ASP.NET的书学完了。但是有一个问题我却一直没有找到答案,那就是ASP.NET程序是用什么开发工具来开发的,它的程序代码是怎么编译成DLL文件的。我曾以为.NET Framework就是ASP.NET程序的编译工具,此时我还不知道,.NET Framework其实只是ASP.NET程序(当然也包括所有.NET程序)的运行环境。最后还是老乡给我点明了:用Visual Studio .NET 2003(简称VS2003)。

老乡此前也一直在学ASP.NET,原来他那本ASP.NET的书对VS2003的使用有详细的介绍。此外这本书还介绍了ASP.NET编程的一些要点和技巧。于是我决定再学习这本书。为了学习方便,我又特地到北京西单图书大厦买了这本书回来。直到现在,我都很清楚地记得,这本书的作者叫章立民。

我不得不说的是,这本书与我之前所学的那本书,各有特点,但我还是比较偏爱之前的那本书,因为无论是它的编写还是排版,都让我觉得很好,唯一美中不足的地方就是它没有介绍VS2003这一ASP.NET程序开发必须用到的重要工具。所以此时老乡的这本书,就成了最好的弥补。

在老乡的指点下,我在电脑上装上了VS2003。看着VS2003那简洁舒适而又很人性化的界面,我一下子就被深深吸引住了,这是Dreamweaver所不能比拟的。对着VS2003,我仿佛才第一次真正走进了程序开发的世界。

有了前面那本书的学习基础,再学习这本书就容易和轻松得多。我照着书上的介绍,一步一步地在VS2003上进行操作。经过反复多次操作和实践,我终于在VS2003上编写了一个最简单的ASP.NET程序,并实现了将程序代码编译成了DLL文件。望着这个DLL文件,我有点激动,觉得它很神圣,仿佛它真的带我走进了程序开发技术的殿堂,同时我更觉得VS2003很牛很酷,很了不起。这时我才真正理解和体会到ASP.NET与ASP的区别,以及程序代码与页面分离的好处。程序代码后置,这就是ASP.NET的一大特点。

但是这时的我并没有看到,在ASP.NET和VS2003表面无限美好的背后,却是一个深深的黑洞,它正一步一步将我引进黑暗的地狱,而不是天堂,从而使我后来想逃而逃不掉。

我一边利用

1、无需设置 由于它是一个便携式工具,它不需要您将其安装在目标计算机上,因为只需拆包其存档并启动可执行文件即可完全访问其功能。 您还可以从可移动存储介质(如USB闪存驱动器或外部HDD)运行它。此外,它不会修改系统中的注册表项,也不会在您的PC上生成其他文件或文件夹,但未经您的明确许可。 2、综合界面 dnSpy配备了一个时尚,全面的用户界面,包含广泛的有用功能,它们整齐地组织在主窗口的标准菜单中。 更重要的是,它具有标准配置窗口,您可以在其中调整各种组件的设置,如其反编译器,调试器或六进制编辑器,但也可以修改显示或其他参数。 3、.NET反汇编程序 如果您需要一个高效的工具,可以通过为您提供各种有用的工具来帮助您反编译.NET程序集,您可以转到dnSpy。它配有一个反编译器,一个调试器,一个六进制编辑器和一个程序集编辑器,让你以有效的方式处理程序集。 主窗口附带了一个Assembly Explorer窗格,您可以在其中访问所需程序集的树视图。您可以通过从计算机指定适当的文件或使用“从GAC打开”选项打开程序集,该选项为您提供全局程序集缓存中可用的条目列表。 4、.NET程序集的可靠反向工程工具 所有考虑的事情,dnSpy是一个方便的应用程序,使您能够以有效的方式逆向工程.NET程序集,为您提供广泛的有用工具,包括反编译器,程序集编辑器和调试器。它不需要安装,具有全面,平滑的用户界面,并为您提供了一个标准配置窗口,您可以在其中调整各种组件的设置。
评论 40
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值