Почему компиляция как Any CPU производит x86 exe? - PullRequest
0 голосов
/ 24 января 2019

Я пытаюсь скомпилировать программу на C # как Any CPU в режиме выпуска. Я ожидаю, что создаваемый exe-файл будет иметь архитектуру процессора MSIL из-за параметра Any CPU. Однако вместо этого он выводит x86 (я проверяю с помощью браузера сборки dotPeek, чтобы проверить).

Если я укажу, что это программа x64, я получу программу x64. Аналогично, когда я указываю x86.

Я должен получить архитектуру процессора MSIL из-за любого процессора, верно? Почему этого не происходит?

1 Ответ

0 голосов
/ 24 января 2019

Вам также необходимо снять отметку Prefer 32-bit

Properties -> Build -> Prefer 32-bit

Это немного устарело, но все еще актуально

Что на самом деле означает AnyCPU, начиная с .NET 4.5 и Visual Studio 11

Тогда разница между «Любой 32-битный процессор» и «x86» только это: .NET-приложение, скомпилированное для x86, не сможет работать на Система Windows ARM, но приложение «Любой 32-битный процессор» запустить успешно.

...