Проблема совместимости .NET ActiveX - PullRequest
0 голосов
/ 19 июня 2011

Я скачал коммерческий элемент управления ActiveX (видеоплеер), который, к сожалению, не был протестирован в среде .NET. Демонстрация управления функционирует безупречно. Его также можно многократно использовать в устаревшей среде Visual Basic 6. Но когда я пытаюсь использовать этот элемент управления в среде .NET (WinForms), у меня появляется пустой экран и нет звука вместо воспроизведения видео. Никаких ошибок в элементе управления не происходит, хотя экран просто пуст. Исполняемые файлы VB6 и .NET работают в режиме x86, так что это не проблема. Я также пытался создать обертку элемента управления ActiveX в VB6 и добавить ее в проект .NET, но получил те же результаты.

ОБНОВЛЕНИЕ: проблема, кажется, в режиме рендеринга. Элемент управления имеет свойство с именем VideoDriver, по умолчанию vdGDI. Когда режим установлен на vdDirectDraw, он воспроизводится, но периодически падает. Это странно, потому что я думал, что идея ActiveX - работать в любой среде, которая поддерживает эту технологию.

Есть ли намеки на то, чтобы заставить его работать?

1 Ответ

0 голосов
/ 19 июня 2011

К сожалению, я видел подобные проблемы прежде, чем w / active x control. Единственный известный мне хак - это обернуть его в элемент управления vb 6, а затем разместить этот элемент управления в .net. Полный взлом, но если элемент управления не обходит стек элементов управления и не пытается привести их к неподходящим типам, он должен работать.

...