pdf问题关闭选项c#winform

时间:2011-06-09 09:29:46

标签: c# .net winforms

我创建了一个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(); 
 }  

2 个答案:

答案 0 :(得分:2)

你确定Document类也关闭了下面打开的流吗? 看起来不是。要作为附件发送,首先完成将pdf文件写入磁盘。关闭它然后使用FileMode.Open和FileShare.Read参数来读取和发送它。这样,多个文件可以读取并发送它,甚至可以在线程中发送它。

答案 1 :(得分:0)

您一次只能在一个应用程序上使用物理PDF文件。

将其添加为附件并发送它可能会使文件保持打开一段时间。在对文件执行任何操作之前复制该文件,只需“发送”或“显示”该副本即可。

File.Copy原始PDF文件并发送副本

File.Copy原始PDF文件并显示副本

这应该可以防止'使用中的文件警告'