Problem mit hWnd
-
Hallöchen!!
Ich habe mittels CWnd ein Fenster erstellt und möchte darin ein Videostream darstellen. Probleme macht mir folgende Syntax (aus WMEncoder SDK9):
Ich weiss nicht wie ich mit "long hWnd" umgehen soll.
Hier mal mein Code:
//Preview-Fenster long m_hWndPrePreview; HWND hWnd; CWnd *pWindow; pWindow = new CWnd; pWindow->Create(_T("STATIC"),"", WS_CHILD | WS_VISIBLE | WS_BORDER | WS_THICKFRAME | WS_TABSTOP, CRect(2,38,242,218),this,1234); hWnd = pWindow->GetSafeHwnd(); m_hWndPrePreview = hWnd; hr = pPrePreview->SetCaptureParent(m_hWndPrePreview);folgender Fehler wird beim Kompilieren angezeigt:
error C2440: '=' : 'struct HWND__ *' kann nicht in 'long' konvertiert werden
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder FunktionsformatHat jemand eine Idee wie ich das Problem lösen könnte?
Platform (Windows 2000, MSVisual C++ 6, SP5)
-
Wenn es mit SetCaptureParent(hWnd) nicht geht - einfach casten:
hr = pPrePreview->SetCaptureParent(reinterpret_cast<long>(hWnd))