检查过程已加载

时间:2012-07-03 04:58:31

标签: c#

有没有办法检查应用程序是否已完成加载。

例如,如果我使用Process newProcess = Process.Start(@"C:\someFile.xls");IsLoaded or IsFinishedLoading或类似的东西,以便在应用程序完全加载之前不会触发另一行代码。

我问,因为我在尝试与excel表接口时遇到错误,因为它未打开。仅使用Process newProcess = Process.Start(@"C:\someFile.xls");可以完成工作,但只有在我的应用程序因为没有打开excel文档而崩溃之后才能完成。

现在有办法加快程序/文件的启动速度吗?或者我的错误编码。

2 个答案:

答案 0 :(得分:3)

没有通用的方法来了解应用程序何时启动或完成打开文档。

某些程序(即Office应用程序)提供API来通信/控制它们,而其他程序(即记事本)无法知道此信息。

答案 1 :(得分:1)

由于您已经在使用Interop,为什么不实际创建Excel应用程序,并加载文档? 如果需要,您还可以使应用程序对用户可见。

使用:

Excel.Application excel = new Excel.ApplicationClass();
Workbook wb = excel.Workbooks.Open(path, <parameters>);