我有一些问题,建立一个合并的DLL,以.net4.0为目标的windows 8机器。我可以在.net4.0中成功地构建单独的VS2012 dll,这样我就没有这个问题了:
Targeting .NET 4.0 in VS 2012 on Windows 8
我遇到了以下优秀的博客文章,讨论我的问题:
http://www.mattwrock.com/post/2012/02/29/What-you-should-know-about-running-ILMerge-on-Net-45-Beta-assemblies-targeting-Net-40.aspx
还包括:
Could not load type 'System.Runtime.CompilerServices.ExtensionAttribute' from assembly 'mscorlib
这意味着我在合并期间使用了以下语法:
/targetplatform:"v4,C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"不幸的是,在windows 8中,我没有这个目录。我可以想到以下可能的解决方案,但有兴趣知道是否有人已经解决了这个问题。
发布于 2013-05-18 12:33:12
非常感谢您的评论和反馈。一种可行的解决办法是做以下工作:
C:\Program Files\Reference Assemblies\Microsoft\Framework\v4.0上创建一个新目录。C:\Windows\Microsoft.NET\Framework\v4.0.30319的内容。然后,我能够使用以下方法正确引用Windows8中的.net4.0程序集:
/targetplatform:"v4,C:\Program Files\Reference Assemblies\Microsoft\Framework\v4.0"测试是否正常。
发布于 2013-05-18 11:53:09
我也在使用Windows 8和VS 2012,但还没有遇到这个问题(当然,其他一些人也很好)。很简单,您可能已经安装了v3.5或v4.5,这意味着您需要安装v4.0框架(.如果你已经试过的话)。
我还发现你给我的文件夹路径并没有带我在PC上的任何地方,但是这个路径是这样做的;
C:\Program Files\Reference Assemblies\Microsoft\Framework\你能在你的电脑上尝试这个路径吗,看看那里是否有一个v4.0文件夹。
https://stackoverflow.com/questions/16623853
复制相似问题