WASAPI - проблема с методом CoCreateInstance

Я пытаюсь захватить звук с микрофона, используя API-интерфейсы ядра Windows.

Соответствующие строки кода

const CLSID CLSID_MMDeviceEnumerator = __uuidof(MMDeviceEnumerator);  
const IID IID_IMMDeviceEnumerator = __uuidof(IMMDeviceEnumerator);
IMMDeviceEnumerator *pEnumerator = NULL;  
hr = CoCreateInstance(CLSID_MMDeviceEnumerator,NULL,CLSCTX_ALL,IID_IMMDeviceEnumerator,   (void**)&pEnumerator);

hr возвращает следующее значение:

0x800401f0: CoInitialize не вызывалась.

Я адаптировал образец программы со страницы msdn — Захват аудиопотока

Что может быть не так? Также я не понимаю, что означает ошибка - из описаний, которые я получил из поиска Google, и все такое.

Я использую Visual Studio 2012 Express на Win7 Home Pro x64.


person Srinath Ravichandran    schedule 22.10.2012    source источник


Ответы (1)


Сообщение об ошибке недостаточно ясно? Вам необходимо вызвать CoInitialize перед вызовом CoCreateInstance (или любым другим использованием COM).

person user1610015    schedule 22.10.2012