我有以下代码将docx文件转换为pdf
MSWord.Application app = new MSWord.Application();
MSWord.Document doc = app.Documents.Open("C:/temp/mydoc.docx");
doc.Activate();
doc.Save("c:/temp/mydoc.pdf", WdSaveFormat.wdFormatPDF); //also tried with doc.SaveAs2(...)
((MSWord._Document)doc).Close(WdSaveOptions.wdDoNotSaveChanges);
这在我的电脑上完美运行(带有Office 2013的Win7 64b),但是当我在客户端计算机(带有Office 2013的Win8 64b)上运行它时,总是在执行{{时>显示一个文件管理器1}}或doc.Save()
来电。 filedialog还默认使用Docx选项而不是PDF选项,导致用户必须手动选择它。
在filedialog中单击“确定”时,PDF正确创建,但仍然在doc.SaveAs2()
或doc.Save()
方法中,出现错误“命令失败”。如果我将我的代码包装在try-catch中并在finally块中执行doc.SaveAs2()
方法,我可以绕过错误,但这不是一个真正的解决方案(并且还没有该文件)。
有没有人知道什么可能导致弹出域名?是Win8的行为吗?