我写了一个Windows服务来执行以下操作 .
-
Call Hand Punch机器的供应商.exe生成文本文件以从Hand Punch机器获取数据 . 存储在临时文件夹中 . 使用
System.Diagnostics.Process.Start
调用.exe -
附上并发送电子邮件文件
SmtpClient客户端=新的SmtpClient();
MailMessage mail = new MailMessage(“f@abc.com”,“t @ abc.com”);
string [] fileEntries = Directory.GetFiles(...);
foreach(fileEntries中的字符串fileName){Attachment attachment = new Attachment(fileName); mail.Attachments.Add(附着);
}
client.Send(邮件);
- 将文件从临时文件夹移动到已发送文件夹
我可以完成第1步和第2步,但是当我尝试第3步(移动文件)时,文件被我的服务锁定(但我确信它没有写任何东西) .
我该如何移动文件?
1 回答
SmtpClient.Send是锁定文件 . 当我使用'使用'时,解决了我的问题 .