6

只是想知道是否有人知道在使用 Microsoft.Office.Interop.Word 时如何在创建后不保存文档。

基本上我正在使用邮件合并从 c# 打印报告,制作文档,将值传递给它没有问题,然后我可以毫无问题地打印它,但是,我只需要打印文档,我不需要在计算机上保存副本。

将所有值传递给文档后,我使用以下代码打印并关闭文档:

wordDoc.PrintOut();
wordDoc.Close();
wordApp.Application.Quit();

但是,这会打印文档,然后会弹出“保存”对话框,询问将文档保存在哪里。我不希望这样,因为单击取消会产生错误(并且需要用户进行另一次不需要的交互),并且我不需要保存文件。

有任何想法吗?

使用 Visual Studio 2012、.NET 4.0,并且我尝试使用以下文件类型作为办公文档:.doc、.dot、.docx、.dotx。

4

3 回答 3

9

您可以将SaveChanges参数传递给跳过保存部分wdDoNotSaveChanges的方法。Close

看一下:

如何关闭正在运行的 Word 文档实例?(C#)

MSDN 参考

于 2013-03-05T19:27:23.573 回答
5

我知道这是对 Johns 问题的一个非常晚的回复,但我还需要在不显示保存对话框的情况下关闭已编辑的文档。

我发现这种方法对我来说非常有效:

// Tells the application not to save changes    
((_Application)wordDoc.Application).Quit(false);
于 2017-03-03T01:03:53.620 回答
1

如何抑制警报?

Word.Application word = new Word.Application();
word.DisplayAlerts = Microsoft.Office.Interop.Word.WdAlertLevel.wdAlertsNone;
于 2013-03-05T19:24:43.893 回答