#pragma once #ifndef _DLL_INCLUDE_SYSERR_H #define _DLL_INCLUDE_SYSERR_H #ifndef EXPORT_C #define EXPORT_C extern "C" #endif #ifndef WINAPI #define WINAPI __stdcall #endif //错误代码 enum EM_ERR_CODE { ERR_INPUT_PARAM = -1000, //入参为空或者不合法 ERR_PARAM_FORMAT, //参数格式错误 ERR_VERSION, //版本错误 ERR_TIMEOUT, //等待超时 ERR_NO_INIT, //未初始化 ERR_NOINIT_POOL, //未初始化线程池 ERR_REPEAT_INIT, //重复初始化 ERR_NO_CONNECT, //未连接 ERR_NO_REG, //未注册 ERR_REPEAT_REG, //重复注册 ERR_DATA_OVERLIMIT, //数据溢出 ERR_ID_EXIST, //ID已经存在 ERR_INVALID_ID, //此ID无效 ERR_INVALID_HANDLE, //无效句柄 ERR_INVALID_NAME, //无效名称 ERR_NAME_EXIST, //该名称已经存在 ERR_NOREADY, //不在就绪状态,不能接受该指令 ERR_SYS_DATE, //系统时间错误 //File error ERR_CREATE_FILE, //创建文件失败 ERR_OPEN_FILE, //打开文件失败 ERR_WRITE_FILE, //写入文件失败 ERR_READ_FILE, //读取文件失败 ERR_DEL_FILE, //删除文件失败 ERR_GET_ATTRIBUTES, //获取文件属性失败 ERR_FILE_FORMAT, //文件格式错误 //commport error ERR_OPEN_COM, //打开串口失败 ERR_COM_WRITE, //写入串口错误 ERR_COM_READ, //读取串口错误 ERR_GET_COMSTATE, //获取串口参数错误 ERR_SET_COMSTATE, //设置串口参数错误 ERR_CLEAR_COMSTACK, //清除缓冲区失败 //sysapi ERR_NOINIT_NET, //未初始化网络协议栈 ERR_INIT_NET, //加载网络协议栈失败 ERR_NET_VERSION, //网络协议栈版本错误 ERR_CLIENT_NORESPONSE, //客户端无响应 ERR_CREATE_SOCKET, //创建socket失败 ERR_LISTEN_SOCKET, //监听socket失败 ERR_BIND_SOCKET, //绑定端口错误 ERR_ACCEPT_SOCKET, //接受连接失败 ERR_CONNECT_SOCKET, //连接服务端失败 ERR_GET_SOCKET, //获取socket信息失败(ip,port) ERR_OPERATOR_EVENT, //操作事件失败 ERR_ABANDONED_EVENT, //事件被锁定, 无法操作 ERR_LOAD_DLL, //加载dll失败 ERR_LOAD_DLLFUN, //加载dll某个接口失败 ERR_INVALID_IP, //无效IP ERR_INVALID_PORT, //无效端口 ERR_RECV_MSG, //接收消息出错 ERR_SEND_MSG, //发送消息出错 ERR_NETCALL, //网络调用出错 ERR_FORMAT_MSG, //消息格式错误 RETURN_OK = 0, //正常无错误 }; #define ERR_NO_NAME ERR_INVALID_NAME /**************************************************** *Function: 记录错误代码到文件 *Intput: errCode 错误代码 必须是已定义的 pszdesc 可选参数 给错误代码添加备注 *Output: NULL *Return: NULL ******************************************************/ EXPORT_C void WINAPI write_err_code(int errCode, const char *pszdesc = 0); /**************************************************** *Function: 获取最近一次发生的错误代码 *Intput: NULL *Output: NULL *Return: 返回最近一次发生的错误代码 0正常 ******************************************************/ EXPORT_C int WINAPI get_last_err(); /**************************************************** *Function: 设置错误代码对应的错误描述, 不能为0 *Intput: errCode 错误代码 必须是未定义的 pszdesc 对应的错误描述 *Output: NULL *Return: 成功返回0,失败返回错误代码 < 0 ******************************************************/ EXPORT_C int WINAPI set_err_desc(int errCode, const char* pszdesc); /**************************************************** *Function: 获取错误代码对应的描述 *Intput: errCode 错误代码 必须是已定义的 *Output: NULL *Return: 返回字符串描述,若无,返回NULL ******************************************************/ EXPORT_C const char* WINAPI get_err_desc(int errCode); /**************************************************** *Function: 获取错误代码对应的描述 -- 扩展接口 *Intput: errCode 错误代码 必须是已定义的 *Output: desc 错误描述 *Return: NULL ******************************************************/ EXPORT_C void WINAPI get_err_descs(int errCode, char* desc); #endif //防止重复包含