请教牛人:LibUsbDotNet.dll开发usb驱动,软件(C#)怎么实现热插拔实时显示连线状态。

传输数据时拔掉数据线(热插拔),程序关闭设备,然后实时检测目标设备是否插入,当设备重新插入时软件自动连接。在检测设备时有时会跳出“已关闭Safehandle”,这个错误貌... 传输数据时拔掉数据线(热插拔),程序关闭设备,然后实时检测目标设备是否插入,当设备重新插入时软件自动连接。在检测设备时有时会跳出“已关闭 Safe handle”,这个错误貌似从dll抛出的,代码中也无法捕捉此错误,导致软件退出。 展开
 我来答
Ben
推荐于2016-03-22 · 知道合伙人软件行家
Ben
知道合伙人软件行家
采纳数:860 获赞数:2875
认真回答者.

向TA提问 私信TA
展开全部
这个错误貌似从dll抛出的,代码中也无法捕捉此错误,导致软件退出。

不会无法捕获的.
首先按照您的描述是winform程序嘛>
winform程序中请绑定application级别的未处理异常捕捉事件,只有发生未处理异常才会出现程序崩溃的问题.

已关闭 Safe handle

该问题应当是GC已经回收了句柄.所以报错.如果你实在找不到哪里释放掉的话.
就使用捕获未处理异常来忽略该异常即可
//处理未捕获的异常
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
//处理UI线程异常
Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
//处理非UI线程异常
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);

如果还有其他问题.您继续追问吧
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
威孚半导体技术
2024-08-19 广告
威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层... 点击进入详情页
本回答由威孚半导体技术提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式