OpenCV и MFC — странное поведение imshow на 32-битных и 64-битных

У меня есть проект MFC в Microsoft Visual Studio 2010. В моем диалоге у меня есть PictureControl. Я генерирую окно с OpenCV, а затем я перевожу его в свой PictureControl, как это

namedWindow("INPUT", 1);
HWND hWnd = (HWND) cvGetWindowHandle("INPUT");
HWND hParent = ::GetParent(hWnd);
::SetParent(hWnd, GetDlgItem(IDC_BMP_LOAD)->m_hWnd);
::ShowWindow(hParent, SW_HIDE);

Когда я компилирую его для 32-битной архитектуры, он работает. Когда я компилирую для 64-битной системы, она генерирует именованное окно, но не скрывает, и у имени у меня появляется странная строка, такая как «% HO», отличная от «INPUT» Когда я пытаюсь показать что-то с помощью imshow, это выдает ошибку с нарушением доступа. Изображения приходят с веб-камеры.
Любая помощь будет оценена!
Благодарю.

ОБНОВИТЬ

Я попытался проверить, в порядке ли обработчик окна hWnd, и при неподтвержденном поле он выдает мне «CXX0030: Ошибка: выражение не может быть оценено». В документации OpenCV у функции cvGetWindowHandle () говорится, что она возвращает собственный HWND окна, на которое ссылается имя в случае приложения Win32.

1

Решение

Задача ещё не решена.

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

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

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