在 C# 中使用 process.kill() 关闭了单词 doc,但是当打开一个新单词时,它会打开最后保存的单词 doc。我想要新的 word 文档窗口

Posted

技术标签:

【中文标题】在 C# 中使用 process.kill() 关闭了单词 doc,但是当打开一个新单词时,它会打开最后保存的单词 doc。我想要新的 word 文档窗口【英文标题】:Closed the word doc using process.kill() in C#, but when opening a fresh word it opens the last saved word doc. I want new word doc window 【发布时间】:2021-10-20 06:44:50 【问题描述】:

我试图使用 Visual Studio 在 C# 中自动化办公应用程序。我使用 launch(@"WINWORD") 打开 Word 文档,进行了一些更改并保存了 Word 文档,然后使用 process.kill() 关闭了文档。

现在,当我下次运行程序时,我会查找所有办公应用程序并使用 process.kill 关闭它们。所以在这种情况下,一个 Word 文档在那里,所以它在 process.kill() 找到它并关闭它时被关闭。然后我启动(@“WINWORD”),它打开了最后保存的word文档。这就是问题所在,我想打开一个新文档。

使用关闭红色图标手动关闭 Word 时,它可以正常工作。但是使用 process.kill() 我认为它正在保存关闭的 Word 以供下次打开。

有没有一种方法可以像我们一样通过单击红十字图标来关闭 Word 文档。所以下次打开一个新词?

【问题讨论】:

【参考方案1】:

process.CloseMainWindow();解决了我的问题。它确实像我们手动一样关闭 Word 文档,下次它会打开一个新的。

Microsoft Document 帮助了我: https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.process.kill?view=net-5.0

【讨论】:

以上是关于在 C# 中使用 process.kill() 关闭了单词 doc,但是当打开一个新单词时,它会打开最后保存的单词 doc。我想要新的 word 文档窗口的主要内容,如果未能解决你的问题,请参考以下文章

如何将 ctrl+c 发送到 c# 中的进程?

如何在分离模式下杀死进程

为啥我在 iOS13.2 中加载 WKWebView 时收到控制台警告:[Process] kill() 返回意外错误 1?

C# - 向子进程发送输入 - 控制台应用程序

Unity启动外部程序(Process)

如何以编程方式关闭 Discord?