自己编写错误代码的规范

本文介绍了错误代码的规范,包括异常代码的定义,其中前15位用于Microsoft或客户定义,16~27位表示设备代码,28位保留为0,29位区分微软定义还是客户定义,最后两位表示严重性等级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如: #define ERRCODE_BASE 0x0505000

 

0~15位:异常代码 由Microsoft/客户定义

16~27位:设备代码,由Microsoft定义

28位:保留,必须为0

29位:0=Microsoft定义代码 1=客户定义代码

30~31位:(严重性) 0=成功 1=供参考 2=警告 3=错误

 

	enum VORX_ERRCODE
	{
		ERR_SUCCESS		= 0,		//执行成功
		// 网络通信
		ERR_NETSEND		= ERRCODE_BASE+0x0101,	//网络发送失败
		ERR_PROTO		= ERRCODE_BASE+0x0102,	//协议格式错误
		ERR_UNSUPPORT	= ERRCODE_BASE+0x0103,	//未支持的指令
		ERR_NETTIMEOUT	= ERRCODE_BASE+0x0104,	//网络应答超时
		ERR_FORMAT		= ERRCODE_BASE+0x0105,	//包格式错误
		ERR_NETINIT		= ERRCODE_BASE+0x0106,	//打开通信网络失败
		ERR_UNKNOWNCMD	= ERRCODE_BASE+0x0107,	//未知命令
		// 数据库操作
		ERR_CONNECTDB	= ERRCODE_BASE+0x0201,	//连接数据库失败
		ERR_UNCONNECTDB	= ERRCODE_BASE+0x0202,	//未连接数据库
		ERR_READDB		= ERRCODE_BASE+0x0203,	//读取数据库数据失败
		ERR_MODIFYDB	= ERRCODE_BASE+0x0204,	//写数据库失败
		// 内存
		ERR_MEMORY		= ERRCODE_BASE+0x0301,	//申请内存失败
		ERR_SPACE		= ERRCODE_BASE+0x0302,	//缓冲区空间不足
		// 组件
		ERR_UNLOGINED	= ERRCODE_BASE+0x0401,	//终端未登录
		ERR_UNINITIALIZE= ERRCODE_BASE+0x0402,	//未初始化
		ERR_INSTANCE	= ERRCODE_BASE+0x0403,	//实例不存在
		ERR_EXISTINSTANCE=ERRCODE_BASE+0x0404,	//实例已存在
		ERR_PARAM		= ERRCODE_BASE+0x0405,	//参数错误
		ERR_DEVICE		= ERRCODE_BASE+0x0406,	//删除列表时,目标设备未找到
		ERR_TARGET		= ERRCODE_BASE+0x0407,	//删除列表时,目标地址未找到
		ERR_UNEXIST		= ERRCODE_BASE+0x0408,	//设备不存在
		// 线程/进程
		ERR_THREAD		= ERRCODE_BASE+0x0501,	//线程错误
		// 文件操作
		ERR_CREATEDIR	= ERRCODE_BASE+0x0601,	//创建目录失败
		ERR_DELDIR		= ERRCODE_BASE+0x0602,	//删除目录失败
		ERR_OPENDIR		= ERRCODE_BASE+0x0603,	//打开目录失败
		ERR_CREATEFILE	= ERRCODE_BASE+0x0604,	//创建文件失败
		ERR_DELLFILE	= ERRCODE_BASE+0x0605,	//删除文件失败
		ERR_OPENFILE	= ERRCODE_BASE+0x0606,	//打开文件失败
		ERR_WRITEFILE	= ERRCODE_BASE+0x0607,	//写文件失败
		ERR_CLOSEFILE	= ERRCODE_BASE+0x0608,	//关闭文件失败
	};

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值