DirectShow VS 2008 Webcam Steuerung
-
Hi,
ich habe folgendes Problem, und zwar versuche ich mit DirectShow eine WebCam anzusteuern, also habe ich ein neues Win32-Projekt angelegt DirectX-SDK installiert und Plattform-SDK. Wenn ich nun versuche meinen bisherigen Code:
#include <Windows.h> #include <dshow.h> #include <d3d9.h> #include <vmr9.h> #include <comutil.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLine, int iCmdShow) { //Instanz des COM-Objekt ertsellen. IGraphBuilder *m_Graph = NULL; IMediaControl *m_Ctrl; IMediaEventEx *m_Event; ICreateDevEnum *devEnum; IEnumMoniker *enumMoniker; CoInitialize(NULL); HRESULT instanceResult = CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void **)&m_Graph); instanceResult = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, (void **)&devEnum); instanceResult = m_Graph->QueryInterface(IID_IMediaControl, (void **)&m_Ctrl); instanceResult = m_Graph->QueryInterface(IID_IMediaEventEx, (void **)&m_Event); devEnum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, &enumMoniker, 0); CoUninitialize(); return 0; }zu komplieren, bekomme ich immer die Meldung, das externe Verweise auf die IID Konstanten nicht aufgelöst werden können, vllt weiß einer welche Headerdatei die Konstanten enthält, habe schon versucht die dshowutils.h einzubinden, finde diese jedoch nicht (Orientiere mich an einem alten DX8-Buch).
Mit freundlichen Grüßen
Anon
-
Durch das Inkludieren von Headern bekommst Du Fehlermeldungen des Linkers nicht weg. Linke lieber zusätzlich strmiids.lib.
-
Vielen dank für deinen Tipp, tatsächlich hat die Lib gefehlt, hätte gedacht das die Standardmäßig mit includiert wird.
Mit freundlichen Grüßen
Anon