こんにちは皆さん、テキストファイルを取得してメールする小さなコンソールアプリを書くのに忙しいですが、メールを送信した後、メールされたテキストファイルをバックアップフォルダーファイルに移動する必要があります...問題は、ファイルを削除しようとするとこのエラーが発生することです。しかし、私はファイルが私によって使用されていないことを知っています。
別のプロセスで使用されているため、プロセスはファイル 'C:\Files\Configs\Errorlog.txt' にアクセスできません。
file.move と file.copy の 2 つの方法を使用しましたが、削除しようとしても機能しません。同じエラーが表示されます。助けてください
class Program
{
static void Main(string[] args)
{
{
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("******");
mail.From = new MailAddress("*********");
mail.To.Add(ConfigurationSettings.AppSettings["EmailReceiver"]);
mail.Subject = "Test HHjhihH- Mail";
mail.Body = "TestMail";
string folder = ConfigurationSettings.AppSettings["ConfigPath"];
try
{
string[] txtfiles = Directory.GetFiles(folder, "*.txt");
foreach (var txtfile in txtfiles) //FileInfo file in Files )
{
if (!File.Exists("ConfigPath"))//txtfile.Length != 0)
{
mail.Attachments.Add(new System.Net.Mail.Attachment(txtfile));
Console.WriteLine("sending Config File....");
}
else
{
Console.WriteLine("No files in the directory");
return;
}
}
}
catch (Exception)
{
Console.WriteLine("Incorrect Path" + ConfigurationSettings.AppSettings["ConfigPath"] + ",does not exist");
return;
}
SmtpServer.Port = ****;
SmtpServer.Send(mail);
Console.WriteLine("Message Sent");
}
{
string fileName = string.Empty;
fileName = "Errorlog.txt";
string sourceFile = @"C:\Files\Configs\" + fileName;
string destinationFile = @"C:\Files\BackupConfigs\" + fileName;
// To move a file or folder to a new location:
**//error PROBLEM OCCRURS HERE**
File.Copy(sourceFile, destinationFile);
// copies the file but wont delete original file
File.Delete(@"C:\Files\Configs\Errorlog.txt");
// when i use File.move(sourceFile, destinationFile); i get same error
}}