FormatMessage将错误代码转换成对应的字符串
2024-08-28 05:41:46
// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[])
{
_wsetlocale(LC_ALL, L"chs"); //支持中文本地化
TCHAR szBuffer[] = {
TEXT('-'),TEXT('-'),TEXT('-'),TEXT('-'),TEXT('-'),
TEXT('-'),TEXT('-'),TEXT('-'),TEXT('-'),'\0'};
LPVOID lpMsgBuf; HRESULT err = StringCchCopy(szBuffer,_countof(szBuffer),_T("")); //将源字符缓冲区复制到目标字符缓冲区szBuffer FormatMessage( //windows提供的,将错误代码转换为相应的文本描述
FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER,
NULL,
err,
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR) &lpMsgBuf, , NULL);
wprintf(L"%s",lpMsgBuf); //打印错误的文本描述
getwchar();
return ;
}
接上一篇,
DWORD WINAPI FormatMessage(
_In_ DWORD dwFlags,
_In_opt_ LPCVOID lpSource,
_In_ DWORD dwMessageId,
_In_ DWORD dwLanguageId,
_Out_ LPTSTR lpBuffer,
_In_ DWORD nSize,
_In_opt_ va_list *Arguments
);
FormatMessage函数为系统提供的函数将,将系统定义的错误代码转换成错误文本
参数1:
的FORMAT_MESSAGE_FROM_SYSTEM 为告诉FormatMessage我们希望获得系统定义的错误代码转换为字符串
FORMAT_MESSAGE_ALLOCATE_BUFFER 要求函数分配一个可以容纳错误文本描述的内存
参数3:
为系统提供的错误代码
参数4:
指出要用什么语言来显示文本描述
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT)这两个常量联合起来生成0值---即操作系统默认语言
最新文章
- Android调用微信登陆、分享、支付
- pip install Error - ReadTimeoutError: HTTPSConnectionPool
- linux文件上传,给文件或目录添加apache权限
- 【LeetCode】202 - Happy Number
- 题目1434:今年暑假不AC (项目安排类:结束时间快排,判断开始时间)
- 原生js判断是否有某个class,如果有就删掉,没有加上
- C# 面向对象 , 类与对象
- angularjs中关于跨域设置白名单
- iOS开发基础-九宫格坐标(1)
- secureCRT恶意终止下次无法启动
- PHP之数组函数
- PowerDesigner V16.5 安装及汉化
- htmlcleaner使用及xpath语法初探
- 【转载】【收藏】Github上免费的编程教程【作者Victor Felder】
- shell 常用命令语句
- 订单状态 Mark
- SecureCRT 如何改变对话框--每行输入字符数的多少
- 【Head First Java 读书笔记】(七)继承
- 简单理解C#中的抽象工厂模式是什么概念!
- 05_zookeeper的ACL
热门文章
- Java基础之抽象类与接口
- 使用wait/notify/notifyAll实现线程间通信的几点重要说明
- PHP CURL根据详细地址获取腾讯地图经纬度
- 页面单击按钮弹出modaldialog然后调用ajax处理程序获取数据,给父级页面控件赋值
- Keras 实例 MNIST
- Scrum的三个仪式:Sprint规划会,Scrum每日站会,Sprint评审会
- 牛客暑假多校 H Prefix sum
- CodeForces 689 D Friends and Subsequences
- 持续集成高级篇之Jenkins windows/linux混合集群搭建(二)
- Caused by: java.net.UnknownHostException