Compartir a través de


Interoperabilidad WIA de 32 y 64 bits

En los sistemas que ejecutan Windows 64-Bit Edition para procesadores extendidos, todos los componentes de WIA son de 64 bits, por lo que la infraestructura WIA se cambió para permitir la interoperabilidad entre estos controladores de 64 bits y las aplicaciones de 32 bits existentes.

En las ediciones de 64 bits del sistema operativo Windows, el minidriver WIA de 64 bits se carga en el proceso de 64 bits del servicio WIA. Sin embargo, las extensiones de interfaz de usuario de minidriver wia se cargan en el espacio de proceso de la aplicación. Un proceso de 32 bits sin modificar de una aplicación De Microsoft Win32 que se ejecuta en una máquina basada en x64 no podría cargar la extensión de interfaz de usuario de 64 bits.

Para mitigar el problema de 32 a 64 bits, Microsoft proporciona un host de extensión de 64 bits, wiawow64.exe. Este host garantiza una interoperabilidad transparente entre aplicaciones de 32 bits y extensiones de interfaz de usuario wiA de 64 bits. El host de extensión wiawow64.exe estará disponible en Windows Server 2003 edición de 64 bits para procesadores extendidos, Windows XP 64 bits Edition para procesadores extendidos, Windows Vista y versiones posteriores del sistema operativo.

El servicio WIA determinará dónde se cargan físicamente las extensiones de interfaz de usuario, en función de si la aplicación es de 64 o 32 bits:

  • Aplicación de 64 bits. La extensión de interfaz de usuario de minidriver WIA de 64 bits se carga directamente en el espacio de proceso de la aplicación. Esto es similar a lo que sucede cuando se ejecuta una aplicación de 32 bits en versiones de 32 bits del sistema operativo Windows.

  • Aplicación de 32 bits. WIA inicia el host de extensión wiawow64.exe en el que se cargarán las extensiones de interfaz de usuario. Se crea una instancia independiente de wiawow64.exe y se inicia cada vez que una llamada a cualquiera de los métodos de interfaz procede de una aplicación de 32 bits. El host dewiawow64.exe se ejecuta en el mismo contexto que la aplicación y se comunica con la aplicación a través de las interfaces COM existentes.

Aunque wiawow64.exe es completamente transparente tanto para los escritores de aplicaciones wia como para los desarrolladores de controladores de WIA, los desarrolladores de controladores tienen que depurar el proceso dewiawow64.exe en lugar de la aplicación de 32 bits para depurar extensiones de interfaz de usuario de 64 bits.