我有一个使用 DevExpress 8.3 (2008.3) 的项目,我最近才将其升级为使用 VS 2010。这样做之后,一切都编译得很好,但我在尝试使用设计器时遇到了错误。我按照这里的描述解决了这个问题:
NetFx40_LegacySecurityPolicy in design-time mode
通过添加 <NetFx40_LegacySecurityPolicy enabled="true"/>
到我的 devenv.exe.config。
Designer 现在工作正常,但解决方案中具有 COM 引用的一些项目不再编译,但异常(exception)情况:
无法从“Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”实例化“ResolveComReference”任务。 AppDomain 的安全状态由配置有 NoSecurityChanges 标志的 AppDomainManager 修改。
这些项目的 COM 引用也标有黄色感叹号。
我为这个错误找到的唯一谷歌结果在这里:
http://social.msdn.microsoft.com/Forums/en/vsx/thread/197b8dca-5610-4ac5-86fc-c56d5182e46b
它描述了完全相同的问题,但没有解决方案。我尝试添加
<GenerateResourceNeverLockTypeAssemblies>true<GenerateResourceNeverLockTypeAssemblies>
正如帖子所暗示的那样,但这对我没有任何影响。
有人知道这是什么一回事吗?
谢谢。
最佳答案
我登录到我的 DX 帐户并发现(令我惊讶)DX 为我提供升级到相同 2008.3 版本的新修补程序版本(即使我的订阅已过期)。这解决了问题(并让我根本不必使用旧版安全策略)。
关于visual-studio-2010 - Visual Studio 2010 和 COM 引用中的旧安全策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3697421/