我正在一个无人参与的脚本中安装一组驱动程序。其中一个驱动程序(Intel USB3 驱动程序)在完成后启动 Windows Driver Finder 应用程序(“drvinst.exe”)。然后,当 nVidia 驱动程序尝试运行时,它们取消了,因为该向导仍在后台运行。
我目前的解决方案是这样的,但是不是很优雅:
:INSTALLLAPTOP79
.\ELAN\Touchpad\Setup.exe /s /a /s
.\Intel\Chipset\Setup.exe -s -norestart
.\Intel\Graphics\Setup.exe -s
.\Intel\MEI\Setup.exe -s
.\Intel\USB3\Setup.exe -s
.\Realtek\Audio\Setup.exe /s
.\Realtek\CardReader\Setup.exe /s
TIMEOUT 180
.\nVidia\Graphics\Setup.exe -n -s
GOTO :INSTALLLAPTOPWIFI
基本上,如果一个系统比“正常”慢,它就会失败,因为 180 秒是不够的。我可以增加这个值,但这对我来说很麻烦。
我基本上是在寻找一种方法来“检查”以查看“drvinst.exe”是否仍在运行,如果是,请等待一段设定的时间 - 然后再次进行检查.
有什么想法吗?
最佳答案
它不能保证工作(这取决于安装程序如何启动驱动程序查找器)但是:
start /wait command...
可能会成功。请注意,如果要执行的命令包含空格,并且需要用双引号引起来,则需要:
start /wait "" "c:\program files\something\..."
否则它将把命令作为命令提示符的标题。
关于windows - 命令行 - 等待进程完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29516595/