Winform工程,反编译后,虽然能用,但不太好用。

因为form并没有像原生的那样。

所以,需要几个步聚:

1。 用ResGen工具,把二进制资源文件还原为xml格式:

ResGen fromXX.resource fromxx.resx

然后引入工程中。

可以,现在资源文件,还是散放在那里,没有与form在一块。

2。把fromXX的代码,一分为二,分成fromxx.cs和fromxx.Designer.cs

这个简单,只需要把formxx.cs做一个复制,然后把复制的这个改成fromxx.Designer.cs

然后,有点难度的就来的。

1) 修改vsproj文件,

    < Compile Include= "FormXX.cs ">
      < SubType> Form</ SubType>
    </ Compile>
    < Compile Include= "FormXX.Designer.cs ">
      < DependentUpon >FormXX.cs </DependentUpon >
    </ Compile>
    < EmbeddedResource Include= "SU.resx ">
      < DependentUpon >FormXX.cs </DependentUpon >
    </ EmbeddedResource>

2) 两个文件的类前面都加上partial关键字
3) designer.cs中,只留下定义和InitializeComponent
4) 其它的在from中。

3. 编译过。
4。这里,我们还是不能使用窗体编辑器,还需要过几关:
1) designer.cs把头部的所有的import都要去除,一个诀窍是一个一个去除,去除一个namespace,则所有的引用,都需要用全名称方式,如:
Lable 要换成 System.Windows.Forms.Label

2) 编译过,还是不行。窗体编辑器会告诉你一个奇怪的错误:指向这里。
  this.BackgroundImage = ((System.Drawing.Image)(manager.GetObject("$this.BackgroundImage")));

然后,的倒。怎么也看不出这里有什么错啊?
然后,我把manager这个变量,全部换成resources
如:
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SU));

然后,竟然通过了!!!

至此,窗体编辑器可以对窗体进行所见即所得编辑了。

Winform工程反编译后的工作的更多相关文章

  1. Winform 工程反编译后窗体如何显示

    Winform反编译后,如果想要让它象正常的工程一样,可以在窗体编辑器中,编辑,需要做一些工作. 1.  转换.resources 为 .resx 利用resgen工具.这个工具是vs自带的. 在启动 ...

  2. winform代码反编译后图片等资源文件恢复解决方案

    用Reflector工具反编译的winform代码,图片等资源文件不能很好的反编译成功. 这里有一个笨的解决方案.首先我们要了解图片资源当初加入到工程的几种方式,及他们所在的位置. 一般winform ...

  3. JD-GUI反编译后代码逻辑分析

    一,用jd-gui.exe等工具查看源代码.如何你不会,可以参看此文章: http://blog.csdn.net/hp_2008/article/details/8207879 可以到以下连接下载可 ...

  4. 实现android apk反编译后代码混淆

    通常情况下我们需要对我们开发的android代码进行混淆,以免代码在反编译时暴露敏感信息及相关技术代码: 反编译测试工具:onekey-decompile-apk-1.0.1. 在高级版本的adt创建 ...

  5. 转 C#反编译后的一些错误改正

    Xenocode反编译及代码整理记录1.Xenocode中设置输出数字为十进制 2.输出后中文文本为\uXXXX,可采用编码工具转成中文 3.new ()改成null; 4.反编译后代码中嵌套数组ne ...

  6. 【Android 应用开发】 Android APK 反编译 混淆 反编译后重编译

    反编译工具 : 总结了一下 linux, windows, mac 上的版本, 一起放到 CSDN 上下载; -- CSDN 下载地址 : http://download.csdn.net/detai ...

  7. WPF 反编译后错误处理

    1. 首先,手动创建一个WPF工程(WpfApplicationReflectorDemo) 2. 把生成的WpfApplicationReflectorDemo.exe 拖到ILSpy里 3.点击 ...

  8. C#中修改Dll文件 (反编译后重新编译)

    Dll文件生成后,如没有源代码,又要修改其中内容 可以用微软自带的ildasm和ilasm程序 先用ildasm将dll文件反编译成il文件 ildasm Test.dll /out=Test.il  ...

  9. Java中String的intern方法,javap&cfr.jar反编译,javap反编译后二进制指令代码详解,Java8常量池的位置

    一个例子 public class TestString{ public static void main(String[] args){ String a = "a"; Stri ...

随机推荐

  1. Ansible-Ad_Hoc临时命令的使用

    Ad_Hoc临时命令的使用 1.使用场景: 所有的临时获取信息的都可以使用,比如节前健康检查.临时更新配置文件. 2.用法: ansible -i 主机 -m 模块 选项 3.常用的命令选项: -v ...

  2. circRNA数据库的建立

      circRNA数据库的建立 wget http://circbase.org/download/human_hg19_circRNAs_putative_spliced_sequence.fa.g ...

  3. Cannot assign requested address的解决办法

    今天想试一下redis,写了个程序,对redis连续进行100000访问,却出现以了Cannot assign requested address的问题,我起先是以为是redis的问题(可能承受不了这 ...

  4. jquery根据html()的内容来选择

    <ul><li>First</li><li>http://www.hfxskyyj.com/</li></ul> 如上,如何选中 ...

  5. 17 SUMIF函数、countif函数、averagif函数

    情景 按买家求他们的消费各是多少. 可以考虑使用分类汇总来做,但这里我们使用函数sumif来做. SUMIF函数 格式:=SUMIF(条件列表,匹配条件,数据区) 该函数这样理解:按照匹配条件,从条件 ...

  6. 深夜扒一扒Android的发展史

    说道,Android的发展史,我们就不得不先来了解一下手机的发展史 Android之前的时代 1831年英国的法拉第发现了电磁感应现象,麦克斯韦进一步用数学公式阐述了法拉第等人的研究成果,并把电磁感应 ...

  7. echarts饼状图位置设置

    series: { name: "流量占比分布", type: "pie", radius: ["40%", "60%" ...

  8. Springboot入门及配置文件介绍(内置属性、自定义属性、属性封装类)

    目的: 1.Springboot入门 SpringBoot是什么? 使用Idea配置SpringBoo使用t项目 测试案例 2.Springboot配置文件介绍 内置属性 自定义属性 属性封装类 Sp ...

  9. Shiro简介、入门案例、web容器的集成

    目的: shiro简介 Shiro入门案例 Shiro与web容器的集成 shiro简介(中文官网:https://www.w3cschool.cn/shiro/andc1if0.html) 1.什么 ...

  10. babel tsc webpack

    我要用啥?js的话:babel编译+webpack模块打包ts的话:tsc编译成js+babel编译+webpack模块打包浏览器情况:如果您的浏览器支持es6所有语法那么就可以只用webpack来处 ...