我有一个程序,它使用自动化并从运行对象表中获取对象。我注意到很少有人在我所有自动化停止工作的状态下结束(我自动化Excel,word,Visual studio)。我自然而然地用龙做声控命令。
偶尔,我可能会陷入EXCEL挂起的状态。 (没有在任务管理器中回应)。
龙早些时候坠毁了,这可能与它有关。对runningObjectTable.GetObject(monikers(0),runningObjectVal)的调用似乎挂起。
现在我并不关心EXCEL挂起的那么多,但是循环遍历运行对象表中所有对象的代码会挂起,这会阻止我的任何语音命令在Visual Studio中工作。
有什么方法可以建议您在超时的情况下调用此函数(可能在单独的线程上)?
令人讨厌的部分是这种情况很少发生,我没有收到崩溃或错误消息(我的所有命令都在不同的线程中运行,因此其他类型的命令继续工作)。我开始关闭visual studio窗口,有时还会重新启动计算机。
只是杀死excel可以解决问题(如果我记得这样做的话)。