例外:
Unable to cast COM object of type 'System.__ComObject' to interface type 'DirectShowLib.IBaseFilter'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{56A86895-0AD4-11CE-B03A-0020AF0BA770}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).
我的图表:
自定义文件源(异步)-> GDCL Mpeg-4 Demultiplexor -> ffdshow Video Decoder -> Video Renderer
我的图表在管理员帐户上正确构建和播放。但是,当使用“标准用户”帐户时,它会在投射FFDShow过滤器时引发异常。
代码:
IBaseFilter pffdshowVideoDecoder = (IBaseFilter)Activator.CreateInstance(Type.GetTypeFromCLSID(CLSID_ffdshowVideoDecoder));
创建实例不会引发异常,仅当我尝试在标准用户帐户下投射它时。
附加信息:
- 我的程序设置为 STAThread
- 对象的创建和转换在我的主线程上