_ConnectionPtr pCon(__uuidof(Connection));
if (pCon->State==1)
{
pCon->Close();
}
int iconnectNum=0;
do
{
//Sleep(20);
std::cout < <"before pCon->Open" < <std::endl;
pCon->ConnectionString = L"Provider=SQLOLEDB; Server=210.58.55.98;Database=xxx; uid=sa; pwd=xxx;";
pCon->Open(L"",L"",L"",adConnectUnspecified);
if (iconnectNum>3)
{
std::cout < <"Can't connetc the database!" < <std::endl;
return false;
}
iconnectNum++;
}while(pCon->State!=1);
以上代码是在一个线程里面,在程序用会要调用无数次,有的时候,他是成功的,但有的时候,程序执行到open函数的时候就卡在那里不动了,我是做了异常处理的,它也不报错,就是卡在那里,我想可能有什么属性可以设置,使得当连接了一段时间后,如果不成功,就跳出来,或者大家还有什么其他的方法啊,大家赐教啊。