从命令行安装驱动程序 (.inf) 文件
Posted
技术标签:
【中文标题】从命令行安装驱动程序 (.inf) 文件【英文标题】:Installing a driver(.inf) file from command line 【发布时间】:2014-04-25 03:58:48 【问题描述】:我在 Windows 8.1 中工作。 我需要从命令行安装驱动程序文件(.inf 文件)。我需要使用哪个命令。? 我知道我有很多其他方法可以安装 .inf 文件,但我必须从命令行安装它。
请帮帮我 提前谢谢...
【问题讨论】:
***.com/questions/619604/… 【参考方案1】:Granger 的评论也适用于 Windows 7。据 MS 称,PnPUtil (PnPUtil.exe) 包含在每个版本的 Windows 中,从 Windows Vista 开始。
对于没有默认安装的设备驱动程序很有用(右键单击“安装”对他们不起作用)。
pnputil -i -a <driverinf>
【讨论】:
【参考方案2】:设备驱动的默认方式是:
pnputil -i -a <driverinf>
不能使用 pnputil 安装旧版驱动程序,必须使用 LaunchINFSectionEx-Call
我测试了以下内容,它适用于从 Windows 2000 到 Windows 10、2012R2、2016、2019 的多个驱动程序。
rundll32.exe advpack.dll,LaunchINFSectionEx ykmd.inf,Yubico64_Install.NT,,4,N
注意使用正确的部分
当没有 [DefaultInstall]-Section 时,必须使用 inf-File 的正确部分。这在大多数答案中都缺乏。在您的驱动程序 inf 文件中查找它并使用正确的部分(在我的示例中为“Yubico64_Install.NT”)。使用错误的部分不会提示错误。在我的示例中,我使用安静模式、无 UI (4) 和永不重启 (N) 来通过 GPO 自动安装驱动程序。所有选项都在此处详细记录:
https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa768006(v%3Dvs.85)
【讨论】:
【参考方案3】:有许多变体......以及较新版本的 Windows 的许多复杂性。
但是对于初学者来说,试试这样的:
rundll32.exe advpack.dll,LaunchINFSectionEx myinf.inf,,c:\temp\mydata.cab,36
http://www.msfn.org/board/topic/104891-how-can-i-install-a-inf-file-from-the-command-line/
http://msdn.microsoft.com/en-us/library/aa768006%28v=vs.85%29.aspx
Programmatic driver install via .inf causing reboot
注意:请注意建议“setupapi”而不是“advpack”的旧链接。你肯定想要 advpack.dll。
【讨论】:
64 位 Windows 怎么样?是rundll64.exe吗? 没有“rundll64.exe”这样的东西。问:你试过“rundll32”吗?发生了什么? 还没有,但我知道用于驱动程序安装的低级 API 要求主 exe 为 32 位或 64 位,具体取决于主机系统。我正在尝试以编程方式安装驱动程序:msdn.microsoft.com/en-us/library/windows/hardware/… 谈到较新版本的 Windows。在Hyper-V Server 2012 r1 & r2 中,命令行为:pnputil -i -a <driverinf>
以上是关于从命令行安装驱动程序 (.inf) 文件的主要内容,如果未能解决你的问题,请参考以下文章