首页 > Windows开发 > 详细

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

时间:2019-08-29 12:28:05      阅读:88      评论:0      收藏:0      [点我收藏+]

Winform反编译后,如果想要让它象正常的工程一样,可以在窗体编辑器中,编辑,需要做一些工作。

 

1.  转换.resources 为 .resx

利用resgen工具。这个工具是vs自带的。

在启动菜单中,找到:

Command Prompt

然后进入.resources所在目录,比如叫xx.resources

resgen xx.resources xx.resx

 

2.转换之后,与窗体代码,xx.resx 放到一个目录。

这里,VS会很聪明地,显示出xx.cs下面,有一个resx 文件,然后,右键,把 .resx 加入到工程。

 

3. 双击打开,会看到一些错误:

这是因为System.ComponentModel这个库。

窗体设计器,不是一个单独的程序,它需要解析窗体中的代码来执行。我不清楚为什么微软要这么做

解决方法当然很简单:

注掉 这句  using System.ComponentModel; ,然后把所有的出错的地方,前面加上 System.ComponentModel

 

OK了吗?还没有,还有更牛B的错误,

微软的form designer只认误一个变量,叫resources

比方说吧,用Redflector反编译后,这个操作器的名字叫:manager

        private void InitializeComponent()
        {
            ComponentResourceManager manager = new ComponentResourceManager(typeof(ConfirmMsg));

一定要改成

       System.ComponentModel.ComponentResourceManager resources= new System.ComponentModel.ComponentResourceManager....

 

另外,有时这样还不成,一般是System.Windows.Forms库出了问题。

这时就如法炮制,把System.Windows.Forms也注掉。然后所有用到的地方,都加上这个空间。

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

原文:https://www.cnblogs.com/ioter/p/11428897.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!