当前位置:首页 > 正文

如何使用COM

作者:小兔兔发布时间:2023-02-15浏览:455


使用单接口COM对象 第一个例子展示的是单接口COM对象。这可能是你碰到得最简单的例子。

请确认系统中安装了活动桌面(Active Desktop)。 以下是编程步骤: ·初始化COM库。 (Initialize);·创建一个与活动桌面交互的COM对象,并取得IActiveDesktop接口;·调用COM对象的GetWallpaper()方法;·如果GetWallpaper()成功,则输出/显示墙纸文件名;·释放接口(Release());·收回COM库(Uninitialize); WCHAR wszWallpaper [MAX_PATH];CString strPath;HRESULT hr;IActiveDesktop* pIAD; // 1. 初始化COM库(让Windows加载DLLs)。通常是在程序的InitInstance()中调用// CoInitialize ( NULL )或其它启动代码。

MFC程序使用AfxOleInit()。 CoInitialize ( NULL ); //2.使用外壳提供的活动桌面组件对象类创建COM对象。// 第四个参数通知COM需要什么接口(这里是IActiveDesktop). hr= CoCreateInstance(CLSID_ActiveDesktop,NULL,CLSCTX_INPROC_SERVER,ID_IActiveDesktop,(void**) &pIAD );if ( SUCCEEDED(hr) ){// 3. 如果COM对象被创建成功,则调用这个对象的GetWallpaper() 方法。

hr = pIAD->GetWallpaper ( wszWallpaper, MAX_PATH, 0 );if ( SUCCEEDED(hr) ){// 4. 如果 GetWallpaper() 成功,则输出它返回的文件名字。// 注意这里使用wcout 来显示Unicode 串wszWallpaper. wcout 是Unicode 专用,功能与cout.相同。


声明:部分资源转载自互联网,转载目的在于传递更多知识,并不代表本网赞同其观点和对其真实性负责。如有侵权或者知识有谬误之处,麻烦通知删除,谢谢!联系方式: zzsla2022#163.com