2017-05-30 88 views
0

后小我其实新反编译&编译的Dll &可执行文件。我最近使用.Net Reflector 9反编译了一个.Net Dll。该Dll的初始大小为245 KB。
然后我准备用他最新版本的MSBuild即14.我没有做,除了在MyProject.csproj即NET的DLL出现编译

<Reference Include="System.Data" /> 
<Reference Include="System.Windows.Forms" /> 
<Reference Include="System" /> 
<Reference Include="Microsoft.VisualBasic" /> 
**<Reference Include="System.xml" />** 

一行中的.cs文件进行任何更改因为它给了重新编译的dll我重复错误

我使用的命令是如下:

MSBuild /p:Configuration=Debug;Platform=x86;Outdir=F:\bin\Release\ F:\MyProject.csproj 

虽然构建成功编译的DLL有一个非常小的尺寸是34 KB的。为什么?有重大遗漏吗?

+0

原始文件可能有符号,源,地图,而新的文件只是有可执行代码。 – jdweng

+0

所以它是.net反射wasnt能够正确反编译DLL或导出的源代码.. – CrazyFirewall

+0

是。反编译可能是正确的,只是没有源码符号(变量名称)是不正确的。 – jdweng

回答

-2

可能是你需要像这样的: <Content Include="System.xml"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> 代替 <Reference Include="System.xml" />

+0

没有人应该永远需要复制的DLL文件反编译.NET Framework到任何地方。 – Nitram

+0

我的意思是的System.Xml不是system.xml.dll的只是XML文件。 –