摘要: 上节有学习过SEH 中结束处理程序, 本节将继续学习SEH的异常处理程序。在软件开发过程中经常会有如:除0, 访问违规内存 (0xC0005)错误等异常发生. 如果我们用了SEH后软件的健壮性就立马可出来. 异常处理程序的代码结构与结束处理程序类似: __try { // 业务代码块 } exception(异常过滤器) { // 异常处理块 } 阅读全文
posted @ 2012-08-05 21:54 zTercel 阅读(193) 评论(0) 推荐(0) 编辑
摘要: SEH - 结构化异常处理,有句这样话;写健壮程序必须有到的机制。可见他在软件开发中的重要性。SEH包括结束处理程序和异常处理程序。 本节先学习结束处理程序, 关键代码结构: __try { // 业务代码块 } __finally { // 业务代码结束完成必须调用的代码块 } 结束处理程序主要用于__try 块中业务代码块中出现return、goto, break... 阅读全文
posted @ 2012-08-05 21:43 zTercel 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 这个标题说的有点大也很模糊,其实本例包括的信息非常少. 主要通过API: GetSystemInfo 返回的SYSTEM_INFO结构体, 数据如下: typedef struct _SYSTEM_INFO { DWORD dwPageSize; LPVOID lpMinimumApplicationAddress; LPVOID lpMaximum... 阅读全文
posted @ 2012-08-05 21:11 zTercel 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 屏保估评大家都用过,其原理就是监测输入设备是否有输入消息,如果维持一定的时间都没有输入消息的话,系统将进行屏保。发屏何过程中发现有鼠标或键盘的消息输入时将取消息屏保. 屏保核心代码就是监控鼠标或键盘消息输入,Windows 提供了一个这样的API: GetLastInputInfo 函数 阅读全文
posted @ 2012-08-05 21:05 zTercel 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 在前某节中我们学习了模拟鼠标的按下等相关操作,鼠标可以模拟它的操作,那么键盘是否也可以的呢? 答案是肯定的,它就是 keybd_event API, 与mouse_event函数非常相似 阅读全文
posted @ 2012-08-05 20:58 zTercel 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 我想几乎所有的Windows 使用都有用过Ctrl + Alt + Delete 启动Windows启动管理器,还有Ctrl + Shift 来切换输入法等等。 Windows 是如何实现的呢,这正是今天所要学习的热键,热键包括:注册(RegisterHotkey), 注销(UnregisterHotkey), 以及接受热键的消息 WM_HOTKEY 阅读全文
posted @ 2012-08-05 20:52 zTercel 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 我们都知道每一个按键都有一个键值同时也有名称,本节通过Windows API: GetKeyNameText 读取按键的名称. 阅读全文
posted @ 2012-08-05 20:46 zTercel 阅读(171) 评论(1) 推荐(0) 编辑