How do I programmatically access a USB transfer cable (such as Belkin's Easy Transfer Cable) from Windows?
I'm familiar with libusb-win32, but from what I can tell, using that with newer devices and with Windows Vista seems iffy.
I know that Windows Easy Transfer can do this. How do I write code that does the same thing as Windows Easy Transfer?
If there is no canned documentation on how to do this, I'm willing to do some digging, but I don't know where to start. How do I watch what Windows Easy Transfer is doing to find out how it does it? I see that Windows even gives transfer cables their own category in the Device Manager, "Transfer Cable Devices." How do I do low-level communication with one of these these drivers?
I found out that Microsoft now offers WinUSB for simple user-mode communication with USB devices. (A WinUSB device driver must first be installed for the device; this is somewhat similar to a libusb-win32 device driver.) WinUSB works on XP (SP2 and above) and Vista.
The Easy Transfer Cable uses WinUSB for its device driver, so I was able to communicate with it by following the example code in Microsoft's WinUSB howto document.