是否可以在WindowProc
回调中捕获错误?try
/catch
不起作用。看起来__try
__except
和硬件异常(AV
例如)也不起作用。
更新:
我发现确实可以在WindowProc
回调中抛出异常并用catch
block outside捕获它WindowProc
。经过测试并适用于Windows XP x86
. 我在 WndProc 中发现了相关的问题 64bit exceptions silently fail这个问题似乎只存在于Windows 7 x64
(并且根据该问题也存在于其他 x64 Windows 版本上)。
所以问题是有可能以某种方式抛出异常并用块外WindowProc
捕获它吗?我安装了 microsoft hotfix,在注册表中设置为 1,我得到的最好的是,不是我的例外。catch
WindowProc
DisableUserModeCallbackFilter
FATAL_USER_CALLBACK_EXCEPTION