1创建一个ATL COM工程,全部默认
2,增加一个类CY
3,增加一个类方法SHOW
调用:
#include "comat.h" //COM类
#include "comat_i.c"//COM类
int main(int argc, char* argv[])
{
//(1)在当前线程初始化COM类库为STA模式。
::CoInitialize( NULL );
IUnknown * pUnk = NULL;
Iy *pFun = NULL;
HRESULT hr;
//(2)创建实例对象,获取IUnknown接口指针
hr = ::CoCreateInstance(
CLSID_y,
NULL,
CLSCTX_INPROC_SERVER, // 以进程内组件 DLL 方式加载
IID_IUnknown, // 想取得 IUnknown 接口指针
(LPVOID *) &pUnk);
if( FAILED( hr ) ) throw( _T("没注册吧?") );
//(3)从IUnkown指针查询其他接口指针
hr=pUnk->QueryInterface(IID_Iy,(LPVOID *)&pFun);
bis=FAILED( hr );
//(4)调用所需函数
pFun->Show();
// (5)释放引用计数
pFun->Realse();
// (6)关闭当前COM环境
::CoUninitialize();
printf("Hello World!\n");
return 0;
}