I recently swiched my driver development platform from 3790.1803/WDF to the new KMDF 1.5 (WDK 5600) version. Since 1.5 HAS to be developed in XP and my main workstation is 2k, my driver development is now done in a virtual machine until my new laptop gets here! I am developing a USB driver for a device that would prefer to use an alternate configuration containing an isochronous endpoint. This driver will support 2k, xp, and s2003. Since it is pretty well documented here that 2k has problems with a 1.1-based driver switching to alternate configurations, I switched to 1.5 and suddenly the other (Interrupt) endpoint in the alternate configuration worked! In pressing on, I discovered that in 2k, the WdfUsbTargetPipeSendUrbSynchronously call to read data from the isochronous pipe failed with a 0xc000000d (which is Invalid_Parameter i think). The exact same code built in the XP build environment and run on XP works fine.
There shouldn’t need to be any code differences for a driver to work under 2k and xp. Does this mean there’s most likely a problem in the 1.5 framework?
jorj