我正在编写一个需要 MSWord 文档解析器的应用程序。
我正在使用 Microsoft.Office.Interop.Word.Document 从文档中提取文本,但即使我使用 doc.Close() 文档,从 taskManager 中我也可以看到 winword.exe 没有被杀死,在解析了几十个文档之后,它消耗了很多资源。
close() 是错误的方法吗?
请帮助我并指出正确的方向以正确终止这些进程。 =)
~~~更新~~~
感谢大家的帮助。我使用 app.quit() 并运行一个循环来检查进程和已解决的问题! =)
最佳答案
你在打电话吗 Application.Quit ,此外,由于您正在执行 Interop,因此可能值得发布 RCW wrapper .
所以基本上是这样的:
yourWordAppObject.Quit();
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(yourWordAppObject);
注意一些人使用:ReleaseComObject但是有一些potential pitfalls
关于c# MSOffice Interop Word 不会杀死 winword.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070124/