我已经下载了一个商业ActiveX控件(一个视频播放器),遗憾的是它没有在.NET环境中测试过。 控制演示功能完美无瑕。它在传统的Visual Basic 6环境中也是完全可重用的。但是当我尝试在.NET(WinForms)环境中使用此控件时,我得到一个空白屏幕而没有声音而不是视频播放。但是,控件中没有错误,屏幕只是空白。 VB6和.NET可执行文件都在x86模式下运行,因此这不是问题。我也尝试在VB6中创建一个ActiveX控件包装器并将其添加到.NET项目中,但得到了相同的结果。
更新:问题似乎是在渲染模式下。该控件具有名为VideoDriver
的属性,默认为vdGDI
。当模式设置为vdDirectDraw
时,它会播放但会定期崩溃。这很奇怪,因为我认为ActiveX的想法是在支持这种技术的任何环境中工作。
任何关于让它发挥作用的提示?
答案 0 :(得分:0)
可悲的是,在使用有效的x控件之前,我已经看到过类似的问题。我所知道的唯一的黑客是将它包装在一个vb 6控件中然后在.net中托管该控件。完全破解,但除非控件正在走控制堆栈并试图将它们转换为不合适的类型,否则它应该可以工作。