C# 该进程无法访问该文件,因为其他进程正在使用该文件#

C# 该进程无法访问该文件,因为其他进程正在使用该文件#,c#,.net,c#-4.0,C#,.net,C# 4.0,我有一个.Net控制台应用程序。我希望捕获执行期间发生的任何异常,并将其写入文本文件。如果之前文件中有任何条目,我将 该进程无法访问该文件,因为另一进程正在使用该文件 我试着关闭下面的连接,但仍然显示相同的错误 catch (Exception ex) { using (System.IO.StreamWriter writeerror = new System.IO.StreamWriter(_txtError)) { writeerro

我有一个.Net控制台应用程序。我希望捕获执行期间发生的任何异常,并将其写入文本文件。如果之前文件中有任何条目,我将

该进程无法访问该文件,因为另一进程正在使用该文件

我试着关闭下面的连接,但仍然显示相同的错误

catch (Exception ex)
{
using (System.IO.StreamWriter writeerror = new System.IO.StreamWriter(_txtError))
            {
                writeerror.WriteLine(ex.Message);
                writeerror.Flush();
                writeerror.Close();
             }
}

注意:在程序执行开始时,我将删除该文件,并在出现任何错误时重新生成

我终于找到了问题所在。在所有功能的末尾,我有一个发送电子邮件功能,它将日志文件作为附件发送到一个组。问题是我的工作站无法发送电子邮件。在服务器中部署代码后,电子邮件任务将按预期的方式运行。对于发送电子邮件任务,我有一个类似的catch stmt,当它失败时,它会尝试写入我在电子邮件任务中附加的相同错误文件。一旦我删除了捕获逻辑,问题就解决了。唷!!我知道。。这是一个愚蠢的错误(从这个错误中学到了一些东西

并且你对这个文件的所有写入都在像这里这样的using语句中?显示整个代码段会更有意义在
try
语句中发生了什么?错误消息似乎很简单。你有没有在记事本或类似的东西中打开这个错误日志的副本?顺便说一句,logging ex.ToString()可能会更有帮助。@Steve是的。如果这不对,请让我知道我应该在代码中更改什么