创建Com对象
本文关键字:对象 Com 创建 | 更新日期: 2023-09-27 18:09:44
你好,我得到了以下异常。
为CLSID {6BF52A4F-394A-11D3-B153-00C04F79FAA6}的组件检索COM类工厂失败,原因是以下错误:80040154类未注册(异常来自HRESULT: 0x80040154 (regdbe_classnotreg)))。
当我尝试用流代码创建一个COM对象(在c#中)
Object instancePlayer = null;
Guid guid_IWMPPlayer = typeof(WMPLib.IWMPPlayer).GUID;
Guid guid_IUnknown = new Guid("00000000-0000-0000-C000-000000000046");
Type type = Type.GetTypeFromCLSID(guid_IWMPPlayer);
instancePlayer = Activator.CreateInstance(type);
COM使用GUIDs
来标识类和接口。看起来您正在使用称为IWMPPlayer
的接口ID (IID
)而不是类ID (CLSID
)。看看你是否能找到一个相应的类为播放器对象,并使用GUID
。
更新:我帮你查了一下课程。像这样获取CLSID
…
Guid guid_WMPPlayer = typeof(WMPLib.WindowsMediaPlayer).GUID;
…然后将CLSID
传递给Type.GetTypeFromCLSID
。
更新2:我可以检查一下,你确实需要使用这些guid吗?
instancePlayer = new WMPLib.WindowsMediaPlayer();
……?