Предупреждение AL1073 при создании вспомогательных сборок

В Visual Studio 2010 я получаю предупреждение компилятора при создании локализованной вспомогательной сборки для проекта. Я использую Windows 7 64-бит.

Проект создается в x86 (должно быть, так как он косвенно ссылается на неуправляемую DLL - через Oracle ODP.NET).

В журнале MSBuild создается следующее предупреждение:

(Цель GenerateSatelliteAssemblies) ->

ALINK: предупреждение AL1073: Ссылочная сборка «mscorlib.dll» нацелена на другой процессор [xxx.csproj]

Есть ли способ заставить это использовать ту же версию фреймворка, что и сборка, из которой она создается?

Это очень расстраивает, так как мне нравится, чтобы в нашей сборке не было предупреждений, а это всегда есть.


person Stephen Drew    schedule 07.06.2011    source источник
comment
Вы пытались использовать версию MSBuild x86, которая находится в C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319, а не в C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319?   -  person Igor Korkhov    schedule 07.06.2011
comment
Нет, я этого не сделал. Я попытаюсь заставить TFS использовать платформу x86. Но как я могу решить это с помощью моей Visual Studio, так как я также получаю эту ошибку....   -  person Stephen Drew    schedule 07.06.2011
comment
Вы можете проверить узел References в своем решении, проверить свойства, скажем, System.dll, путь должен быть C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\... для x86 и C:\ Program Files\Reference Assemblies\Microsoft\Framework\... для x64. Надеюсь, это даст вам подсказку.   -  person Igor Korkhov    schedule 07.06.2011
comment
Да, похоже, это решило проблему в TFS... но не в VS2010.   -  person Stephen Drew    schedule 07.06.2011
comment
Но мне не нужно добавлять разные ссылки на сборки для основных библиотек в разных конфигурациях, не так ли?   -  person Stephen Drew    schedule 08.06.2011
comment
Возможно, вы не должны, но я просто не знаю, как сказать VS ссылаться на соответствующие версии основных библиотек в зависимости от активной платформы при создании вспомогательных сборок.   -  person Igor Korkhov    schedule 08.06.2011


Ответы (1)


Я воспроизвел эту ошибку (по ошибке). Мои проекты нацелены на x86 (из-за сторонних библиотек DLL), но я запускал MSBuild в командном окне VSx64 2010. Среди прочего это устанавливает Platform=X64. Когда я запустил его в командном окне VS 2010 (для x86), я не получил этого предупреждения.

person user1078408    schedule 02.12.2011