При установке INF через установщик файл копируется в SysWOW64 вместо System32
У нас есть INF-файл, который устанавливает один файл.sys в папку драйверов Windows. Сценарий выглядит следующим образом:
1) Установка INF из проводника. Щелкните правой кнопкой мыши по файлу INF и выберите "Установить". В этом случае файл.sys получает копию в папке Windows\System32\drivers.
2) Создано консольное приложение для установки с использованием RunDll32 / CMD под объектом процесса и установки файла INF. В этом случае файл.sys получает копию в папке Windows\System32\drivers.
3) Создана программа установки x86, имеющая класс установщика для установки с использованием RunDll32 / CMD под объектом процесса и установки файла INF. В этом случае файл.sys получает копию в Windows\SysWOW64\drivers.
Наша цель - скопировать файл.sys в папку Windows\System32\drivers независимо от того, работают ли такие операционные системы 32/64 битных окон как WinXP, Windows7, Windiows 8/8.1/10.
1 ответ
Установщик Windows (MSI) устанавливает настаивать на установке 32-разрядных компонентов в установке x86 в 32-разрядных местах. Попытки направить 32-разрядные файлы в 64-разрядные расположения приведут к перенаправлению. 64-разрядная установка может установить оба.
Различные MSI требуются для разных архитектур:
и, в частности, смотрите журнал WIN64DUALFOLDERS и сопутствующие замечания.