社区
C#
帖子详情
异常断线,导致程序崩溃,如何捕捉并控制
LighBlade
2006-09-06 11:01:59
1 问题描述:异常断线,比如网线被碰掉等等,再操作程序时,
如果涉及对数据库的操作,例如connection 的关闭,transaction的commit, rollback等等,
无法操作,因为已经断线,导致运行中程序崩溃,如何捕捉并控制
2 希望达到效果:捕捉并提示,等待网络重新连接,而不是系统崩掉
谢谢大家参与讨论。
...全文
383
10
打赏
收藏
异常断线,导致程序崩溃,如何捕捉并控制
1 问题描述:异常断线,比如网线被碰掉等等,再操作程序时, 如果涉及对数据库的操作,例如connection 的关闭,transaction的commit, rollback等等, 无法操作,因为已经断线,导致运行中程序崩溃,如何捕捉并控制 2 希望达到效果:捕捉并提示,等待网络重新连接,而不是系统崩掉 谢谢大家参与讨论。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Knight94
2006-09-06
打赏
举报
回复
to 如何判断是否断线?其他的还应该注意什么?
DB的Connection有State属性,可以通过它来判断。
Socket有Connected属性来判断。
类似的类型都提供相应的状态。
LighBlade
2006-09-06
打赏
举报
回复
To:cctaiyang(小刀可乐)
数据库: 1秒之间也可能连接断掉,time控件是否适合如题的情况?
To:juge001(宰相)
如何让它等待?清说清楚些
To;Knight94(愚翁)
如何判断是否断线?其他的还应该注意什么?
谢谢大家!
myminimouse
2006-09-06
打赏
举报
回复
mark一下
Knight94
2006-09-06
打赏
举报
回复
对于你所说的,在通过网络进行操作的时候首先要加上try-catch保护,防止出现异常而导致程序崩溃。
其次在使用之前,要先判断当前的connection状态,如果能用才能进行操作,否则进行等待。
juge001
2006-09-06
打赏
举报
回复
同意楼上的说法.如果数据据里捕捉到断线的时候,那就进入等待状态,直到重新连上再进入事务重新开始并提交
kbxj406
2006-09-06
打赏
举报
回复
Mark,值得探讨研究
cctaiyang
2006-09-06
打赏
举报
回复
socket的话用recv函数
对数据库的操作的话可以设置一个timer控件,每过1秒从数据库取当前时间来判断
LighBlade
2006-09-06
打赏
举报
回复
结了
Knight94
2006-09-06
打赏
举报
回复
to 在连接打开之前,如何判断是否可以打开,网络是否连接
即使网络通了,也不一定能连通,所以一般在connection去connect或者open的时候加上try-catch保护就行了。
LighBlade
2006-09-06
打赏
举报
回复
谢谢Knight94(愚翁),你说的情况我知道一些,请问:
在连接打开之前,如何判断是否可以打开,网络是否连接
VC++掉线重启例程.rar
VC++掉线重启例程
挂机源码监控某个进程当
断线
就自动关机
挂机源码监控某个进程当
断线
就自动关机
vc6掉线软件唤醒代码.rar
vc6掉线软件唤醒代码
Labview8.5掉线重启 NET控件.rar
Labview8.5掉线重启 NET控件
暗组远控2010脱壳版
DRAT 2010 V4.3 正式版 Build 1220(已完美脱壳) 编译环境:Vista+Delphi7 使用环境:Win2K\WinXp\Win2003\Vista\Win2008\Window7 1.系统信息:可以查看操作系统版本、Cpu类型、内存信息、杀毒软件、防火墙、检测辅助(虚拟机、360安全卫士等)、硬盘大小等 2.文件管理:文件浏览、上传、下载、删除、运行 目录创建和删除。 3.屏幕
控制
:可以查看对方屏幕,鼠标
控制
,键盘
控制
4.视频
捕捉
:可以捕获对方的视频摄像头影像 5.超级终端:也就是telnet命令执行 6.进程管理:可以查看对方进程,并可以终止进程。 7.插件管理:可以加载自定义插件扩展功能。 服务端体积:44.5 KB(压缩) 97.5 KB(无压缩) 启动方式简要说明 1.Active启动 第一次安装:360安全卫士无提示,即时上线 更新安装:文件及时替换完成 不重复上线 2.新建服务: 第一次安装:360安全卫士有提示,即时上线 更新安装:文件及时替换完成 不上线(防止重复上线发生) 插件使用及插件相关参数说明: HTTP.dll Http插件 0.1 By New4[D.S.T] 开放端口:5555 Socks4.dll Socks4插件 0.1 By New4[D.S.T] 开放端口:8080 Open3389.dll Open3389插件 0.1 By New4[D.S.T] 开放端口:3389(或原来的端口) UnSRAT.dll UnSRAT插件 0.1 By New4[D.S.T] 加载后自动清理,成功后生成日志log.txt 插件添加后:%SystemRoot%\System32\DRAT 为插件存放目录,如需可手动上传即可。 DRAT.exe 主
程序
文件校验: MD5: F543BDCB5282307AA37DAEDA72A16002 SHA1: 194ECC0483AA17FB7AFF6BF437FE02560ED1A63D CRC32: 666CDFD5 Server.dat 服务端文件校验:(如果发现MD5有问题请不要使用) MD5: 4CFC55CD6FAEAB3E4ACE1FD80F63A5E9 SHA1: 7EBCED74F6F5C421E9EDBA0DFD5AC2B1D7ECAAFF CRC32: 0C79CD0D 更新日志: V3.3 更换网络核心组件到Indy10 修正屏幕监控无法停止的错误 修正屏幕
控制
停止后连接未断开的错误 修正键盘输入时回车符
导致
客户端掉线 键盘输入不兼容旧版 修正GB内存的错误显示问题 修正客户端在注销状态无法
控制
的错误 增加发送Ctrl+Alt+Del键功能用于远程登录(只支持服务启动) 支持多选文件下载(暂时还不稳定) V3.4 修正
异常
掉线
导致
控制
端
崩溃
的Bug 重写并优化屏幕
控制
部分代码 修正主机下线日志不显示及统计不正常的bug 重写插件管理接口代码 配置服务端可自选保存路径 修正文件传输被控端
异常
断开
导致
控制
端内存占用过高的bug 修正文件传输
控制
端
异常
断开
导致
被控端出错的bug V3.5 修正Active Setup启动不稳定的bug 重写被控端网络连接逻辑判断 修正
控制
端关闭时
导致
掉机的bug 由于屏幕算法原因暂时不支持远程登录暂时删除 V3.6 屏幕监控增加捕获层功能(完美屏幕查看) 屏幕监控增加全屏模式(按F12键) 屏幕监控增加剪切板功能(尚有bug) 获取外网IP函数改写(不会出现
程序
打不开的bug) 修正一个http上线可能
导致
暂时性掉鸡的bug 支持远程登录修复发送Ctrl+Alt+Del键功能用于远程登录(只支持服务启动) V3.7 优化远程信息获取部分代码 通信协议修改不兼容旧版 修正一个上线可能存在的bug 重写视频功能速度有所提升 被控端掉线检测功能修复 在次修正Active Setup启动不稳定的bug 配置服务端默认.exe后缀
异常
掉线容错次数设置为5次 V3.8 修正无视频点击视频设备主机掉线的bug 文件传输代码更换回DRAT3.2版 使用最新的系统判断函数(支持显示Vista\2008) 重新开启皮肤渲染效果(并提供56款皮肤更换,可到主页下载) 修改服务端和客户端掉线检测机制 V3.9 重写文件传输现在更加稳定 文件续传功能仅支持下载续传 文件传输功能支持Bit位传输 修正掉线检测的一个逻辑错误 新版修改协议不兼容旧版 V4.0 兼容Windows7 RTM版(由于注入原因暂时还不支持屏幕监控) 屏蔽了Active启动状态下发送Ctrl+Alt+Del键功能的错误 修正一个Active启动状态重复上线的问题 关闭窗口时如果出现关闭困难或者跳至主窗口请关闭皮肤功能 修正
控制
端心跳包检测 时间为60秒 修正被控端心跳包检测错误
导致
上下线 修复下线气泡提示的Bug 增加服务端配置信息保存项 修正设置皮肤
导致
读取其他配置的逻辑错误 修正摄像头MPEG录像功能并启用 修正屏幕传输掉线时出现的无法关闭窗口的错误(Error #10054) 修正大量主机掉线时可能会
导致
程序
停止响应并出现内存错误 由于indy10线程池问题将网络组件换回indy9 插件管理功能移至
控制
中心 增加屏幕
控制
顶部标示主机IP地址 修正3.3之后版本可能会出现占CPU高的bug 修正内测第5版的主机下线后主机总数计数错误的bug 管理中心插件模块增加本地上传插件功能 优化自动上线主机统计部分代码 对服务端部分代码进行优化缩小体积 修正内存识别错误采用MB为单位计算 重写文件管理部分代码加快传输不兼容旧版 增加连接上限设置\是否使用服务端心跳设置\自动断开重复主机设置(默认不启用) 修改文件下载路径文件夹名以IP地址命名 修正旧版下载无法续传的错误 优化
控制
端命令发送部分代码 V4.1 修正一个同主机屏幕多开的bug 修正一个插件管理功能无法删除插件的bug 重写优化
控制
中心部分代码使运行更稳定 文件传输删除任务功能支持多选删除
控制
中心获取的信息细节优化 修正上一个版本无法删除目录的bug 传输命令格式变更完全加密 V4.2 修正上一个版本插件传输失败的bug 抛弃旧版本文件传输功能重写 文件传输功能支持断点续传 文件传输功能支持文件多选操作 抛弃旧版本文件浏览功能重写 使用windows接口打造仿真explorer 使用windows本地图标组最大限度保证显示与类型相符 可正常读取网络磁盘\可读写光盘的数据(DRIVE_REMOTE\DRIVE_FIXED) V4.3 修正部分机器远程主机图标获取失败的bug
C#
111,120
社区成员
642,545
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章