Question

Description of the problem:

  1. Insert USB-HID Device (Barcode scanner) on a clean Windows XP Machine.
  2. After windows loads the USB-HID Driver.
  3. Windows XP pops a dialog box asking the user to reboot the machine. (This is the problem)

Scenario:

  1. Remotely Deploy a software package to talk to these devices. (no hardware at this point)
  2. Remotely reboot machines.
  3. Hardware is added to each machine. (no reboot)

Investigation:

  1. Windows adds a control class referencing the "usb.inf" file.
  2. Windows adds a device class referencing the control class.
  3. Windows adds a enumerates the device referencing the device and HIDClass.

I believe what needs to be done is to "Pre-load" or "Pre-install" the driver, but we do not provide the INF files (provided via usb.inf).

Our other drivers utilize dpinst to handle installation on a different driver interface (btw this procedure does work for the desired behavior), but we are providing those INF / CAT / SYS files.


Is it possible to leverage SetupCopyOEMInf to perform this function?

What other avenues could be pursued to pre-load/pre-install this driver?

Was it helpful?

Solution

As it turns out, the problem was connecting to a device before it had enumerated its sub devices, locking the device tree, which caused the 'please reboot windows' dialog to appear when the last device enumerated.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top