首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用.Net 8/ VS2012时目标Windows4.0

使用.Net 8/ VS2012时目标Windows4.0
EN

Stack Overflow用户
提问于 2013-05-18 11:39:59
回答 2查看 1.2K关注 0票数 1

我有一些问题,建立一个合并的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

这意味着我在合并期间使用了以下语法:

代码语言:javascript
复制
/targetplatform:"v4,C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"

不幸的是,在windows 8中,我没有这个目录。我可以想到以下可能的解决方案,但有兴趣知道是否有人已经解决了这个问题。

  1. 手动将.net 4.0程序集从windows 7计算机复制到上面的目录中。
  2. 查找VS2012正在使用的VS2012 4.0程序集并引用这些程序集。
  3. ??
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-18 12:33:12

非常感谢您的评论和反馈。一种可行的解决办法是做以下工作:

  1. 在windows 8,C:\Program Files\Reference Assemblies\Microsoft\Framework\v4.0上创建一个新目录。
  2. 转到没有安装.net4.5的windows 7计算机,并复制文件夹C:\Windows\Microsoft.NET\Framework\v4.0.30319的内容。
  3. 将步骤2中的文件粘贴到步骤1中创建的文件夹中。

然后,我能够使用以下方法正确引用Windows8中的.net4.0程序集:

代码语言:javascript
复制
/targetplatform:"v4,C:\Program Files\Reference Assemblies\Microsoft\Framework\v4.0"

测试是否正常。

票数 1
EN

Stack Overflow用户

发布于 2013-05-18 11:53:09

我也在使用Windows 8和VS 2012,但还没有遇到这个问题(当然,其他一些人也很好)。很简单,您可能已经安装了v3.5或v4.5,这意味着您需要安装v4.0框架(.如果你已经试过的话)。

我还发现你给我的文件夹路径并没有带我在PC上的任何地方,但是这个路径是这样做的;

代码语言:javascript
复制
C:\Program Files\Reference Assemblies\Microsoft\Framework\

你能在你的电脑上尝试这个路径吗,看看那里是否有一个v4.0文件夹。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16623853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档