Exécution d’applications 32 bits

WOW64 est l’émulateur x86 qui permet aux applications Windows 32 bits de s’exécuter en toute transparence sur Windows 64 bits. Cela permet aux applications Windows 32 bits (x86) de s’exécuter en toute transparence dans Windows 64 bits (x64), ainsi que dans les applications Windows 32 bits (x86) et 32 bits (ARM) pour s’exécuter en toute transparence dans les windows 64 bits (ARM64). WOW64 est fourni avec le système d’exploitation et ne doit pas être activé explicitement. Pour plus d’informations, consultez Détails de l’implémentation WOW64.

Le système isole les applications 32 bits des applications 64 bits, ce qui inclut la prévention des collisions de fichiers et de registre. Les applications de console, d’interface graphique graphique et de service sont prises en charge. Le système fournit une interopérabilité au-delà de la limite de 32/64 pour des scénarios tels que couper et coller et COM. Toutefois, les processus 32 bits ne peuvent pas charger des DLL 64 bits pour l’exécution, et les processus 64 bits ne peuvent pas charger les DLL 32 bits pour l’exécution. Cette restriction ne s’applique pas aux DLL chargées en tant que fichiers de données ou fichiers de ressources d’image ; Pour plus d’informations, consultez LoadLibraryEx.

Une application 32 bits peut détecter si elle s’exécute sous WOW64 en appelant la fonction IsWow64Process (utilisez IsWow64Process2 si vous ciblez Windows 10). L’application peut obtenir des informations supplémentaires sur le processeur à l’aide de la fonction GetNativeSystemInfo .

Notez que Windows 64 bits ne prend pas en charge l’exécution d’applications Windows 16 bits. La raison principale est que les handles ont 32 bits significatifs sur Windows 64 bits. Par conséquent, les handles ne peuvent pas être tronqués et passés à des applications 16 bits sans perte de données. Les tentatives de lancement d’applications 16 bits échouent avec l’erreur suivante : ERROR_BAD_EXE_FORMAT.

Dans cette section