....
if(AfxOleInit()) //1
return false;
.....
//1.1
if(AfxOleInit()) //2
return false;
在2的位置有异常,可捕捉不到,实际上OLE/COM库环境已经初始化(1处初始化的),但我要用到再次初始化, 在1.1位置如何处理?
2 个解决方案
#1
在使用ADO对象之前必须先初始化COM环境。初始化COM环境可以用以下代码完成:
::CoInitialize(NULL);
在初始化COM环境后,就可以使用ADO对象了,如果在程序前面没有添加此代码,将会产生COM错误。
在使用完ADO对象后,需要用以下的代码将初始化的对象释放:
::CoUninitialize();
此函数清除了为ADO对象准备的COM环境。
::CoInitialize(NULL);
在初始化COM环境后,就可以使用ADO对象了,如果在程序前面没有添加此代码,将会产生COM错误。
在使用完ADO对象后,需要用以下的代码将初始化的对象释放:
::CoUninitialize();
此函数清除了为ADO对象准备的COM环境。
#2
我试了试,是可以的thank you
#1
在使用ADO对象之前必须先初始化COM环境。初始化COM环境可以用以下代码完成:
::CoInitialize(NULL);
在初始化COM环境后,就可以使用ADO对象了,如果在程序前面没有添加此代码,将会产生COM错误。
在使用完ADO对象后,需要用以下的代码将初始化的对象释放:
::CoUninitialize();
此函数清除了为ADO对象准备的COM环境。
::CoInitialize(NULL);
在初始化COM环境后,就可以使用ADO对象了,如果在程序前面没有添加此代码,将会产生COM错误。
在使用完ADO对象后,需要用以下的代码将初始化的对象释放:
::CoUninitialize();
此函数清除了为ADO对象准备的COM环境。
#2
我试了试,是可以的thank you