用.net编译过的程序,在对数据库操作时,有时会关闭,并且没有任何错误信息,这是为什么呢?? 如题, 我有一个程序, 原来在vc6.0下编译, 后移到.net下,编译过后,在运行过程中,当执行到调用数据库中的存储过程时,程序有时会关闭。 很郁闷的是,程序只是在有时候关闭,而不是每次都会关闭。各位大虾,这是什么原因呢???困扰我很久的问题了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 try { pCom->Execute(NULL,NULL,-1); } catch(_com_error &e) { CString errMsg=_com_util::ConvertBSTRToString(e.Description()); if((errMsg.Left(9)=="ORA-03113")|| (errMsg.Left(9)=="ORA-03114")) { LogInfo(errMsg+"\nSystem will try to RECONNECT","DB CONNECT fail ","NETWORK"); if(!this->ConnectDB(LoadIniFile("DBSource"),LoadIniFile("UserID"),LoadIniFile("PWD"))) {//Reconnect Fail LogInfo(strParaLog+"\n"+errMsg+"\nTry to reconnect FAIL","TRY-CONNECT-","NETWORK"); return "ERROR: DB Connect Error.Try again"; }else {//Reconnect OK! LogInfo(strParaLog+"\n"+errMsg+"\nTry to reconnect OK","TRY-CONNECT-","NETWORK"); return "ERROR: Retry OK! INPUT GO ON"; } }else { LogStatus("log\\return_erro.log","\nCall_Error_ "+strParaLog ,false,false,0); return "ERROR: Call procedure error -"+tmpParaInfo[0].ProcName; } } 异常捕捉catch{}里面一般不会导致这种情况吧.我昨天遇到的一个情况:在oracle下用ado,执行pCom->Refresh()就会出现这种错误,去掉就好了. 各位 现在基本可以说是在执行 pCom->Execute(NULL,NULL,-1); 时程序僵死,是否与数据库有关呢?用的也是oracle, 可惜没有pCom->Refresh()语句。各位, 在什么情况下执行存储过程会出现这样的现象呢?? 懂mfc的看下,急 利用MFC读取并显示序列图像 DSHOW 图表的创建用于 MPG 转 AVI 练习用钩子注入Dll运到的问题 大虾近来指点--问个关于服务地问题,搞了半天就没搞明白哪里错了, 获得分割视图指针问题 list控件 各位兄弟有什么VC++的好书? com中无法调用lpVtbl成员? 伤痕!!男子汉的勋章!!(关于多任务编程的噩梦般的颤抖难题) 跪求windows2000/xp信使服务协议 请问一个VC类型的问题,
{
pCom->Execute(NULL,NULL,-1);
}
catch(_com_error &e)
{
CString errMsg=_com_util::ConvertBSTRToString(e.Description());
if((errMsg.Left(9)=="ORA-03113")||
(errMsg.Left(9)=="ORA-03114"))
{
LogInfo(errMsg+"\nSystem will try to RECONNECT","DB CONNECT fail ","NETWORK");
if(!this->ConnectDB(LoadIniFile("DBSource"),LoadIniFile("UserID"),LoadIniFile("PWD")))
{//Reconnect Fail
LogInfo(strParaLog+"\n"+errMsg+"\nTry to reconnect FAIL","TRY-CONNECT-","NETWORK");
return "ERROR: DB Connect Error.Try again";
}else
{//Reconnect OK!
LogInfo(strParaLog+"\n"+errMsg+"\nTry to reconnect OK","TRY-CONNECT-","NETWORK");
return "ERROR: Retry OK! INPUT GO ON";
}
}else
{
LogStatus("log\\return_erro.log","\nCall_Error_ "+strParaLog ,false,false,0);
return "ERROR: Call procedure error -"+tmpParaInfo[0].ProcName;
}
}
在oracle下用ado,执行pCom->Refresh()就会出现这种错误,去掉就好了.
用的也是oracle, 可惜没有pCom->Refresh()语句。各位, 在什么情况下执行存储过程会出现这样的现象呢??