我创建了一个PDF文件,并通过邮件发送,现在我又发送了一次我收到此错误
这个过程.....因为它被另一个进程使用
Document doc = new Document(iTextSharp.text.PageSize.LETTER, 10, 10, 42, 35);
try
{
PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream("c:\\Test11.pdf",FileMode.Create));
doc.Open;
Paragraph paragraph = new Paragraph("This is my first line using Paragraph.");
Phrase pharse = new Phrase("This is my second line using Pharse.");
Chunk chunk = new Chunk(" This is my third line using Chunk.");
doc.Add(paragraph);
doc.Add(pharse);
doc.Add(chunk);
}
catch (DocumentException dex)
{
}
finally
{
doc.Close();
}
答案 0 :(得分:2)
你确定Document类也关闭了下面打开的流吗? 看起来不是。要作为附件发送,首先完成将pdf文件写入磁盘。关闭它然后使用FileMode.Open和FileShare.Read参数来读取和发送它。这样,多个文件可以读取并发送它,甚至可以在线程中发送它。
答案 1 :(得分:0)
您一次只能在一个应用程序上使用物理PDF文件。
将其添加为附件并发送它可能会使文件保持打开一段时间。在对文件执行任何操作之前复制该文件,只需“发送”或“显示”该副本即可。
File.Copy原始PDF文件并发送副本
File.Copy原始PDF文件并显示副本
这应该可以防止'使用中的文件警告'