WASAPI - 使用CoCreateInstance方法时出现问题

时间:2012-10-22 16:36:56

标签: audio wasapi

我正在尝试使用windows核心音频API从麦克风中捕获音频

相关的代码行是

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页面调整了示例程序 - Capturing an audio stream

可能有什么不对?此外,我不明白错误的含义 - 从我从谷歌搜索获得的描述和所有。

我在Win7 Home Pro x64上使用Visual Studio 2012 express。

1 个答案:

答案 0 :(得分:3)

错误消息不够清晰吗?您需要在调用CoCreateInstance之前调用CoInitialize(或以任何其他方式使用COM)。