我已经开始测试VS11测试版的海洋2011插件。它似乎工作得很好,而且有足够的优势,我正在考虑将它用于日常工作。(当然,在斯伦贝谢推荐之前,我们不会用VS11构建产品。)
然而,有一个阻碍问题:
依赖于InventorNet.dll的项目无法构建,其中包含以下消息:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1546,5):警告MSB3270:正在构建的项目的处理器体系结构与引用"InventorNet“、"AMD64”的处理器体系结构不匹配。这种不匹配可能导致运行时失败。请考虑通过Configuration更改项目的目标处理器体系结构,以便在项目和引用之间对处理器体系结构进行调整,或者使用与项目目标处理器体系结构相匹配的处理器体系结构来依赖引用。
CSC :致命错误CS0008:从文件c:\Program\Schlumberger\Petrel 2011\InventorNet.dll读取元数据时出现意外错误--“索引未找到”*。
我认为第一个警告是无害的,因为类似的警告是从其他依赖项发出的,但是我无法通过错误消息(粗体)。两者都可能源于MSBuild使用的MSBuild 4.5 (也在beta版)中更严格的程序集验证。我们的项目目标是.NET 3.5。
是否有人知道错误是否可以通过某些设置或其他技巧来修复,或者我们是否需要斯伦贝谢更新的程序集?( Google搜索产生了一些与VS2010相关的类似案例,并表明程序集提供程序确实需要重新构建程序集以纠正问题。)
或者,是否有人能指出2012年海洋是否会解决这一问题?
发布于 2012-03-12 08:02:41
我只是简单地用OIV 9.0.0.0测试petre/ test 2012 D9快照版本(对于2011年,它是8.1.2.2),它看起来很好(在visual 2011中通过了带有一些警告的建筑物,在Petrel 2012 D9中运行OK )。
邓峰
发布于 2012-03-12 09:07:39
在VS11beta中,几乎可以对2012年海洋发出警告:如果您的解决方案有“任何CPU”目标并基于Petrel 64 (因为Inventor的DLL依赖于CPU ),则可能是"CPU错配“警告。如果您为项目选择64位CPU目标,则不会发出警告。亚历克斯
发布于 2012-06-06 11:50:23
第一个警告可以通过向.csproj文件中添加以下字符串来消除:
<PlatformTarget Condition=" '$(PlatformTarget)' == '' ">x86</PlatformTarget>我在节点后面添加了它
https://stackoverflow.com/questions/9598517
复制相似问题