How to create root-enumerated devnode from kernel code?

From the well known toaster sample code, we know that, we can create a root-enumerated device node(devnode) from application layer, by running command:

devcon.exe install bus.inf “root\busenum”

And I’d like to know, how do we do that from kernel code. My idea is: When my KMDF USB driver is loaded, I’d like to automatically create a persistent root-enumerated Vbus node to help “manage” those USB drivers. I mean, I hope not to rely on devcon.exe to create my Vbus.

I’ve read MS Pres book “Developing Drivers with WDF 2007”, but seems not to find a clue there.

Thank you very much if you can help.

There is no way. Why do you need a vbus in the first place? What bigger problem does it solve?

Bent from my phone


From: xxxxx@gmail.com
Sent: Thursday, May 3, 2018 6:30 AM
Subject: [ntdev] How to create root-enumerated devnode from kernel code?
To: Windows System Software Devs Interest List

From the well known toaster sample code, we know that, we can create a root-enumerated device node(devnode) from application layer, by running command:

devcon.exe install bus.inf “root\busenum”

And I’d like to know, how do we do that from kernel code. My idea is: When my KMDF USB driver is loaded, I’d like to automatically create a persistent root-enumerated Vbus node to help “manage” those USB drivers. I mean, I hope not to rely on devcon.exe to create my Vbus.

I’ve read MS Pres book “Developing Drivers with WDF 2007”, but seems not to find a clue there.

Thank you very much if you can help.


NTDEV is sponsored by OSR

Visit the list online at: https:

MONTHLY seminars on crash dump analysis, WDF, Windows internals and software drivers!
Details at https:

To unsubscribe, visit the List Server section of OSR Online at https:</https:></https:></https:>