directshow.net控制DLL与vb6一起工作

时间:2011-11-10 01:40:26

标签: .net vb6 com-interop directshow.net

我设法将我的.net DLL包与DirectShow.net连接,以便将图像捕获到vb6中。

.net DLL包含DirectShow.net库中提供的dxSnap示例的函数,适用于.net应用程序。我添加了Interop函数,VB6识别函数并在返回类型函数上正常工作。

有一个从设备获取流并将其附加到控件的功能,但是在传递图片框时遇到类型不匹配错误,并在传递LEAD视频控件时出现溢出错误。

有没有更好的方法将流引入vb6应用程序?

2 个答案:

答案 0 :(得分:1)

“更好的方法”是在托管代码中用VB.Net编写应用程序:)

答案 1 :(得分:1)

DirectShow通常需要一个窗口句柄来绘制,因此您可以使用IntPtr变量类型将PictureBox.hWnd传递给您的一个.NET函数。
如果您需要自己重新生成图像数据,COM Interop应该处理将Image / Bitmap对象转换为VB6的COM StdPicture对象,或者您可以传递包含打包DIB或类似对象的字节数组。