我正在使用多线程WPF应用程序(.NET Framework 4)中的Interop库将大量MS Word文档转换为PDF。我在某些word文档中收到以下错误:
Screenshot of the error http://i60.tinypic.com/4fz9co.png
它会阻止当前线程,直到我在对话框上单击“确定”然后继续转换,转换后的PDF也会很好。
这只发生在某些文件上。我在多台计算机上运行该应用程序,这也发生在其他计算机上。
以下是我的转换代码:
var wordApplication = new Microsoft.Office.Interop.Word.Application();
// Opening the word document
var wordDocument = wordApplication.Documents.Open(tempFile, false, true, false, NoEncodingDialog: false);
// Exporting the document to the PDF
wordDocument.ExportAsFixedFormat(pdfPath, Microsoft.Office.Interop.Word.WdExportFormat.wdExportFormatPDF);
// Closing the document and the application.
((Microsoft.Office.Interop.Word._Document)wordDocument).Close(false);
((Microsoft.Office.Interop.Word._Application)wordApplication).Quit(false);
Marshal.ReleaseComObject(wordDocument);
Marshal.ReleaseComObject(wordApplication);
wordDocument = null;
wordApplication = null;
有谁知道造成这种情况的原因是什么?或者我是否可以从我的应用程序中关闭此对话框?
由于
答案 0 :(得分:0)
wordApplication.AutomationSecurity = Microsoft.Office.Core.MsoAutomationSecurity.msoAutomationSecurityForceDisable;
这似乎解决了这个问题。
感谢bibadia提供了解决问题的链接。