IID_MediaControl необъявленный идентификатор

Я разрабатываю DLL-библиотеку SmartDevice Win32 для моего устройства с Windows Mobile 6.1 с использованием Visual Studio 2008. Мне нужно использовать 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();

}

И .cpp:

#include "stdafx.h"#include "DLLDevice.h"

BOOL APIENTRY DllMain( HANDLE hModule,
DWORD  ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
}__declspec(dllexport) bool InitCOM()
{
if(FAILED(CoInitialize(NULL)))
return false;

IGraphBuilder* pGraphBuilder = NULL;
HRESULT hr = CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER,
IID_IGraphBuilder, (void**) &pGraphBuilder);

if(FAILED(hr))
return false;

IMediaControl *pMediaControl = NULL;
hr = pGraphBuilder->QueryInterface(IID_MediaControl, (void**) &pMediaControl);pGraphBuilder->Release();

return true;
}

Теперь у меня есть ошибка компоновщика:

error C2065: 'IID_MediaControl' : undeclared identifier

Зачем? Как я могу решить эту проблему?
Почему при этом невозможно создать проект с DirectShow?

2

Решение

Потому что это так IID_IMediaControlне IID_MediaControl,

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]