2012-03-07 95 views
1

我已经开始测试构建Ocean 2011插件的VS11测试版。它似乎工作得很好,并且有足够的优势,我正在考虑将它用于日常工作。 (我们当然会,不使生产与建立斯伦贝谢VS11推荐它。)使用Visual Studio 11 Beta构建Ocean 2011插件 - InventorNet.dll问题

然而,有一个阻塞问题:

依赖于InventorNet.dll

项目失败打造,具有以下消息:

C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets(1546,5):警告MSB3270:正在构建的项目的处理器体系结构之间存在不匹配“MSIL “以及参考”InventorNet“,”AMD64“的处理器架构。这种不匹配可能会导致运行时失败。请考虑通过Configuration Manager更改项目的目标处理器体系结构,以便在项目和引用之间调整处理器体系结构,或者使用与项目的目标处理器体系结构相匹配的处理器体系结构来依赖引用。

CSC:致命错误CS0008:从文件意外的错误读取元数据 'C:\ Program Files文件\斯伦贝谢\海燕2011 \ InventorNet.dll' - '没有找到索引' *

认为第一个警告是无害的,因为类似的警告是从其他依赖项发出的,但我无法越过错误消息(粗体)。两者都可能起源于MSBuild使用的.NET 4.5(也在测试版)中的更严格的汇编验证。我们的项目针对.NET 3.5。

有谁知道错误是否可以用某些设置或其他技巧修复,还是需要更新斯伦贝谢的程序集? (谷歌搜索会产生一些与VS2010有关的类似案例,并指出程序集提供者确实需要重新构建程序集以纠正问题。)

或者,有人可以指出问题是否可以通过2012年海洋?

+0

后,你有没有试着用你的组件针对64位? – Eric 2012-03-07 09:29:11

+0

是的 - 我已经试过。 – 2012-03-07 10:16:53

回答

2

我只是简单地测试你的案例petre /海洋2012 D9快照版本与OIV 9.0.0.0(2011年,它是8.1.2.2),它似乎可以正常工作(通过建设与视觉工作室2011年的一些警告,并在海燕2012 D9)OK运行

邓锋

1

只是在VS11beta 2012年海洋警告:它可以是“CPU不匹配”警告,如果您的解决方案具有“任何CPU”的目标,并基于顶部Petrel 64(因为Inventor的DLL依赖于CPU)。如果您为您的项目选择64位CPU目标,则不会有任何警告。 亚历

0

第一个警告,可以通过添加以下字符串添加到.csproj的文件淘汰:

<PlatformTarget Condition=" '$(PlatformTarget)' == '' ">x86</PlatformTarget> 

我说这里面的节点,节点