我正在TOLEContainer中打开MS Word。我注意到,如果无法通过调用OLEContainer1.close
将其正确关闭,则会使后台MS Word应用程序运行。这样可以防止oleContainer加载word文档。包含OLECOntainer的应用程序只是挂在创建对象的调用上,直到通过任务管理器终止单词处理为止。
只要用户正常关闭表单,FormClose事件中对OLEContainer1.close
的调用将按预期运行。但是,如果您意外中止了应用程序(例如,通过任务管理器),则对close函数的调用会引发EOleSysError,其描述如下:
由于应用程序正在分派,因此无法拨出电话 输入同步呼叫
我已经阅读了此消息的含义,虽然我基本上了解了发生的情况,但我不知道如何在异常终止情况下调用close函数,以免引起错误。
>答案 0 :(得分:0)
问题似乎出在OLEContainer1.Close
事件中对FormClose
的调用上。如果省略此选项,则即使崩溃也将终止Word应用程序。我认为有必要在退出之前关闭容器,但似乎没有。我还打电话给DestroyObject
,但似乎在释放对象时会自动完成。