Цитата diakov:
ExecWait "rundll32.exe SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 $INSTDIR\DFX\Universal\Drivers\dfx11_0.inf" »
|
Касательно этой команды, можно попробовать указать путь $SYSDIR\RUNDLL32.EXE
Касательно конкретно установки Dfx драйвера - эта команда вряд ли его установит...
В дистрибутив не даром входят DevCon компоненты (ptdevcon32.exe и ptdevcon64.exe) а также похоже, что и сам установщик DfxSetupDrv.exe. Как всё это действует, знают только разрабы...
Можно конечно взять за основу "классический" DevCon
http://support.microsoft.com/kb/311272
Или DPInst -
http://msdn.microsoft.com/en-us/library/ff544775.aspx. Только сработает ли... Попробуй.
Также похоже, что учитывается и архитектура процессоров ( amd64 и x86-64), что требует соответствующего выбора при установке драйверов. Это можно определять кодом :
Код:
Section
System::Alloc 32
Pop $0
System::Call "Kernel32::GetNativeSystemInfo(i) v (r0)"
System::Call "*$0(&i2 .r1)"
System::Free $0
StrCmp $1 9 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_AMD64
StrCmp $1 6 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_IA64
StrCmp $1 0 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_INTEL
StrCmp $1 0xffff 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_UNKNOWN
SectionEnd
Вообще установка из NSIS "не типовых" драйверов - дело скользское... А для классической установки драйверов, давно назрела пора в плагине. Тот что имеется (
http://nsis.sourceforge.net/InstDrv_plug-in), уж очень дремучий и не универсальный... По сути не рабочий...