C# 当进程已运行,但在进程中文件被删除时,如何停止错误?

C# 当进程已运行,但在进程中文件被删除时,如何停止错误?,c#,winforms,process,C#,Winforms,Process,我已经创建了一个删除旧文件的通知。首先,表单标识所有文件夹,然后您可以选择删除它 然而,在测试过程中,我发现在识别之后,我删除了一个文件,然后单击了删除按钮,导致表单爆炸 有人知道这个问题的解决办法吗 非常感谢。如果不处理异常,您几乎永远不会认为可以删除文件。即使是一个文件.Exists也不够好。其他用户或进程可以在调用之间删除它 if (File.Exists(file)) { try { File.Delete(file); } catch (

我已经创建了一个删除旧文件的通知。首先,表单标识所有文件夹,然后您可以选择删除它

然而,在测试过程中,我发现在识别之后,我删除了一个文件,然后单击了删除按钮,导致表单爆炸

有人知道这个问题的解决办法吗


非常感谢。

如果不处理异常,您几乎永远不会认为可以删除文件。即使是一个文件.Exists也不够好。其他用户或进程可以在调用之间删除它

if (File.Exists(file))
{
    try
    {
        File.Delete(file);
    }
    catch (Exception exception)
    {
        MessageBox.Show(exception.Message);
    }
}

您不能在异常中执行任何操作、记录某些内容、显示友好消息或任何适合您的应用程序的操作。

了解如何在应用程序中优雅地处理异常。它涉及到在代码中使用
try
catch
。请出示您的代码好吗?我们需要更多关于你所说的“爆炸”是什么意思的信息。您需要了解如何使用try catch。我假设它是这样的:错误是:mscorlib.dll中发生了类型为“System.IO.FileNotFoundException”的未处理异常。其他信息:找不到文件“c:\nextox\nxabd02\input\Aberdeen文献请求-Aberweb 07.10.2015.xlsx.x”。