📄 prmconnect.h
字号:
#ifndef __PRMCONNECT_H_
#define __PRMCONNECT_H_
#define DLLIMPORTLONG extern "C" __declspec(dllimport) long __stdcall
/*********************************************************************
| 函数编号: 001
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTLONG OpenConnect(int nComType, char *Param)
|---------------------------------------------------------------------
| 功能描述: 打开一个通讯连接
|---------------------------------------------------------------------
| 参 数:
| int nComType: [in] 通讯类型 0: 串口; 1: TCP/IP Server;
| 2: TCP/IP Client; 3: UDP;
| char *Param: [in] 创建通讯连接的参数字符串
| Param依次为:
| nComType = 0: nPort: 串口号
| dwBaudRate: 波特率
| byByteSize: 数据位
| byParity: 校验位
| byStopBits: 停止位
| byFlowCtrl: 流控
|
| nComType = 1/2: ServerIP: 服务器IP地址
| nServerPort: 服务器端口号
| ClientIP: 客户端IP地址
| nClientPort: 客户端端口号
|
| nComType = 3:
| LocalIP: 本地IP地址
| nLocalPort: 本地端口号
| ClientIP: 远程IP地址
| nClientPort: 远程端口号
|---------------------------------------------------------------------
| 返 回 值: 通讯连接句柄
'**********************************************************************/
DLLIMPORTLONG OpenConnect(int nComType, char *Param);
/*********************************************************************
| 函数编号: 002
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTLONG CloseConnect(long hHandle)
|---------------------------------------------------------------------
| 功能描述: 关闭通讯连接
|---------------------------------------------------------------------
| 参 数:
| long hHandle: [in] 通讯连接句柄
|---------------------------------------------------------------------
| 返 回 值: 关闭成功,返回TRUE; 否则,返回FALSE
'**********************************************************************/
DLLIMPORTLONG CloseConnect(long hHandle);
/*********************************************************************
| 函数编号: 003
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTLONG WriteConnect(long hHandle, BYTE *byBuffer, int nSize,
| const char *strToIP = NULL, int nToPort = 0,
| BOOL bBroadcast = FALSE)
|---------------------------------------------------------------------
| 功能描述: 从通讯连接发送数据
|---------------------------------------------------------------------
| 参 数:
| long hHandle: [in] 通讯连接句柄
| BYTE *byBuffer: [in] 发送数据指针
| int nSize: [in] 发送数据大小
| char *strToIP: [in] 接收端的IP地址
| int nToPort: [in] 接收端的端口号
| BOOL bBroadcast:[in] TRUE: 广播发送; FALSE: 定向发送
|---------------------------------------------------------------------
| 返 回 值: 实际发送出的数据长度
'**********************************************************************/
DLLIMPORTLONG WriteConnect(long hHandle, BYTE *byBuffer, int nSize,
char *strToIP = NULL, int nToPort = 0,
BOOL bBroadcast = FALSE);
/*********************************************************************
| 函数编号: 004
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTLONG ReadConnect(long hHandle, BYTE *byBuffer,
| int nSize, char * chIpFrom = NULL,
| int *nPortFrom = NULL)
|---------------------------------------------------------------------
| 功能描述: 从通讯连接读取接收到的数据
|---------------------------------------------------------------------
| 参 数:
| long hHandle: [in] 通讯连接句柄
| BYTE *byBuffer: [out] 读取数据的存储的指针
| int nSize: [in] 读取数据的最大长度
| char *chIpFrom: [out] 发送端的IP地址
| int *nPortFrom: [out] 发送端的端口号
|---------------------------------------------------------------------
| 返 回 值: 实际读取的数据长度
'**********************************************************************/
DLLIMPORTLONG ReadConnect(long hHandle, BYTE *byBuffer, int nSize,
char * chIpFrom = NULL , int *nPortFrom = NULL);
/*********************************************************************
| 函数编号: 005
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTLONG GetConnectType(long hHandle)
|---------------------------------------------------------------------
| 功能描述: 根据连接句柄查找连接的类型,是串口连接还是SOCKET连接
| 串口连接接收到的数据为字符流,完整的数据包较难得到
| SOCKET连接收到的数据, 一般可一次读到完整的一个数据包
|---------------------------------------------------------------------
| 参 数:
| long hHandle: [in] 通讯连接句柄
|---------------------------------------------------------------------
| 返 回 值: int 通讯连接的类型, 0: 串口; 1: TCP/IP Server;
| 2: TCP/IP Client; 3: UDP;
| -1:未找到连接。
'**********************************************************************/
DLLIMPORTLONG GetConnectType(long hHandle);
#define DLLIMPORTINT extern "C" __declspec(dllimport) int __stdcall
/*********************************************************************
| 函数编号: 006
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTINT DecomposeByte(char *pbyParam, BYTE &byByte)
|---------------------------------------------------------------------
| 功能描述: 从参数字符串的最前端分离出一个BYTE型的参数
|---------------------------------------------------------------------
| 参 数:
| char *pbyParam: [in] 参数字符串, 参数间以/分隔
| BYTE &byByte: [out] 分离出的BYTE型参数
|---------------------------------------------------------------------
| 返 回 值: 参数字符串向前移动的长度
'**********************************************************************/
DLLIMPORTINT DecomposeByte(char *pbyParam, BYTE &byByte);
/*********************************************************************
| 函数编号: 007
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTINT DecomposeWord(char *pbyParam, WORD &wdWord)
|---------------------------------------------------------------------
| 功能描述: 从参数字符串的最前端分离出一个WORD型的参数
|---------------------------------------------------------------------
| 参 数:
| char *pbyParam: [in] 参数字符串, 参数间以/分隔
| WORD &wdWord: [out] 分离出的WORD型参数
|---------------------------------------------------------------------
| 返 回 值: 参数字符串向前移动的长度
'**********************************************************************/
DLLIMPORTINT DecomposeWord(char *pbyParam, WORD &wdWord);
/*********************************************************************
| 函数编号: 008
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTINT DecomposeBool(char *pbyParam, bool &bBool)
|---------------------------------------------------------------------
| 功能描述: 从参数字符串的最前端分离出一个bool型的参数
|---------------------------------------------------------------------
| 参 数:
| char *pbyParam: [in] 参数字符串, 参数间以/分隔
| bool &bBool: [out] 分离出的bool型参数
|---------------------------------------------------------------------
| 返 回 值: 参数字符串向前移动的长度
'**********************************************************************/
DLLIMPORTINT DecomposeBool(char *pbyParam, bool &bBool);
/*********************************************************************
| 函数编号: 009
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTINT DecomposeDword(char *pbyParam, DWORD &dwDword)
|---------------------------------------------------------------------
| 功能描述: 从参数字符串的最前端分离出一个DWORD型的参数
|---------------------------------------------------------------------
| 参 数:
| char *pbyParam: [in] 参数字符串, 参数间以/分隔
| DWORD &dwDword: [out] 分离出的DWORD型参数
|---------------------------------------------------------------------
| 返 回 值: 参数字符串向前移动的长度
'**********************************************************************/
DLLIMPORTINT DecomposeDword(char *pbyParam, DWORD &dwDword);
/*********************************************************************
| 函数编号: 010
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTINT DecomposeString(char *pbyParam, char *str, int nLen)
|---------------------------------------------------------------------
| 功能描述: 从参数字符串的最前端分离出一个字符串型的参数
|---------------------------------------------------------------------
| 参 数:
| char *pbyParam: [in] 参数字符串, 参数间以/分隔
| char *str: [out] 分离出的字符串型参数,以'\0'结束
| int nLen: [in] 字符串str的最大长度
|---------------------------------------------------------------------
| 返 回 值: 参数字符串向前移动的长度
'**********************************************************************/
DLLIMPORTINT DecomposeString(char *pbyParam, char *str, int nLen);
/*********************************************************************
| 函数编号: 011
|---------------------------------------------------------------------
| 函数原型:
| DLLIMPORTINT DecomposeInt(char *pbyParam, int &nInteger)
|---------------------------------------------------------------------
| 功能描述: 从参数字符串的最前端分离出一个int型的参数
|---------------------------------------------------------------------
| 参 数:
| char *pbyParam: [in] 参数字符串, 参数间以/分隔
| int &nInteger: [out] 分离出的int型参数
|---------------------------------------------------------------------
| 返 回 值: 参数字符串向前移动的长度
'**********************************************************************/
DLLIMPORTINT DecomposeInt(char *pbyParam, int &nInteger);
/*********************************************************************
| 函数编号: 012
|---------------------------------------------------------------------
| 函数原型:
| long RFIDLib_DetectAllConventers(int &iDevCnt, char *chData)
|---------------------------------------------------------------------
| 功能描述: 侦测网络中所有基于TCPIP相连接的设备(或者TCP/IP-RS485转换器)
|---------------------------------------------------------------------
| 参数说明:
| int &iDevCnt: [in, out] in : 返回设备的最大数量
| out : 找到的设备数量
| char *chData: [out] 返回设备(TCP/IP-RS485转换器)的配置信息.
| 为无符号字符串, 每39个字符为一个设备的
| 配置信息, 长度为iDevCnt * 39.
| 可调用DeviceInfoToParameters()将配置信
| 息转换为配置参数。
|---------------------------------------------------------------------
| 输出说明: 如果执行成功,函数返回值TRUE,否则返回FALSE
'**********************************************************************/
DLLIMPORTLONG DetectAllDevice(int &iDevCnt, char *chData);
/*********************************************************************
| 函数编号: 013
|---------------------------------------------------------------------
| 函数原型:
| DLLEXPORT DeviceInfoToParameters(char *chData, char* strDevMacAddr, char *strDevIP,
| char *strSubnet,char *strGateWay, char *strRemoteIP, int &remotePort,
| int &localPort, long &baudRate, BYTE &byParity, BYTE &byProtocol)
|---------------------------------------------------------------------
| 功能描述: 将设备的配置信息换为配置参数
|---------------------------------------------------------------------
| 参数说明:
| char *chData: [in] 一个设备的配置信息, 长度为iDevCnt * 39.
| char* strDevMacAddr:[out] 设备MAC地址
| char *strDevIP: [out] 设备IP地址
| char *strSubnet: [out] 子网掩码
| char *strGateWay: [out] 网关
| char *strRemoteIP: [out] 远程IP地址
| int &remotePort: [out] 远程Socket端口号
| int &localPort: [out] 本地Socket端口号
| long &baudRate: [out] 设备通讯波特率
| BYTE &byParity: [out] 设备通讯奇偶校验位
| BYTE &byProtocol: [out] 设备通讯协议
|---------------------------------------------------------------------
| 输出说明: 如果执行成功,函数返回值TRUE,否则返回FALSE
'**********************************************************************/
DLLIMPORTLONG DeviceInfoToParameters(char *chData, char* strDevMacAddr, char *strDevIP,
char *strSubnet,char *strGateWay, char *strRemoteIP, int &remotePort,
int &localPort, long &baudRate, BYTE &byParity, BYTE &byProtocol);
/*********************************************************************
| 函数编号: 014
|---------------------------------------------------------------------
| 函数原型:
| DLLEXPORT SetDeviceParameters(char* strDevMacAddr, char *strNewMacAddr,
| char *strDevIP, char *strSubnet, char *strGateWay,
| char *strRemoteIP, int remotePort, int localPort,
| long baudRate, BYTE bParity, BYTE bProtocol)
|---------------------------------------------------------------------
| 功能描述: 将设备的配置信息换为配置参数
|---------------------------------------------------------------------
| 参数说明:
| char* strDevMacAddr:[in] 设备的旧MAC地址
| char* strNewMacAddr:[in] 设备的新MAC地址
| char *strDevIP: [in] 设备IP地址
| char *strSubnet: [in] 子网掩码
| char *strGateWay: [in] 网关
| char *strRemoteIP: [in] 远程IP地址
| int remotePort: [in] 远程Socket端口号
| int localPort: [in] 本地Socket端口号
| long baudRate: [in] 设备通讯波特率
| BYTE byParity: [in] 设备通讯奇偶校验位
| BYTE byProtocol: [in] 设备通讯协议
|---------------------------------------------------------------------
| 输出说明: 如果执行成功,函数返回值TRUE,否则返回FALSE
'**********************************************************************/
DLLIMPORTLONG SetDeviceParameters(const char* strDevMacAddr, const char *strNewMacAddr,
const char *strDevIP, const char *strSubnet, const char *strGateWay,
const char *strRemoteIP, const int remotePort, const int localPort,
const long baudRate, const BYTE bParity, const BYTE bProtocol);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -