Выполнение 32-разрядных приложений

WOW64 — это эмулятор x86, позволяющий легко работать с 32-разрядными приложениями на базе Windows в 64-разрядной версии Windows. Это позволяет легко работать с 32-разрядными (x86) приложениями Windows в 64-разрядных (x64) окнах, а также в случае с 32-разрядными (x86) и 32-разрядными (ARM) приложениями Windows для беспрепятственного выполнения в 64-разрядных (ARM64) окнах. WOW64 поставляется с операционной системой и не обязательно должен быть явно включен. Дополнительные сведения см. в разделе сведения о реализации WOW64.

Система изолирует 32-разрядные приложения от 64-разрядных приложений, что включает в себя предотвращение конфликтов файлов и реестра. Поддерживаются консоль, графический пользовательский интерфейс и приложения службы. Система обеспечивает взаимодействие на границе 32/64 для таких сценариев, как вырезание и вставка и COM. Однако 32-разрядные процессы не могут загружать 64-разрядные библиотеки DLL для выполнения, а 64-разрядные процессы не могут загружать 32-разрядные библиотеки DLL для выполнения. Это ограничение не применяется к DLL, загруженным в виде файлов данных или файлов ресурсов образа. Дополнительные сведения см. в разделе LoadLibraryEx.

32-разрядное приложение может определить, выполняется ли оно в эмуляторе WOW64, вызвав функцию IsWow64Process (используйте IsWow64Process2 при нацеливании на Windows 10). Приложение может получить дополнительные сведения о процессоре с помощью функции жетнативесистеминфо .

Обратите внимание, что 64-разрядная версия Windows не поддерживает выполнение 16-разрядных приложений на основе Windows. Основная причина заключается в том, что дескрипторы имеют 32 значащих бит на 64-разрядной версии Windows. Поэтому дескрипторы не могут быть усечены и переданы в 16-разрядные приложения без потери данных. Попытки запуска 16-разрядных приложений завершаются следующей ошибкой: Ошибка _ неправильный _ _ Формат exe.

В этом разделе