Проблема:
Я унаследовал решение, в котором есть 4 части. Две из этих частей — проекты C#, используемые для работы с базами данных. Там достаточно легко. Две другие части — это веб-сайты. Прямо сейчас в Configuration Manager все настроено на использование AnyCpu. Что мне нужно сделать, так это изменить веб-сайты на x86 по этой конкретной причине:
Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"Software\<My Company>\<My Application>", false);
Примечание. Внутри знаков ‹> это не буквально Моя компания. Я просто имею в виду название моей компании.
Проведя некоторые исследования, я узнал следующее:
- .NET app compiled for "x86":
- Always 32-bit
- На 32-битных платформах обращается к 32-битному реестру.
- На 64-битных платформах обращается к 32-битному реестру (внутри Wow6432Node)
- .NET app compiled for "x64":
- Always 64 bit
- На 32-битных платформах не запускается
- На 64-битных платформах обращается к 64-битному реестру (не внутри Wow6432Node).
- .NET app compiled for "AnyCpu"
- Either 32 or 64 bit depending on platform
- На 32-битных платформах обращается к 32-битному реестру.
- На 64-битных платформах обращается к 64-битному реестру (не внутри Wow6432Node).
Итак, что мне НУЖНО, так это иметь возможность компилировать для x86, поскольку приложение установлено как 32-разрядное и будет отображаться в папке Wow6432Node в 64-разрядных ОС.
Мой вопрос:
Можно ли изменить целевую платформу веб-сайта после его первоначальной настройки?
Что я пробовал:
- Внутри VS 2010 перейдите в «Сборка» -> «Диспетчер конфигураций».
- Под платформой активного решения: выберите «Создать...».
- Добавьте платформу x86.
- Попытка изменить два моих веб-сайта на x86.
Шаг 4, где он терпит неудачу. х86 не вариант. Он прекрасно отображается для двух моих проектов на С#. Возможно ли это изменить?
Любая помощь или понимание очень ценятся!