前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于反编译的搜索

.net网页发布后进行反编译_百度知道 百度首页 | 手机知道 | 登录 注册 新闻 网页 贴吧 知道 音乐 图片 视频 地图 百科 文库 经验 我要提问 首页 分类 公社 财富商城 知道团队 管 理 员 认证用户 知道之星 知道活动 问医生 问律师 问作业 经验 买什么 个人中心 手机知道 百度知道 >电脑/网络 >编程语言 >C#/.NET .net网页发布后进行反编译 2010-07-06 16:04 局部有雾 | 分类:C#/.NET 我有一个.net做的网站 是 发布后的 文件 我想 查看源码 怎么进行反编译啊 高手解答 谢谢 扫描二维码下载 下载知道APP10分钟有问必答! 建议:可使用微信的“扫一扫”功能扫描下载 分享到: 2010-07-06 16:28 提问者采纳 .Net有两个很好的工具可以反编译.NET程序集:Salamander .Net Decomplier和Reflector.Net ,Salamander .Net Decomplier功能非常强大,可以反编译混淆过的.NE代码,也可以直接将程序集中的类反编译成一个文件,但是它是需要money的,试用版提供的功能又非常有限。相对而言呢,Reflector.net 是完全免费的,但是它只能一个方法一个方法的查看,不能将程序集直接反编译成一个文件,这样也比较麻烦,好就好在它支持插件add-in功能。针对它的缺点,很多人开发了很好用的插件,可以将整个程序集的代码反编译成源文件,比如说Reflector.FileDisassembler 、Reflector.FileGenerator 都是很好用的。另外再提供一些Reflector的相关插件下载,enjoy!!!!插件FileGenerator 使用方法:最开始下载了FileGenerator插件不知如何使用,后来经过摸索,还是学会使用了,所以拿来和大家分享。FileGenerator插件的作用是:根据dll文件,把里面的源文件导出成文件,导出来的文件除了没有注释,变量名也变了,其它的可谓是没有 差别。对于一些比较好的控件,如果不是开源的,完全可以导出成文件,然后自己加上注释,少许修改,很好的利用起来。(不开源的dll,用起来也不放心啊)先根据上面的地址下载FileGenerator并解压缩,然后运行Reflector.exe,然后点击View->Add- Ins...,弹出一个窗口,然后点击Add->选择FileGenerator里面的唯一一个dll文件: "FileGenerator.dll",点击close.然后回到Reflector窗口,Tool->Generator File(s)... 右边就出现了插件的窗口,选中左边的dll文件,点击右边的导出文件,源代码就全部导出来了,真是爽啊!使用.NET Reflector插件FileDisassembler还原源码.NET Reflector,它是一个类浏览器和反编译器,可以分析程序集并向您展示它的所有秘密。.NET 框架向全世界引入了可用来分析任何基于 .NET 的代码(无论它是单个类还是完整的程序集)的反射概念。反射还可以用来检索有关特定程序集中包含的各种类、方法和属性的信息。使用 .NET Reflector,您可以浏览程序集的类和方法,可以分析由这些类和方法生成的 Microsoft 中间语言 (MSIL),并且可以反编译这些类和方法并查看 C# 或 Visual Basic ?.NET 中的等价类和方法。 为了演示 .NET Reflector 的工作方式,我将加载和分析前面已经显示的 NUnitExample 程序集。下图显示了 .NET Reflector 中加载的该程序集。 在 .NET Reflector 内部,有各种可用来进一步分析该程序集的工具。要查看构成某个方法的 MSIL,请单击该方法并从菜单中选择 Disassembler。 除了能够查看 MSIL 以外,您还可以通过选择 Tools 菜单下的 Decompiler 来查看该方法的 C# 形式。通过在 Languages 菜单下更改您的选择,您还可以查看该方法被反编译到 Visual Basic .NET 或 Delphi 以后的形式。以下为 .NET Reflector 生成的代码: public void HashtableAddTest(){Hashtable hashtable1;hashtable1 = new Hashtable();hashtable1.Add("Key1", "value1");hashtable1.Add("Key2", "value2");Assert.AreEqual("value1", hashtable1["Key1"], "Wrong object returned!");Assert.AreEqual("value2", hashtable1["Key2"], "Wrong object returned!");}前面的代码看起来非常像我为该方法实际编写的代码。以下为该程序集中的实际代码: public void HashtableAddTest(){Hashtable ht = new Hashtable();ht.Add("Key1", "value1");ht.Add("Key2", "value2");Assert.AreEqual("value1", ht["Key1"], "Wrong object returned!");Assert.AreEqual("value2", ht["Key2"], "Wrong object returned!");}尽管上述代码中存在一些小的差异,但它们在功能上是完全相同的。 虽然该示例是一种显示实际代码与反编译代码之间对比的好方法,但在我看来,它并不代表 .NET Reflector 所具有的最佳用途 — 分析 .NET 框架程序集和方法。.NET 框架提供了许多执行类似操作的不同方法。例如,如果您需要从 XML 中读取一组数据,则存在多种使用 XmlDocument、XPathNavigator 或 XmlReader 完成该工作的不同方法。通过使用 .NET Reflector,您可以查看 Microsoft 在编写数据集的 ReadXml 方法时使用了什么,或者查看他们在从配置文件读取数据时做了哪些工作。.NET Reflector 还是一个了解以下最佳实施策略的优秀方法:创建诸如 HttpHandlers 或配置处理程序之类的对象,因为您可以了解到 Microsoft 工作组实际上是如何在框架中生成这些对象的。 .NET Reflector 由 Lutz Roeder 编写 提问者评价 拜谢 有QQ吗我想你交流下 评论 | 12666954 | 七级 采纳率36% 擅长: C#/.NET 数据库DB 其他类似问题 2010-08-06 2 2010-09-15 3 2011-07-04 2012-06-15 7 2011-05-23 1 更多相关问题>> 按默认排序 | 按时间排序 其他2条回答 2010-07-06 16:27 zhc418740126 | 三级 这个不太现实吧,那样的话,我随便买个大型网站源码,反编译一下,改一改不就能卖了吗,目前还不知道有什么方法 ,还有就是如果反编译可以的话,编译和反编译的机器必须是同一台 评论 | 2010-07-06 16:29 yeagen | 八级 百度一下 Reflector 评论 | 反编译的相关知识 2009-10-26 求反编译delphi 2009-03-09 如何反编译delphi编的软件标题栏图标 2 2008-10-23 反编译 delphi写的exe,想知道其中引用数据库的用户名和密码 9 2009-03-11 Delphi如何反编译 2 2006-10-26 求delphi反编译软件 2 更多关于反编译的问题>> 等待您来回答 0回答 10 求大神指导一个SQL语句 0回答 5 JSP连接sqlserver问题,请教,谢谢! 0回答 mfc中的webbrowser重写了idispatch::invoke,要如何调用 2回答 关于无线路由器分配IP过慢的问题~~~~~~~单位的网络,以前是... 0回答 广东电信卡怎么开通漫游 1回答 5 用phpmyadmin导出数据库并生成文件*.sql 文件中中文显示为很多‘?... 2回答 30 asp.net用户代码为处理 sqlexception 用户 'IQ0732-PC' 登... 1回答 稳压块的静态电流值指什么? 1回答 为什么我在南宁,而我家的IP却是显示广东东莞的?我家是电信的 0回答 20 win8.1安装sql2005找不到Binn文件夹 0回答 sqlserver2008 字符分割的字段怎么分成列 1回答 宿舍静态ip 网关又不是一个段,如何设置路由器? 1回答 5 请问广东地区 中国电信 和 中国移动的动感地带 哪个便宜? 0回答 2000w条数据你懂得,无密码sql2000重新制作附加即可.rar 1回答 excel数字超过12位导入sqlserver数据库的方法 更多等待您来回答的问题>> 知道日报 往期回顾 登录 还没有百度账号?立即注册 1 2 3 精彩知识在知道 知道君在微博、微信等你! 2014春节必备的14个锦囊 不得不知的浏览器安全隐患! 爱知道,解答你的青春期困惑 帮助 | 意见反馈 | 投诉举报 | 知道协议 | 加入我们 ©2014 Baidu 使用百度前必读 | 百度知道开放平台