title: Programmatically Add Fake Hardware in Windows
body: <p>I have created a fake usb flash driver driver in Windows that will fake Windows into thinking that a new hardware device is attached. I have also found the APIs that allow me to enumerate the hardware attached (so I know which device is my fake driver).</p>
  
  <p>The problem is I only want to attach the hardware when my program is running, and I don't want it to be accessible when my program is not running.</p>
  
  <p>How can I programmatically add this hardware or enable/disable this driver? Someone suggested the right nomenclature is "load/unload".</p>
  
  <p>Using VC++ with Windows APIs on Windows 7 and higher.</p>