c# - 从 USB 复制文件并且 USB 断开连接时如何捕获错误
问题描述
我面临从便携式设备复制文件的问题。我的应用程序应该为消防员运行自动复制和备份。当我插入便携式设备时,应用程序应该识别该操作并开始复制。问题是当我在复制过程中断开设备时。我在用
var t = Task.Run(() => {
System.IO.File.Copy(s, destFileBU, overwrite: true);
});
t.Wait();
我已经在 中尝试了所有这些代码try catch method
,但是在 Visual Studio 中,我总是遇到异常并导致应用程序崩溃。
任务运行有问题吗?为什么 try catch 方法没有帮助?
谢谢你的帮助。
解决方案
您可以使用try
andcatch
语句来捕捉期望值。
也就像@DavidG 说的那样,不要使用Task.Wait()
而是你await
的任务
所以这可以是你的代码:
var t = Task.Run(() =>
{
try
{
System.IO.File.Copy(s, destFileBU, overwrite: true);
}
catch
{
SetBalloonTipDisconnected();
fail = true;
}
});
访问此处了解有关try
和catch
声明的更多信息
推荐阅读
- javascript - TextTrackList onchange 事件在 IE 和 Edge 中不起作用
- javascript - nodejs 导出的变量在第二次命中时不可重用
- reactjs - 试图将值传递给处理程序但接收为未定义
- c++ - 在 GLSL 中优化光线追踪着色器
- java - 使用 java 以编程方式启动 bash shell 命令“osascript”
- php - 在 PHP 中使用正则表达式批量重命名
- c# - 清空列表框的文本框时自动计算文本框的值为零
- text - 如何使用 bash/shell 更改特定的列内容字符串?
- java - Javax 声音采样:FloatType.Control 不支持的控件类型问题
- html - 为什么文本元素会超出 div?