当前位置:网站首页 > 云服务教程 > 正文

exe反编译成源码(exe反编译成源码详细教程)



   谈到"C#代码反编译",大家可能都会想到 Reflector代码反编译工具,对其应该也不会太陌生;做C#开发,它算得上是一个不可或缺的实用工具。通过它我们可以很方便的查看一个程序集的源代码(这是其最基本的使用,也是大家常用的),还可以方便激活成功教程软件...,而我这篇文章要跟大家分享的是:用Reflector将C#的开发的软件[项目](此文中所说的是winForm项目,对于.net项目可以借鉴或参考)的项目代码还原——反编译得到可运行项目源码。 我所做的反编译,并不是'激活成功教程',其使用的前提或情况是:公司原来请人开发的'配餐软件(幼 儿园版)',现有客户咨询想买,并且软件中存在一些问题需改,——不是本人开发的,该软件也无源码,想修改只能想办法得到软件的源码。具体的'激活成功教程'方法 记录在下,方便自己以后查看!(ps: '激活成功教程'的方法,自己之前就摸索过。但困于反编译之后的error比较多,没有耐心,有的问题感觉比较离奇,试了几次不行就放弃了 ——这就间接的说明:真正的黑客,应该都是比较有耐心的,呵呵..., 但做软件开发,又何尝不需要这样?!)

     a.使用到的工具:Reflector,具体的说是:Reflector插件File disassembler(具体是什么和how to use,直接上网查)。

     b. 打开Reflector,选择要'激活成功教程'的软件(.exe)主程序,再选择并点击 如图:

反编译exe文件成源码为java exe反编译成源码详细教程_c#

, 在右侧出现的 程序集(输出)类型选择界面 选择类型'windows Appliction' (因为是winForm应用程序,如果是选择的其它 如'class ...'类库,则需要在之后的步骤中,改变项目属性中的 输出类型,不建议这样操作),如图:

反编译exe文件成源码为java exe反编译成源码详细教程_反编译exe文件成源码为java_02

点击 生成 即可 得到此主程序集的源码,其它的相关程序集再如此操作即可! ——不要以为大功告成,这只是第一步,麻烦的在后面!

    c.将生成的源码 在Vs中打开(项目), 先试着运行下,(一般)会报错,排除'xxx程序集不存在'这类的错误,我所遇到的如下:

   

反编译exe文件成源码为java exe反编译成源码详细教程_c#_03

反编译exe文件成源码为java exe反编译成源码详细教程_c#_03

反编译exe文件成源码为java exe反编译成源码详细教程_c#_03

反编译exe文件成源码为java exe反编译成源码详细教程_c#_03

源码文件中会出现一个 _PrivateImplementationDetails_{1FF4F699-35E0-4117-BDBC-9E44A1B0F9F5}.cs 文件名很长 内容如上的 乱码类,对此解决办法时:注释此类 或直接删除。【程序相关的文件,如图片、数据库等要记得放到项目关联位置,一般在bin/debug/文件夹下】

    d. 添加相关程序集的引用,设置启动对象。到这儿,差不多程序就可以 跑起来了,但是还没有完 ——因为 反编译后的代码,文件夹的位置和界面与资源引用之间的关联,基本上都乱了.所以现在要解决的关键问题是:恢复文件间的关联和引用(其它的问题,通过调试就 差不多可以解决)。如图:

   

反编译exe文件成源码为java exe反编译成源码详细教程_反编译exe文件成源码为java_07

窗 体的.cs和.resx(资源)文件不在同一个文件夹中,对应窗体的.resx文件都加上了项目或解决方案名前缀(zhiyiSystem.) ——This is point! 这就是我们要解决问题的关键:恢复窗体的.cs和.resx文件间的关联,操作大致有以下两步:1. 将窗体的.cs和.resx文件放在同一个文件中——即同一目录。2.去掉窗体的.resx文件的前缀 ——即修改文件名,如果是一个个文件去修改,窗体比较多的话,是一件非常重复而无聊的事,于是 就上网找 "批量修改文件名"的工具,下载了一两个感觉都不好用,找不到,只能自己搞了,再说这东西简单,说白了就是 遍历文件夹中文件并'重命名'(代码就不贴出了,文章后 附有 自己写的 "批量修改文件名"工具)。

       到此,程序就可以真正跑起来了。别看我写出来,似乎'激活成功教程'就 是一会儿的事,但我做的时候,却几经折腾 好几次都感觉"算了,又卡住了...",有些或大或小问题,在这里因为时间的原因 及有些步骤一时半会也想不起来了,但主要的方法应该都没有落下,如果有不明白的朋友,可以留言交流,再做解答;也希望在'激活成功教程'方法有经验的,能多提些意 见,分享下你的‘激活成功教程’经验!

  

到此这篇exe反编译成源码(exe反编译成源码详细教程)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 单片机程序破解方法(单片机破解视频教程)2025-10-13 08:45:08
  • 小程序服务器配置教程(小程序服务器端)2025-10-13 08:45:08
  • webflux教程(webflux入门)2025-10-13 08:45:08
  • mac装双系统win10详细教程(mac装双系统win10详细教程图解)2025-10-13 08:45:08
  • w25q128jvsiq烧录教程(25q128fvsg烧写教程)2025-10-13 08:45:08
  • 反激电路工作原理视频(反激电路工作原理视频教程)2025-10-13 08:45:08
  • 怎样制作u盘启动盘 重装系统(怎样制作u盘启动盘 重装系统教程)2025-10-13 08:45:08
  • ad21安装及破解教程(ad18安装及破解教程)2025-10-13 08:45:08
  • cmake项目目录结构(cmake教程 多层目录)2025-10-13 08:45:08
  • esp8266获取天气教程(esp8266天气预报固件)2025-10-13 08:45:08
  • 全屏图片