自动化设备驱动程序搜索功能

时间:2013-05-24 13:47:56

标签: vbscript cmd

基本的Windows“更新驱动程序”向导允许指向文件夹并执行正确的.INF文件的递归搜索。有人知道是什么允许用VBS或CMD调用吗?

我知道rundll32.exe setupapi.dll,InstallHinfSection可用于自动安装驱动程序,但据我所知,这需要指向特定的路径和文件。

我目前有一个使用WMI扫描ConfigManagerErrorCode = 28的vbscript(设备管理器中状态为“未安装此设备的驱动程序”的那些)。

基本上我想要一种方法将这些Code 28设备与“Update Driver”向导中使用的任何功能联系起来。一个示例代码会很棒但指向正确的方向我至少有一个开始。非常感谢。

2 个答案:

答案 0 :(得分:0)

我不希望VBScript中有这样的东西。毕竟,当你要自动化时,你应该知道你将要做什么(在这种情况下:知道驱动程序的位置)。但是,您可以自己轻松地实现递归搜索.inf文件:

Set fso = CreateObject("Scripting.FileSystemObject")

Function SearchForInf(fldr)
  fpath = Null

  For Each f In fldr.Files
    If LCase(fso.GetExtensionName(f.Name)) = "inf" Then
      fpath = f.Path
      Exit For
    End If
  Next

  If IsNull(fpath) Then
    For Each sf In fldr.SubFolders
      fpath = SearchForInf(sf)
    Next
  End If

  SearchForInf = fpath
End Function

inf = SearchForInf(fso.GetFolder("C:\path\to\your\driver"))

答案 1 :(得分:0)

更新驱动程序有两种方法,即自动和手动更新。通过使用自动更新,Windows将通过Internet或Windows通用驱动程序查找您的驱动程序。但最好的选择是手动更新驱动程序,这需要选择INF所在的路径。在这种情况下,如果您的设备具有正确的驱动程序,Windows将减少查找设备驱动程序的时间,并且更新设备的准确率为100%。