C++中COM組件初始化方法實(shí)例分析
本文實(shí)例講述了C++中COM組件初始化方法。分享給大家供大家參考。具體如下:
這里使用BCB
在使用TADOConnect等組件時(shí)需要進(jìn)行初始化
調(diào)用接口 :
CoInitialize(NULL);//初始化COM套件 CoUninitialize();//釋放COM套件
在DLL入口中調(diào)用:
static bool isCoInitialize = false; //是否是自己進(jìn)行的初始化
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();
//是自己初始化的才釋放,否則由其他初始化的地方自行釋放,
//防止錯誤的釋放導(dǎo)致別的調(diào)用者失敗
}
return 1;
}
希望本文所述對大家的C++程序設(shè)計(jì)有所幫助。
相關(guān)文章
C語言變長數(shù)組 struct中char data[0]的用法詳解
下面小編就為大家?guī)硪黄狢語言變長數(shù)組 struct中char data[0]的用法詳解。小編覺得挺不錯的現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01
VS報(bào)錯C6011的問題:取消對NULL指針的引用(解決方法)
這篇文章主要介紹了VS報(bào)錯C6011的問題:取消對NULL指針的引用(解決方法),C6011:取消對NULL指針的引用,發(fā)現(xiàn)是沒有進(jìn)行空指針的判斷,解決方案跟隨小編一起看看吧2024-01-01
C++實(shí)現(xiàn)拓?fù)渑判颍ˋOV網(wǎng)絡(luò))
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)拓?fù)渑判?,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-04-04
在輸入輸出字符串時(shí)scanf(),printf()和gets(),puts()的區(qū)別淺談
在輸入輸出字符串時(shí)scanf(),printf()和gets(),puts()的區(qū)別淺談,需要的朋友可以參考一下2013-02-02
Qt使用SqlLite實(shí)現(xiàn)權(quán)限管理的示例代碼
本文主要介紹了Qt使用SqlLite實(shí)現(xiàn)權(quán)限管理的示例代碼,管理員針對不同人員進(jìn)行權(quán)限設(shè)定,具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09
C++常用函數(shù)總結(jié)(algorithm 頭文件)
本文給大家詳細(xì)介紹了algorithm 頭文件中最常用的函數(shù)及其使用方法,當(dāng)然這只是其中的一部分,algorithm 頭文件中還有很多其他的函數(shù),感興趣的朋友一起看看吧2023-12-12

