No need to worry about flames for doing something wrong here [unless I get the idea you’re doing something totally unsafe, and won’t listen to advice]. Stuff happens, even with the best devs [even if it didn’t, I’ve plenty of bonehead moves of my own to recall].
For instance, I should have asked for the next 128 bytes of the dc dump (forgot to check the structure size), but I don’t think that’s necessary. I’m sure it’s not the extension nor a build issue from what’s already here.
The path is pretty short from here (these commands will work assuming you have symbols for your driver), so I’ll add more detail than you may need:
kd> sxeld wdfdio.sys
_kd> g
Then disable/enable the device from device manager (or reboot if your driver can’t be unloaded). The debugger will break when your driver is loaded, but before it calls any code in it.
kd> bp wdfdio!DriverEntry
kd> g < this should then break at your DriverEntry>
kd> dv
The second parameter is a Unicode string the debugger should resolve for you- the name of the service key for the driver. Just keep it handy.
kd> sxdld wdfdio.sys (unless you really want a break every time you load it with the debugger attached).
kd> g
Then open up regedit, look for that key name- it should have a Parameters/Wdf subkey (it should be the one you already edited). That subkey should have a keyword named VerifierOn [spelling matters, but not case], which is a DWORD, and has a non-zero value.
If that’s there, then something heretofore unseen has failed in WdfDriverCreate- you DID pass the Registry path you received in DriverEntry on to that, correct?
Let’s see where that all leads for now- there aren’t [as far as I can recall] that many more places [if any] something can both let your driver load, but simultaneously miss that setting. So presumably we then switch to the bottom edge of the framework and start looking at the Registry calls.
PS if you don’t have symbols for your driver, that’s OK by me, too. I can give you a separate set of instructions for that situation.
To allude to the hot debate of the day, I lived in SoftIce most of the time I was an independent- I just never used symbols. Didn’t have them when I began debugging at the machine level (I think Jobs and Wozniak were still working out of the garage bout that time), and never really used them until recently [must admit they usually do save time]. But I do have what was once a new monitor it destroyed when its display driver made an apparently invalid mode switch on a Sony Vaio 9x box still acting as a paper weight somewhere in my apartment…_