IDirect3DSurface9 * p = (IDirect3DSurface9 *) pSurface
pSurface是视频图像中的一帧图像的指针,
用C#怎么写?我已经安装Microsoft.DirectX的组件
Microsoft.DirectX.Direct3D.Surface dxSurface = (Microsoft.DirectX.Direct3D.Surface)Marshal.GetObjectForIUnknown(pSurface)
我是这么写的,结果报错“无法将类型为“System.__ComObject”的 COM 对象强制转换为类类型“Microsoft.DirectX.Direct3D.Surface”。表示 COM 组件的类型实例不能强制转换为不表示 COM 组件的类型;不过,只要基础 COM 组件支持对接口 IID 的 QueryInterface 调用,就能将这些实例强制转换为接口。”Microsoft.DirectX.Direct3D.Surface dxSurface = new Microsoft.DirectX.Direct3D.Surface(pSurface);
这么写的话不报错,但是下面执行Graphics g = dxSurface.GetGraphics();
又报错了:未能加载文件或程序集“Microsoft.DirectX, Version=1.0.2902.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。
哪位高手解答一下