本文實例講述了C++中COM組件初始化方法。分享給大家供大家參考。具體如下:
這裡使用BCB
在使用TADOConnect等組件時需要進行初始化
調用接口 :
?
1 2 CoInitialize(NULL);//初始化COM套件 CoUninitialize();//釋放COM套件在DLL入口中調用:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 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++程序設計有所幫助。