使用COM组件时,通常的做法是在main函数的最前面调用CoInitialize(NULL);,最后面调用CoUninitialize();
今天遇到一个问题是在线程中使用COM组件失败了,我就怀疑线程中也需要初始化COM。也就是说:COM的初始化是以线程为单位的。
搜索了下,这篇文章说的比较详细:http://blog.csdn.net/zhengxh/article/details/6973100,用反汇编的方式获取了COM初始化的整个详细过程。
多线程中对COM的初始化CoInitialize应该注意的问题
原文:http://blog.csdn.net/mfcing/article/details/45117033