On a previous project, I implemented a trick that solved that kind of problem. I admit I have been inspired by a version of the Sound Blaster Live driver from Creative. The idea is to incorporate the serial number (or a part of it, depending how "unique" you want to be) in the name of the wave device. The end result may look like this: "Sound Blaster Live [A004]". In the inf, I define the device name as "My device[%X]" and during installation, the coinstaller renames it using sprintf. That works very well and it is a clean (no registry mangling or similar hacks like I've seen in another project). Mat _____ From: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Jeff Pages Sent: Tuesday, November 23, 2004 5:11 PM To: wdmaudiodev@xxxxxxxxxxxxx Subject: [wdmaudiodev] Re: USB midi driver? Tim Roberts wrote: >Now, it isn't trivial for the app to know which MIDI controller >is plugged into USB hub 2 slot 1, and which is plugged into the >base USB controller slot 3, but how is that any different from >plugging in two PCI MIDI cards? >How would you EXPECT to be able to distinguish them? >Describe for me a use case in which this is important, and how >you visualize things working. I have a similar problem with multiple PCI wave input devices. Each device is identical, but they are physically connected to different audio sources and it is important for the application to be able to distinguish them reliably and consistently across reboots. I still don't have a really satisfactory solution to this. Jeff