第一章 错误处理
来源:互联网 发布:福建师大网络教育专业 编辑:程序博客网 时间:2024/06/01 10:00
使用GetLastError()得到上一个函数设置的32位错误代码。
要自己定义错误代码使用SetLastError()函数,得到错误代码后最简单的方法使用Error LookUp软件看看代码的具体含义,当然,也可以使用FormatMessage函数转化成字符串描述。然而,FormatMessage函数并不能完全看懂,先放着吧。
看看后面的,在回顾一下前面的。
来看看FormatMessage这个函数。
FormatMessageA(DWORD dwFlags,//标识位,FORMAT_MESSAGE_ALLOCATE_BUFFER时分配足够容纳错误文本描述的内存。FORMAT_MESSAGE_FROM_SYSTEM希望获得系统定义代码
LPCVOID lpSource,//第一个参数为FORMAT_MESSAGE_FROM_HMODULE时,lpSource会去搜索模块进程...很好,看不懂对吧,先填上NULL吧
DWORD dwMessageId,//通俗一点讲就是错误代码
DWORD dwLanguageId,//语言标识符,使用MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT)表示操作系统默认语言
LPSTR lpBuffer,//错误描述
DWORD nSize,//错误描述缓冲区大小
va_list *Arguments//保存格式化信息中的插入值的一个数组。依然不懂,填个NULL吧
);
书上的例子太复杂了,要不要一来就这样?来个简单的
#include <stdio.h>#include <windows.h>int main(){if (!CreateDirectory("C:\\", 0)){LPVOID pMsgBuf;//dw为错误代码DWORD dw = GetLastError();FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,NULL, dw, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&pMsgBuf, 0, NULL);printf("出错码:%d, 出错信息:%s \n", dw, pMsgBuf);}return 0;}
函数么,就应该简单的入门,书上写的可是会打击积极性的哦~
如果书后面有这函数的继续使用且参数不为NULL的话,回头把这几个不懂的参数补上。
0 0
- 第一章 错误处理
- 第一章:错误处理
- 第一章:错误处理
- 第一章 错误处理
- 第一章 错误处理
- Windows核心编程笔记 第一章错误处理
- 《windows核心编程5》第一章-错误处理
- Windows核心编程学习笔记 第一部分 第一章 错误处理
- windows核心编程-第一章 对程序错误的处理
- 数字图像处理:第一章 概述
- Python 自然语言处理 第一章
- python自然语言处理 第一章
- python自然语言处理第一章1.1
- 数字图像处理第一章学习笔记
- 1.第一章,数据的处理
- 《数字图像处理》--冈萨雷斯(第一章)
- 错误处理
- 错误处理
- iOS开发中 get请求、post请求
- MFC框架程序剖析(3)
- 数据库事务隔离级别
- iOS SDK详解之视频播放(AVPlayer)附Demo
- c++调用lua堆栈一直增加,内存泄漏
- 第一章 错误处理
- 没事随便写写——matlab图像与矩阵的转换与存储为txt文件
- 虚拟机安装ubuntu后不支持16:9分辨率
- 基于WEB信息管理系统测试时应考虑的因素有哪些
- 创建ListView时getView()的多次调用
- 第七周 项目2 建立链队算法库
- 基础,自己又容易忘记的,计算机基础知识
- hdu 1166 敌兵布阵
- 从一道面试题谈linux下fork的运行机制