|
From: Pete B. <pe...@ak...> - 2011-09-26 18:54:55
|
On 2011.09.26 19:10, Tim Roberts wrote: > The USB\MS_COMP_LIBUSB device ID is being generated by the Microsoft USB > port driver, source for which is not released. I had already realized > that it would be possible to write an upper filter to usbport.sys to > look for a different "special descriptor" and expose > USB\MS_COMP_LIBUSBK, for example. That would serve the purpose, and it > wouldn't even be very hard. Unless I'm misunderstanding you, I believe this is already what usbport.sys is doing: If for instance you put "LIBUSBK" as your compatible ID in a WCID device, you will see that, your device instance in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB will have "USB\MS_COMP_LIBUSBK" listed in the CompatibleIDs key. Thus "USB\MS_COMP_LIBUSBK" is already exposed by usbport.sys and can be used for automated installs. There is no filtering of the Compatible IDs. This feature is what I'm currently leveraging in Zadig, by having it pre-install infs that use USB\MS_COMP_LIBUSBK, USB\MS_COMP_LIBUSB0, and USB\MS_COMP_WINUSB. Once these are in DriverStore, you have automated installs without the need to provide an inf (for WCID devices), and it works from XP onward. > WinUSB already exists on the older systems, of course. The missing > piece is the modification to usbport.sys. I think the missing piece is that, unlike what is the case for Windows 8, the WinUSB inf from 7 and earlier does not include USB\MS_COMP_WINUSB as a device ID, thus you get no match. It would be very simple for Microsoft to add it in a new driver version. But of course, you need that driver to be installed on your system once to benefit from autoinstall, which is why Windows Update would need to play a part. The other option is of course to use the current Zadig to do that one-time preInstall. Not sure if you've read [1] where I provide more details. > You'd have to go through the one-time > pain of installing that filter, but from then on you'd have non-INF USB > driver installations. Well, I already have that since yesterday, for all OSes since XP, and not limited to WinUSB. Regards, /Pete [1] http://marc.info/?l=libusb-devel&m=131690725629537&w=2 |