我用CSocketFile和CSocket和CArchive来传输文件,但是当我正在传输时拔掉网线,服务器端(多线程收发)程序崩掉了,有什么办法让服务器端返回一个错误而不崩掉程序,有人这么做过么?谢谢所有回答的或者UP的
解决方案 »
- 第十四章:请多一点
- 怎么样在一个MDI的程序中,初始化时就生成多个子窗口
- (没分了,帮下忙!)如何设置Dialog对话框里一个Edit小控件的字体,并且不影响整个对话框的字体。
- 如何在树形控件里显示全部注册表项,就像注册表一样,vc编程实现
- 自己编写开发控件程序无法运行
- VC/MFC/Win32程序员技术测试二--使用Windowsx.h进行消息分流
- ↑〓◆※ 菜鸟提问,关于多表查询, 谢谢参与 ※★▲↓
- 为什么MFC程序无法退出
- 怎么用CRen类构造一个多边形,给个例程好吗?这方面的书太少了。(62分全给)
- 请问如何把一个程序初始化为后台进程,并且能够截取window向其他程序发送的消息
- 类表控制位置获取问题,求教?
- 如何控件Trayicon的最小化到哪
那就抽象的回答,加个try{}catch{...}
有人回答了
感动ing
那我就在具体点
我在序列化函数中勇read和write向CsocketFile写数据
CSocketFile把数据发出去
我看了底层,CSocketFIle用CSocket的send发数据
发送失败的话抛出异常 一抛出异常我的服务器程序就over了
另外
我用了try catch
木有用
因为
////序列化函数try{
// blablablab
ar.write(....)
}
catch()
{
}
因为是发送中中断
程序到ar.write那块就死掉了
不知道有人看懂没
catch(CFileException)
可以拦截错误的原因
catch(...)
拦截所有,但得不到错误原因
//但是他进不来
}
直接在try{ar.write//这里程序死掉
}
ps:谢谢回帖
他是这样抛出异常的
afxThrowFileException(CFileException::gener..,nError)我又用了catch(CFileException)
依然拦截不到错误是不是我上面的
try
{}
catch{}
用得不对啊;。。郁闷无语ing
try
{
}
catch(CFileException * e)
{
}
catch(CArchiveException* e)
{
}
catch(...)
{
}
后来我试了
到catch(...)了
不知道是什么异常
虽然自己不爽
但是boss高兴了哎
看来结果至上啊
:-) 今天来结贴了~~~~~~~~~~~~~~~~~~再次权利感谢ing