Какая разница между разными Build Configuration settings
, например. Любой процессор, смешанная платформа, WIN32 и т.д. в Visual Studio.
Конфигурация сборки: смешанная платформа VS Любой процессор
Ответ 1
Вот ссылка, которая помогает объяснить настройки конфигурации сборки, найденные в Visual Studio и ее файлах сборки:
В основном параметр указывает, на какой платформе может работать сборка. Когда выбран AnyCPU, результирующая DLL помечается как способная работать где угодно; при выборе x86 результирующая DLL помечается как работающая только на 32-разрядных системах и не будет работать в 64-разрядных приложениях или процессах (но будет работать в 64-разрядной среде Windows;) и так далее, и так далее.
Это только устанавливает флаги для скомпилированной DLL - это не меняет другие аспекты процесса компиляции вообще.
Ответ 2
Как уже объяснялась другая платформа. (то есть X86 для 32 бит, x64 предназначен только для 64 бит, а "Любой процессор" может работать в обоих). Я сосредоточусь на Mixed Platform
и как это отличается от Any CPU
.
Any CPU
находится на уровне проектного уровня, где, как и в реальном мире, у нас есть несколько проектов в рамках одного решения, и их шансы на то, что некоторые из моих проектов используют Any CPU
, но другие используют x86
или x64
.
Таким образом, на уровне решения будет выбрано автоматически Mixed Platform
. это означает, что во время сборки/перестройки решение каждого проекта строится на основе выбранной платформы.
Ответ 3
Имена компоновки сборки не имеют большого значения - они расширяются, если у вас есть проекты на С++ и С# в одном и том же решении (и еще хуже, если у вас есть мобильные проекты тоже), потому что различные типы проектов используют разные имена конфигураций, так что вы в конечном итоге с большим количеством из них.
Мы стараемся удалять все конфигурации, которые мы не используем, но такая трудная работа иногда так же часто, когда вы добавляете новый проект, нежелательные конфигурации будут добавлены обратно в решение.
Мои рекомендации - решить, какие конфигурации вам нужны (просмотрев фактические настройки внутри них), а затем удалить все остальное.
Ответ 4
От: этот пост. https://social.msdn.microsoft.com/forums/vstudio/en-US/81c72e8b-6335-4bf4-b7c0-b5c322edcaee/mixed-platforms-vs-any-cpu
Когда все проекты в решении имеют один и тот же тип (например, С#/VB) конфигурации решений будут точно совпадать с конфигурации проекта. Когда у вас есть проекты в решении, которое имеют несогласованные конфигурации/платформы, Visual Studio создает конфигурации уровня решения "Смешанные платформы/отладка" и, возможно, "Смешанные платформы/релиз". Эти конфигурации являются просто сопоставлениями для индивидуальные конфигурации уровня проекта.
Например, если у вас есть проект С# и проект на С++, "Смешанные платформы/отладка" отобразится в "Любой процессор/отладка" для проекта С# и "Win32/Debug" для проекта С++.