Как я могу получить информацию из IMMDevice? - PullRequest
3 голосов
/ 19 марта 2012

Я новичок в том, что касается IMMDevice, и мне нужно спросить, какой хороший и простой способ извлечь из него какое-то устройство. В моей программе я уже успешно установил указатель на один из них с помощью GetDefaultAudioEndpoint (). Теперь мне просто нужно иметь возможность извлечь из него некоторую основную информацию, например, информацию о выступающем, его идентификатор или что-то в этом роде. Какой хороший способ сделать это, что сможет поднять тот, кто новичок? Спасибо!

1 Ответ

4 голосов
/ 19 марта 2012

К устройствам прикреплены различные свойства, и вы можете прочитать их из хранилища свойств устройства. MSDN дает вам фрагмент кода здесь:

Конечные аудиоустройства> Свойства устройства

Вы также можете использовать готовые утилиты, чтобы быстро проверить свои устройства и посмотреть, что вы можете получить из указателя IMMDevice:

Последний представляет вам такие свойства:

enter image description here

И вы можете проверить исходный код здесь http://www.alax.info/trac/public/browser/trunk/Utilities/EnumerateAudioDevices/MainDialog.h#L72, что он начинается с того, что имеет IMMDevice указатель на руках в строке 72.

...