WOW64 is the x86 emulator that allows 32-bit Windows-based applications to run seamlessly on 64-bit
Windows. WOW64 is provided with the operating system and does not have to be explicitly enabled. For more information, see WOW64 Implementation Details.
The system isolates 32-bit applications from 64-bit
applications, which includes preventing file and registry collisions. Console, GUI, and service applications are
supported. The system provides interoperability across the 32/64 boundary for scenarios such as cut and paste and
COM. However, 32-bit processes cannot load 64-bit DLLs for execution, and 64-bit processes cannot load 32-bit DLLs for execution. This restriction does not apply to DLLs loaded as data files or image resource files; for more information, see LoadLibraryEx.
A 32-bit application can detect whether it is running under WOW64 by calling the
IsWow64Process function. The application can obtain
additional information about the processor by using the
GetNativeSystemInfo function.
Note that 64-bit Windows does not support running 16-bit Windows-based applications. The primary reason is that
handles have 32 significant bits on 64-bit Windows. Therefore, handles cannot be truncated and passed to 16-bit
applications without loss of data. Attempts to launch 16-bit applications fail with the following error:
ERROR_BAD_EXE_FORMAT.
In this Section
Send comments about this topic to Microsoft
Build date: 7/2/2009