【发布时间】:2017-08-31 07:47:39
【问题描述】:
有没有办法检查特定的word文档是否打开?当我在打开应用程序之前自己打开文档时,当我告诉我的应用程序在文档中写一些东西时,首先尝试打开文档,这就是我的应用程序卡住的地方。有没有办法在我尝试打开文件之前检查文件是否已经打开了?此时我的代码如下所示:
object filename = s; // s is a string path which I get from database
Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document doc1 = app.Documents.Open(s);
object missing = System.Reflection.Missing.Value;
app.Visible = true;
【问题讨论】:
-
@Filburt 也尝试使用该方法检查它是否打开,但实际上它每次都告诉我文件是打开的,即使文件没有打开,所以我不知道为什么这种方法对我不起作用...
-
您所说的 “这就是我的应用卡住的地方”是什么意思 - 您是否遇到异常,应用程序是否“挂起”?
-
我没有得到任何异常,只是我无能为力,我必须从 Visual Studio 停止应用程序
-
我认为正在发生的事情是 Word 正在尝试打开文档并显示“正在使用的文件”对话框 - 询问您是否要以只读方式打开等 - 但应用程序不是此时可见。在打开文档之前尝试将 "app.Visible =true;" 移动到该行。我知道这不能回答问题(因此是评论),但你会看到发生了什么。