Windows SEH机制(二)

Windows SEH机制(二)

书接上文,我们继续讨论异常过滤器和异常处理程序。

上文我们讨论了EXCEPTION_EXECUTE_HANDLER。当try块中发生异常时,如果异常过滤程序求得的值为EXCEPTION_EXECUTE_HANDLER,那么系统就会开始执行except代码块中的代码。

EXCEPTION_CONTINUE_SEARCH表示我们希望继续向上查找可以处理该异常的except块。

EXCEPTION_CONTINUE_EXECUTION

异常过滤程序计算得到这个值说明我们希望重新执行发生异常的代码,这通常表示我们已经在异常过滤程序中处理了异常(不推荐)。

一个异常发生后,进程或线程已经变得不稳定,所以尽可能让异常过滤程序简单。

软件异常

之前讨论的都是硬件异常,也就是由CPU捕获的并抛出的异常。我们自己也可以在程序中抛出异常。

要抛出一个软件异常,可以使用RaiseException函数。

推荐使用软件异常与SEH结合来处理错误,而不是返回一个失败值给上级函数。

相关推荐
?re?ta?rd?ed?1 天前
C++11新特性,{}与左值
c++·windows
必须得开心呀1 天前
windows10系统任务栏图标消失修复
windows
zl_dfq1 天前
Windows 下 UDP 套接字编程指南
网络·windows·udp
学习论之费曼学习法1 天前
无人值守AI内容矩阵实战(10):Windows 上让 Python 进程 7×24 活着
人工智能·windows·python·矩阵·powershell·进程守护
少年的范儿1 天前
Windows 安装 MySQL 8.4 教程(ZIP 解压版):配置 my.ini、初始化数据库与启动服务
数据库·windows·mysql
胖纸不争1 天前
EnergyStarZ:让 Windows 后台进程给前台让路的能效管理器(v1.2 发布)
windows·性能优化·c#·win32·ef core
2501_915909061 天前
Windows 上用 VS Code 调试 iPhone 真机 App,KXBuild 断点、崩溃定位实操
ide·windows·vscode·ios·iphone·个人开发·敏捷流程
情 九1 天前
MCP 开发环境搭建:Mac 与 Windows 跑通 Python 服务和 stdio 客户端
windows·python·macos·mcp
懂点Tech2 天前
ctfshow misc28:GIF 高度修改解题与脚本实现
开发语言·windows·python
云梦谭2 天前
让 Linux 主动连接 Windows:配置 Windows 11 SSH 服务端
linux·windows·ssh