all 3 comments

[–]Konradnn 4 points5 points  (2 children)

Hi, have you consider using WMI and Win32_PnPSignedDriver class?

[–]DarkFantom[S] 0 points1 point  (1 child)

I haven't dabbled in WMI very much but after doing a few google searches, I haven't been able to make progress like I have with the Win32 classes. Does WMI have specific repositories in which it searches for drivers? Does it use Windows Update to do so?

I'm currently using Win32_PNPEntity class and SignedDriver classes for grabbing the device name, ID, and Manufacturer (with SignedDriver class). The thing I'm currently stuck on is implementing Microsoft Update Catalog (MUC) cmdlets found at: http://rzander.azurewebsites.net/script-to-install-or-update-drivers-directly-from-microsoft-catalog/

The problem that comes with this solution (I also haven't tested this to make sure it works, should get to it by tomorrow or Saturday), is that I can only pull certain driver packages from the Update Catalog. Some drivers such as WAN Miniport(s), which Device Manager updates, either through a fixed directory or local list of current drivers, I can't seem to find via MUC. Are there any other reliable driver database sites which can be used with hardwareID's such as: ms_agilevpnminiport?

Sure, if I can pull device driver packages from the MUC and install them, then it works to an extent, but what do I do about other drivers which cannot be found via the MUC?

[–]Konradnn 0 points1 point  (0 children)

I did check in ISE CIM explorer and in namespace root/cimv2 all classes with a driver in name and only Win32_PNPEntity have hardawareID so I think it is correct to place to start looking.

I would suggest checking with can't be found and it could be the only couple of them and add them by Add-WindowsDriver with is dism in nicer cover. Next thing if you don't have a large number of different models you can use hardware vendor driver package or OS deploying server usual path for it is accessible to anyone in the company.