当关闭超过 10 个 Outlook-explorer 窗口时,Outlook ole 错误 800A01A8
我在 Delphi 2009 中编写了一个 Outlook 插件,它打开数据库连接并执行一些任务来配合我的主应用程序。
现在关闭 Outlook 时,它会引发 800A01A8 ole 错误,但前提是您打开了大约 10 个 Outlook-explorer 窗口。另一个重要的一点是,只有当您使用 File\Exit 一次关闭所有窗口时,才会偶尔发生这种情况,但更常见的是,即使并不总是,当您使用 Windows 任务栏关闭所有功能一次关闭它们时。
连接调试器时,我找不到引发该错误的位置。
我有点迷失在这里。
I have written an Outlook plugin in Delphi 2009 that opens a database connection and does some tasks to accompany my main application.
When Outlook is now closed it raises an 800A01A8 ole error, but only if you had about 10 outlook-explorer windows open. Another important point is that that only happens occasionally when you use File\Exit to close all windows at once, but much more often, even so not always, when you close them all at once using the windows taskbar close all feature.
When attaching the debugger I could not find where that error is fired.
I am kind of lost here.
Outlook ole 错误 800A01A8 = 需要对象。
所需对象是服务器组件,通常是更新组件或邮件组件。您正在尝试使用这样一个已经被破坏的对象。
也许您添加了一个运行时堆栈跟踪器。例如 madExcept、EurekaLog 或 JEDI JCL 的 JCL 是上述唯一的免费产品。为了为您的程序生成一个包含堆栈跟踪的错误对话框,请转到“文件”|“堆栈跟踪”。新商品 |德尔福文件 | “Delphi 的 JCL 异常对话框”。
使用这样的工具,当运行时出现错误时,您将看到堆栈跟踪,这将帮助您诊断问题。
华泰
Outlook ole error 800A01A8 = Object required.
Object Required is a server component, typically an update component or mail component. You are trying to use such an object which is already destroyed.
Perhaps you add a runtime stack tracer. For example madExcept, EurekaLog or JEDI JCL's JCL is the only free offering from the above. In order to generate an Error Dialog for your program with the Stack Trace in it go to File | New Items | Delphi Files | "JCL Exception Dialog for Delphi".
With such a tool, when the error is raised at runtime you will see the stack trace which will help you to diagnose the problem.
HTH