[wdmaudiodev] How to bind a symbolic link to a mixer, midi or wave device name?

  • From: Yann Hamiaux <YHamiaux@xxxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Thu, 9 Feb 2006 09:10:17 -0500


I want to provide a piece of information to the caller of my library to
identify all interfaces linked with a single USB device. For example, if I
take the mixer component: I want to either return the mixer index (so he can
pass it in mixerOpen()), or a name that could match the string in szPname
inside the MIXERCAPS structure (mixerGetDevCaps).

So far, I've been able to enumerate all MIDI symbolic link and get their
friendly name. However, when I have 2 devices with the same VID and PID, the
friendly name is exactly the same. While when I look to the list mixer name
they do have a different name "Mixer Device" and "Mixer Device (2)". So far,
I deal with some SetupDi... functions to enumerate all devices in a
category. I also, kind of reverse-engineer the GUID I need for the
enumeration by looking to the registry under
"Local_Machine\System\CurrentControlSet\Control\DeviceClasses\". Maybe there
is a .h file I should look to have a proper list of these GUID?

Currently, I though to assume that the MIDI, Wave, Mixer, DirectSound
interface name would be the same, since they look the same under XP. But I
heard, that some customization of these name would be possible under Vista?
So, I guess it's better to get single piece of information for every type of

-_- Impress -_-


WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx


Other related posts: