|
|
#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 //防止重复包含
|