我Microsoft.Office.Interop.Word.ApplicationClass
用来阅读一组 Word 文档。我能够很好地阅读它们,但我注意到用于阅读这些文档的过程实际上从未根据 Windows 任务管理器结束。
从我的谷歌搜索来看,似乎没有其他人有这个问题,这让我相信我要么在做一些根本错误的事情,要么我缺乏有效地在谷歌搜索中表达我的问题的能力.
我对 C# 比较陌生,所以我怀疑是前者。在下面找到我用来创建文档“阅读器”实例的代码。
private void readDoc(string docPath)
{
Word.ApplicationClass wordApp = new Word.ApplicationClass();
object nullObj = System.Reflection.Missing.Value;
object roObj = true;
object objFile = docPath;
try
{
Word.Document doc = wordApp.Documents.Open(ref objFile,
ref nullObj, ref roObj, ref nullObj, ref nullObj, ref nullObj,
ref nullObj, ref nullObj, ref nullObj, ref nullObj, ref nullObj,
ref nullObj, ref nullObj, ref nullObj, ref nullObj, ref nullObj);
doc.ActiveWindow.Selection.WholeStory();
doc.ActiveWindow.Selection.Copy();
IDataObject tmpData = Clipboard.GetDataObject();
string docText = tmpData.GetData(DataFormats.Text).ToString();
(...)
}
catch (Exception ex)
{
MessageBox.Show(ex.Data);
}
}
try 块的其余部分处理字符串docText
并且不涉及wordApp
or doc
,因此我没有将它包含在代码段中。
似乎没有 .Dispose() 函数,Word.ApplicationClass
所以我在这里有点茫然。
编辑-对不起,这里隐含的问题是:如何以编程方式结束该过程?