1

我想获取TExceptionNotificationDlg位于 dbkdebugidexxx.bpl 中的 VMT 条目。
IDE 在启动后不久加载此模块。
我想阻止显示异常报告对话框并替换我自己的显示。

简单的方法是拦截这个窗口的ShowModal功能。ShowModal 是一个虚函数,因此存储在 VMT 中。
默认情况下,此类的 VMT 包含指向 的链接CustomForm.ShowModal,因此简单挂钩已失效。我需要修改 VMT。
IDE 在启动时将我的代码加载为 DLL。

如果我只有模块 ( )name和窗口类 () 的名称,我如何获得 VMT 的地址?HModuledbkdebugidexxx.bplTExceptionNotificationDlg

请注意,此表单仅在显示异常时创建并在之后立即销毁,使用HWnd获取信息已出(我之前使用创建表单的 HWnd 访问表单的发布信息https://compilerintrinsics.wordpress.com /,但我不能在这里这样做)

4

0 回答 0