在C中使用CoGetClassObject() - 访问COM对象接口

时间:2009-01-08 04:44:15

标签: c++ c windows com

访问应用程序接口的说明,普通 C / C ++

  • MFC
  • ATL
  • WTL

基本上,我想使用COM对象。

工作示例源代码或指南 - 使用(功能)COM对象,创建COM服务器。

此致

5 个答案:

答案 0 :(得分:5)

以下是普通C ++中的一个简单示例:

CoInitialize(NULL); // absolutely essential: initialize the COM subsystem
IMyInterface* pIFace;
// create the object and obtain a pointer to the sought interface
CoCreateInstance(CLSID_MyObject, NULL, CLSCTX_ALL, IID_IMyInterface, &pIFace);
pIFace->MethodIReallyNeed(); // use the object
pIFace->Release(); // free the object
CoUninitialize(); // cleanup COM after you're done using its services

从这里复制:COM Basics

答案 1 :(得分:2)

有一篇关于CodeProject的文章Introduction to COM - What It Is and How to Use It,你可能觉得它很有用。它提供了一个很好的介绍和一个有效的例子。

答案 2 :(得分:1)

好吧,假设您有接口声明,您只需要调用CoInitialize来初始化COM,然后调用CoCreateInstance来获取您的实例(并使用它),然后选择CoUnInitialize来取消初始化COM。

答案 3 :(得分:0)

避免使用codeproject(新手),并查看有关COM的所有MSDN章节。

一切都在那里,有大量的C和C ++示例代码

答案 4 :(得分:0)

请参阅一本关于COM的好书(Don Box或Dale Rougerson)。这些是COM World的良好起点。