[英]c# failed delete file, it is being used by another process
what's wrong with my code?? 我的代码怎么了? am i missing something?
我想念什么吗? i failed to delete the file, it show error "it is being used by another process. Please help
我未能删除文件,它显示错误“正在被另一个进程使用。请帮助
string filename = "C:/File/testExport_1234.pdf";
string htmlfile = "C:/file/1234.html";
using (StreamReader reader = new StreamReader(htmlfile))
{
MailMessage message = new MailMessage(emailFrom, emailTo, emailSubject, reader.ReadToEnd());
message.IsBodyHtml = true;
Attachment data = new Attachment(filename, MediaTypeNames.Application.Octet);
data.Name = filename; // set name here
message.Attachments.Add(data);
SmtpClient client = new SmtpClient("smtp.live.com");
client.UseDefaultCredentials = false;
client.Port = 587;
client.EnableSsl = true;
client.Credentials = new NetworkCredential("xxxxx@hotmail.com", "xxxxx", "hotmail.com");
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}",
ex.ToString());
}
}
if (File.Exists(filename))
{
File.Delete(filename);
//File.Delete(path + code + ".html");
}
You need to dispose the SMTP Client and also MailMessage.Use a Using
statement : 您需要处理SMTP客户端以及MailMessage。
Using
语句:
using (MailMessage Message = new MailMessage)
{ .....
.......
using (SmtpClient client = new SmtpClient)
{
.........
}
}
To dispose attachments,call : 要处置附件,请致电:
DisposeAttachments();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.