这篇文章主要介绍了C++中COM组件初始化方法,涉及C++中COM组件的使用技巧,需要的朋友可以参考下
本文实例讲述了C++中COM组件初始化方法。分享给大家供大家参考。具体如下:
这里使用BCB
在使用TADOConnect等组件时需要进行初始化
调用接口 :
- CoInitialize(NULL);//初始化COM套件
- CoUninitialize();//释放COM套件
在DLL入口中调用:
- static bool isCoInitialize = false; //是否是自己进行的初始化
- int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
- {
- if(reason==DLL_PROCESS_ATTACH)
- {
- if(ConInitialize(NULL) == S_OK) isCoInitialize = true;
- }
- if(reason==DLL_PROCESS_DETACH)
- {
- if(isCoInitialize) CoUninitialize();
- //是自己初始化的才释放,否则由其他初始化的地方自行释放,
- //防止错误的释放导致别的调用者失败
- }
- return 1;
- }
希望本文所述对大家的C++程序设计有所帮助。
新闻热点
疑难解答