让FileDisassembler支持VS 2008
昨天顺便就去下载了 FileDisassembler 的源代码,想看看能不能把它修正下,以支持VS2008.
1.修改resx的路径,这个简单,在生成resx文件时候,把生成的filename做一下修改就成.
2.打开项目发现,转换的resx还是没有和对应的cs关联.怎么回事呢.发现里面的CSharpProject.xml的版本是 ProductVersion = "7.10.3077",而在生成资源文件的时候DependentUpon = "VSDisassemblerControl.cs"却没有了.做了个试验,手动打开项目文件,加上这句转换成vs2008后,还是没法对应起来.看来是整个项目文件格式就不一样了,于是对VS2008的csproj文件研究了下,决定把它生成的直接转换到2008的格式上来.
XML还是不熟,做起来不是很顺,特别是在加Node后自己生成了xmlns=""这个属性,让我郁闷了好久,最后找到了对应的文章才搞定.
3.关于System.Windows.Form空间的问题.由于FileDisassembler也是调用Reflector的方法直接写入的,就没法判断什么控件是对应空间的了,于是就没修改.
4..Net版本,本来应该可以找到Reflector使用的版本号的,但是好像直接用默认的3.5去打开项目也没问题,就不改项目文件的值了.
有兴趣用的,下载试试看,如果有问题,就告诉我下,谢谢先!
Dll:
(Imparser Fixed)FileDisassembler.rar
Source:
(Imparser Fixed)FileDisassemblerSources.rar
下面是解决xmlns问题的出处:
Create一个新节点,居然多出了xmlns="", 折腾了半天终于找到解决方法,如下: 原因是所要插入的节点的父节点中定义了命名空间xmlns, 当节点插入时必须定义命名空间属性,而且要 与其父节点的xmlns相同。 xml文件: <?xml version="1.0" encoding="UTF-8"?> 在父节点<rtx>中添加<error>节点 结果: <?xml version="1.0" encoding="UTF-8"?>
搞定!没有了吧 只要用心,没有什么做不道 |