Как заставить TFS 2010 создать веб-сайт с помощью 32-битного компилятора ASPNET на 64-битной машине сборки

У нас есть очень большой продукт, который отлично компилируется на наших 32-битных контроллерах сборки и в основном на наших 64-битных контроллерах сборки, за одним исключением. У нас есть предварительно скомпилированный интерфейс веб-форм. Когда он создается на 64-битной машине, он показывает командную строку в файле журнала * C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_compiler.exe -v / ourwebapp -p .. \ ourwebapp \ -u -f "........ \ Binaries \ Mixed Platforms_PublishedWebsites \ ourwebapp \" * Это вызывает ошибку из-за некоторых 32-разрядных сторонних dll, которые у нас есть: ASPNETCOMPILER: error ASPCONFIG : Не удалось загрузить файл или сборку Leadtools.Codecs или одну из его зависимостей. Была сделана попытка загрузить программу с неверным форматом. [C: \ Builds \ 5 \ OurApp \ OurApp Build \ Sources \ Product \ Solutions \ ourwebapp_ourwebapp.metaproj]

Кто-нибудь знает правильный синтаксис файла решения для принудительной 32-битной сборки независимо. Спасибо.


person Erik Read    schedule 21.07.2011    source источник


Ответы (2)


Отредактируйте определение сборки и выберите эту опцию.

Process Tab-> Advance->MSBuild Platform->X86

Сохраните свою сборку и запустите сборку ...

person Mohammed Jawed    schedule 21.08.2012
comment
Удивительно, но после того, как я попробовал все остальное, это помогло мне. Спасибо. - person dlebech; 01.10.2013
comment
У меня тоже сработало. Отличный материал - person Akin; 20.02.2014

Эрик, если вы отредактируете определение сборки, на вкладке процесса есть возможность установить компиляцию msBuild x86 или x64 или Auto, установка этого значения на x86 заставит сборку выполнять компиляцию в 32-битном режиме.

В поле «Конфигурации для сборки» вы можете указать, какие платформы и конфигурации вы хотите создать. (Чтобы отобразить это поле, разверните узел «Обязательно», а затем разверните узел «Элементы для сборки».) Например, вы можете указать, что эта сборка должна создавать только конфигурацию выпуска 32-разрядной версии вашего проекта C ++, включив Release | x86 в этой коробке. Если оставить поле «Конфигурации для сборки» пустым, будет создана конфигурация и платформа по умолчанию, которые определены в каждом решении или проекте.

Смотрите шаги здесь. http://msdn.microsoft.com/en-us/library/dd647547.aspx

person Tarun Arora    schedule 21.07.2011
comment
Я понимаю, что это «нормальное» решение, но в веб-проекте VS 2010 есть только вариант Отладка / Выпуск + Любая платформа ЦП. Нет x86 / x64 или даже нового варианта. Невозможно указать для веб-сайта, какие платформы должны быть созданы, если я чего-то не упускаю. - person Erik Read; 22.07.2011
comment
- Эрик, вы можете настроить его, щелкнув решение правой кнопкой мыши и выбрав диспетчер конфигурации. - Создайте новую конфигурацию. Затем отредактируйте определение сборки, у вас есть возможность связать решение для сборки, прямо под ним у вас есть возможность для конфигурации для сборки. - person Tarun Arora; 23.07.2011