В 64-битной Windows 32-битные программы выполняются на уровне эмуляции. Этот уровень эмуляции имитирует архитектуру x86, виртуализирует процессор, файловую систему, реестр, переменные среды, функции системной информации и все такое. Если 32-разрядная программа пытается просмотреть систему, она увидит 32-разрядную систему. Например, если программа вызывает функцию GetSystemInfo, чтобы увидеть, какой процессор работает, ей будет сказано, что он работает на 32-разрядном процессоре с 32-разрядным адресным пространством в мире с 32-разрядным небом и 32 птицы в 32-битных деревьях.
И в этом смысл эмуляции: поддерживать 32-битную программу счастливой, имитируя 32-битную среду выполнения.
Комментатор Коро пишет программу установки в форме 32-разрядной программы, которая обнаруживает, что она работает в 64-разрядной системе, и хочет скопировать файлы (и предположительно установить записи реестра и выполнить другие действия по установке) в 64-разрядные каталоги, но слой эмуляции перенаправляет операции в 32-битные местоположения. Вопрос в том, как найти каталог программных файлов x64 из 32-разрядного приложения?
РЕДАКТИРОВАТЬ: ЭТО взято непосредственно из Википедии
32-разрядные приложения, которые включают только 32-разрядные драйверы устройств в режиме ядра или которые подключаются к пространству процессов компонентов, которые реализованы исключительно как 64-разрядные процессы (например, Windows Explorer), не могут выполняться на 64-разрядной платформе. Сервисные приложения поддерживаются. Папка SysWOW64, расположенная в папке Windows на диске ОС, содержит несколько приложений для поддержки 32-разрядных приложений (например, cmd.exe, полезный для регистрации 32-разрядных служб Windows, odbcad32.exe, для регистрации подключений ODBC для 32-разрядных приложений).
Таким образом, ясный ответ на этот вопрос - НЕТ.
(Обычно программное обеспечение поставляется в версиях для 32- и 64-разрядных компьютеров.)