C++ IID_MediaControl未声明的标识符

C++ IID_MediaControl未声明的标识符,c++,c,directshow,linker-errors,C++,C,Directshow,Linker Errors,我正在使用Visual Studio 2008为使用Windows Mobile 6.1的设备开发SmartDevice Win32 DLL。我必须使用DirectShow,并开始复制基本示例 .h: #pragma once // Additional Include Directories: // "C:\Program Files (x86)\Windows Mobile 6 SDK\Smartphone\Include\Armv4i" #include <dshow.h>

我正在使用Visual Studio 2008为使用Windows Mobile 6.1的设备开发SmartDevice Win32 DLL。我必须使用DirectShow,并开始复制基本示例

.h

#pragma once

// Additional Include Directories:
// "C:\Program Files (x86)\Windows Mobile 6 SDK\Smartphone\Include\Armv4i"
#include <dshow.h>

// Included strmiids.lib for CLSID_FilterGraph and IID_IGraphBuilder (.cpp)
#pragma comment(lib, "strmiids.lib")



extern "C" {

    __declspec(dllexport) bool InitCOM();

}
现在我有一个链接器错误:

error C2065: 'IID_MediaControl' : undeclared identifier
为什么??我如何解决这个问题?

为什么不能用DirectShow创建一个项目?

因为它是
IID\u IMediaControl
,而不是
IID\u MediaControl

谢谢,我正在阅读microsoft DirectShow的数字视频和电视节目,他用COM Basic编写了IID\u MediaControl,我不知道为什么…接口是
IMediaControl
IID\uu
是相关IID的典型前缀。对于大多数接口,您也可以使用
\uuidof(IMediaControl)
error C2065: 'IID_MediaControl' : undeclared identifier