Как правило, 32-битные приложения будут работать под 64-битной Windows (технически это называется WOW64 - Windows On Windows). Это относится ко всем 64-битным версиям Windows на сегодняшний день, включая Server.
Процессы WOW64 помечены в диспетчере задач с помощью * 32, например: chrome.exe * 32. В обозревателе процессов Sysinternals есть отдельный столбец для этого: Тип изображения (64 против 32-разрядных).
Если в приложении есть компоненты, размещенные в других процессах, то эти компоненты должны поддерживать процессы, в которых они размещены. Примеры:
- Расширения оболочки размещаются в explorer.exe, разрядность которого соответствует разрядности ОС. Следовательно, вы должны скомпилировать расширение как в 32-, так и в 64-битном формате и зарегистрировать расширение, соответствующее разрядности ОС, во время установки.
- Драйвер режима ядра размещается в ядре, разрядность которого также соответствует разрядности ОС. Итак, вышеизложенное относится.
- Winsock LSP (многоуровневые поставщики услуг) размещаются во всех процессах, как 64-битных (собственных), так и 32-битных (WOW64). Поэтому вы должны скомпилировать LSP как в 32-, так и в 64-битном режиме и зарегистрировать оба в соответствующих каталогах во время установки.
Существуют также соображения относительно перенаправления файлов (System32 / SysWOW64 / SysNative) и перенаправления реестра (Wow6432Node), которые я не буду рассматривать.