我正在尝试使用 Inno setup 安装驱动程序,看起来(至少)有两种方法可以做到这一点:将 DPinst.Exe 添加到 .inf 文件或运行 rundll。
我知道 x86 和 x64 有两个不同版本的 DPinst,是否有不同版本取决于操作系统(我需要支持 XP、Vista 和 7)
这些方法需要管理员权限吗?
推荐哪种方法?
最佳答案
您对所有版本的操作系统使用相同的 DPInst 版本;唯一的区别是 32 位与 64 位。 WDK 附带 32 位和 64 位版本。
就个人而言,这就是我所做的(在 InnoSetup 上):
[Files]
...
Source: ...\dpinst32.exe; DestDir: {#DpInstPath}; DestName: dpinst.exe; Check: not IsWin64; Flags: ignoreversion
Source: ...\dpinst64.exe; DestDir: {#DpInstPath}; DestName: dpinst.exe; Check: IsWin64; Flags: ignoreversion
使用
run32dll setupapi.dll,InstallHinfSection ...
已过时,除非您有一些非常具体的需求,否则通常不建议使用。
关于installation - 创新设置 : install drivers with rundll32 or dpinst?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8864549/