Я специально пытаюсь установить драйвер фильтра файловой системы на x64 из установщика NSIS, используя INF-файл.
На 32 битах я могу довольно счастливо позвонить:
ExecWait '$SYSDIR\RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 $INSTDIR\<myinf>.inf'
Но ... на x64, даже если перенаправление файлов отключено с помощью $ {DisableX64FSRedirection}, оно все равно делает WOW64 ...
Я обнаружил, что для правильной работы RUNDLL32.EXE на x64 из NSIS необходимо также установить представление реестра на 64:
${If} ${RunningX64}
${DisableX64FSRedirection}
SetRegView 64
${EndIf}
ExecWait '$SYSDIR\RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 $INSTDIR\<myinf>.inf'