Я построил службу Windows как "Любой процессор". Однако, когда я запускаю его на своей 64-битной машине, он работает в 32 бит. Как я могу это исправить? Я использую .NET и С#, а моей операционной системой является Windows 2008 R2.
Если я построю его в x64, он правильно загрузится в режиме 64 бит. Однако "Any Cpu" - то, что я хочу - загружается в 32 бит, хотя машина, на которой он работает, отлично поддерживает 64-разрядную версию.
РЕДАКТИРОВАТЬ, чтобы добавить дополнительную информацию на основе обратной связи
У нас есть сторонние инструменты, а также ссылка на управляемую сборку С++. Они могут или не могут быть построены для любого CPU. На самом деле я знаю, что управляемая сборка С++ построена только для x86. Тем не менее, странно, что если я конкретно укажу x64, процесс запустится и будет работать в x64. Если инфраструктура должна была попытаться загрузить управляемую сборку С++, она потерпит неудачу. Я не против этого, потому что в коде мы не загружаем 32-битную управляемую сборку ++, если мы работаем в режиме 64 бит. Может ли быть так, что строит цифра, что, поскольку здесь есть 32-битная сборка, она должна отметить процесс запуска (в данном случае сборку служб Windows) как x86?