32- и 64-разрядное взаимодействие WIA
В системах под управлением 64-разрядного выпуска Windows для расширенных процессоров все компоненты WIA являются 64-разрядными, поэтому инфраструктура WIA была изменена для обеспечения взаимодействия между этими 64-разрядными драйверами и существующими 32-разрядными приложениями.
В 64-разрядных выпусках операционной системы Windows 64-разрядный мини-накопитель WIA загружается в 64-разрядный процесс службы WIA. Однако расширения пользовательского интерфейса minidriver WIA загружаются в пространство процессов приложения. 32-разрядный процесс неизмененных приложений Microsoft Win32, который выполняется на 64-разрядном компьютере, не сможет загрузить 64-разрядное расширение пользовательского интерфейса.
Чтобы устранить проблему с 32-разрядной или 64-разрядной версией, корпорация Майкрософт предоставляет 64-разрядный узел расширения wiawow64.exe. Этот узел обеспечивает прозрачное взаимодействие между 32-разрядными приложениями и 64-разрядными расширениями пользовательского интерфейса WIA. Узел расширения wiawow64.exe будет доступен в 64-разрядной версии Windows Server 2003 для расширенных процессоров, 64-разрядной версии Windows XP для расширенных процессоров, Windows Vista и более поздних версиях операционной системы.
Служба WIA определяет, где физически загружаются расширения пользовательского интерфейса в зависимости от того, является ли приложение 64-разрядным или 32-разрядным:
64-разрядное приложение. 64-разрядное расширение пользовательского интерфейса minidriver WIA загружается непосредственно в пространство процессов приложения. Это похоже на то, что происходит при запуске 32-разрядного приложения в 32-разрядных версиях операционной системы Windows.
32-разрядное приложение. WIA запускает узел расширения wiawow64.exe , в который будут загружаться расширения пользовательского интерфейса. Отдельный экземпляр wiawow64.exe создается и запускается при каждом вызове любого из методов интерфейса из 32-разрядного приложения. Узел wiawow64.exe работает в том же контексте, что и приложение, и взаимодействует с приложением через существующие COM-интерфейсы.
Несмотря на то , чтоwiawow64.exe полностью прозрачны как для разработчиков приложений WIA, так и для разработчиков драйверов WIA, разработчикам драйверов приходится отлаживать процессwiawow64.exe , а не 32-разрядное приложение для отладки 64-разрядных расширений пользовательского интерфейса.