怎么捕获异常不出现系统的提示框而继续往下执行程序
TClientDataSet* pResult=new TClientDataSet(NULL);
TSocketConnection* pSocketConnection=new TSocketConnection(NULL);
pSocketConnection->Address=sIP;
pSocketConnection->Port=nPort;
pSocketConnection->ServerName=CHARGEDBSERVER;
pSocketConnection->Connected=True;
pResult->RemoteServer=pSocketConnection;
pResult->ProviderName="dpInNormal";
pResult->CommandText=vecSql[0];
pResult->Active=True;
我的程序里运行到pSocketConnection->Connected=True;这句时,是套接字连接对方主机,如果能连上不出现问题,
如果连不上会弹出个出错提示框,点击完后程序就中断了。我想如果连接不上不跳出出错提示 程序接着往下执行应该如何做啊???
各位大侠帮帮忙啊,急救!!!!
[解决办法]
- C/C++ code
try {//这里是执行过程中有可能出错的语句}catch(...){//你的异常处理}
[解决办法]
- C/C++ code
try{ try { pSocketConnection->Connected=True; } catch (...) { // 捕获异常 }}__finally{ // 无论如何都可以执行到的代码}
[解决办法]
用个ApplicationEvents组件,在他的OnException事件中能捕获异常么??
[解决办法]
[解决办法]
理论上只要是异常try{}catch(...){}就能捕捉到。
您所谓的捕捉不到有可能是因为:
1、你在调试,调试器比你先捕捉了;
2、你这个try里面的语句影响到了界面,而抛出异常的是界面的响应函数。此时捕获异常的是VCL自身的catch,自然到不了你这儿了:)
[解决办法]
在源码里面, 注释掉 Application->ShowException(&exception);
不一定成功, 原因同老妖说的
[解决办法]
未脱离IDE的情况下运行,普通异常虽然会被catch,但是仍然会弹出系统的异常提示框。脱离IDE运行就没事了。
[解决办法]
不在编译环境下运行试试看,就是直接用鼠标双击你生成得应用