COM原理
+ -

COM库的初始化CoInitialize

2022-02-08 281 0

调用COM库函数之前,必须调用COM库的初始化函数:HRESULT CoInitialize(IMalloc *pMalloc);

HRESULT CoInitialize(
  [in, optional]IMalloc *pMalloc
);

pMalloc用于指定一个内存分配器,可由应用程序指定内存分配。一般情况下,直接把参数设为NULL,则COM库将使用缺省提供的内存分配器。返回值:S_OK表示初始化成功;S_FALSE表示初始化成功,但不是本进程中首次调用。

通常,一个进程对COM库只进行一次初始化,且在同一个模块单元中对COM库进行多次初始化并没有意义。

唯一不需要初始化COM库的函数是获取COM库版本的函数:DWORD CoBuildVersion();
返回值:高16位=主版本号;低16位=次版本号。

COM程序在用完COM库服务之后,通常是在程序退出之前,一定要调用终止COM库服务函数,以便释放COM库所维护的资源:

void CoUninitialize(void);

0 篇笔记 写笔记

COM库的初始化CoInitialize
调用COM库函数之前,必须调用COM库的初始化函数:HRESULT CoInitialize(IMalloc *pMalloc);HRESULT CoInitialize( [in, optional]IMalloc *pMalloc);pMalloc用于指定一个内存分配器,可由应用程序指......
作者信息
我爱内核
Windows驱动开发,网站开发
好好学习,天天向上。
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!