A: 

If it is a network binding then RNDIS sends a message when it completes installation as per RNDIS Driver Implemenation guide and definition of RNDIS

or

You can install or query the device list programatically through Devcon utility (source code is available with MSDN ) as given in Examples

lakshmanaraj
+1  A: 

Here is what I would do:

  1. Download Winspector (or use Spy++)
  2. Start up Winspector, and begin watching for Window Messages
  3. Install your driver
  4. Watch for WM's indicative of a completed driver installation

I wish I could be more descriptive on #4, but I'm not familiar with the specific window message you need. Have a look here for possible Window Messages to expect.

However, once you determine the correct window message to look for, then programmatically have your program wait for (and handle) this WM. CodeProject has an excellent write up on how to do this in C++. Personally, I'd prefer to do it in Delphi.

Mick
+2  A: 

You might want to have a look at this sample code and RegisterDeviceNotification function. I'm not sure for 100%, but it seems to work if you specify correct guid for your device class.

inazaruk
I just tried this method and it works flawlessly.
Thomas