【发布时间】:2011-06-07 09:19:00
【问题描述】:
在 Visual Studio 2010 下,我在为项目生成本地化附属程序集时收到编译器警告。我正在运行 Windows 7 64 位。
该项目是在 x86 中构建的(它必须是间接引用非托管 DLL - 通过 Oracle ODP.NET)。
MSBuild 日志生成以下警告:
(生成卫星组件目标)->
ALINK:警告 AL1073:引用的程序集“mscorlib.dll”针对不同的处理器 [xxx.csproj]
有没有办法强制它使用与生成它的程序集相同版本的框架?
这非常令人沮丧,因为我喜欢在我们的构建中出现零警告,而且这总是存在的。
【问题讨论】:
-
您是否尝试使用 x86 版本的 MSBuild,即位于 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319 而不是 C:\WINDOWS\Microsoft.NET\ Framework64\v4.0.30319?
-
不,我没有。我将尝试强制 TFS 使用 x86 平台。但是我怎样才能使用我的 Visual Studio 解决这个问题,因为我在那里也遇到了这个错误......
-
您可以检查解决方案中的 References 节点,检查 System.dll 的属性,路径应为 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\。 .. 对于 x86 和 C:\Program Files\Reference Assemblies\Microsoft\Framework\... 对于 x64。希望这会给你一个线索。
-
是的,这似乎已经解决了 TFS 中的问题......但在 VS2010 中没有。
-
但我不应该为不同配置的核心库添加不同的程序集引用吗?
标签: c# .net localization compiler-warnings satellite-assembly