静默安装自己的驱动

最近因为公司有很多usb-hid设备都是自己定义的类型,自己写的驱动http://程序(当然并不是我写的),而且公司要求静默安装驱动,在从没接触过这些东西的情况下查找了大量的资料,从使用InstallHinfSection,到使用SetupCopyOEMInf,都能成功,但是最后被我找到了PnPUtil,而这就是最终解决问题的关键,

https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/pnputil,在windows官方有详细解释,当然也可以使用cmd运行pnputil /?来获取帮助。

解决问题就一个批处理语句:

@echo off
start %windir%\system32\pnputil.exe -i -a "%~dp0%MyDriver.inf"

写入批处理文件,将该文件放在自己的驱动文件夹中,以管理员权限运行就行:

其中%~dp0%指定的是当前bat文件所处目录,后面的MyDriver.inf就是需要安装的驱动文件了。

当然,必须保证驱动文件的正确,如果你的驱动是有签名的,那么这个过程就是一个静默的过程,完全没有任何的对话框。

安装完驱动之后,会自动识别设备管理器中与该驱动匹配的未识别设备。


补充一下:

如果想要在程序中使用命令行的方式调用PnPUtil.exe,就像下面这样:

 startcmd(cmdPath, string.Format("-i -a " + _targetFile.FullName));

那么一定要注意系统的位数,32位系统只能调用使用x86编译的命令行调用程序,64位系统只能调用x64的,否则会出现运行命令行参数正确,但是运行程序却无法正确的调用的问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值