title: Installing a driver programmatically on Windows, driver doesn't become active
body: <p>I have a program that installs a USB driver for a specific device and then updates the device firmware. I use SetupCopyOEMInf() for installing the driver, however, this function doesn't seem to be making the driver active unless I restart the system.</p>
  
  <p>I.e. the installation goes OK, SetupCopyOEMInf() returns OK but the device still remains "Unknown" in the Device Manager unless I restart Windows. However, when I install the driver manually, the system recognizes everything fine and the device quickly gets bound to the driver.</p>
  
  <p>Is there anything else apart from SetupCopyOEMInf() I should do so that the driver gets bound to the device?</p>
  
  <p>Thanks.</p>