📄 system.h
字号:
//*手机电话通讯*
typedef struct {
int nID ; //用户ID
CString strName ; //用户真实姓名
CString strPhone ; //用户电话
CString strMobile ; //用户手机
BOOL bFMsg ; //短信标志
BOOL bFPhone ; //电话标志
BOOL bFMobile ; //手机标志
}sPerson ;
//*Socket通讯*
typedef struct {
LPVOID pSock ;
CString strIP ;
BOOL bIsConnect ;
}sSocket ;
//*本机IP地址*
typedef struct {
CString strIp ;
BYTE f0 ;
BYTE f1 ;
BYTE f2 ;
BYTE f3 ;
}sHostIp ;
int BytesToString(const UCHAR* pSrc, char* pDst, int nSrcLength) ;
int StringToBytes(const char* pSrc, UCHAR* pDst, int nSrcLength) ;
int String2Hex(CString& str, BYTE *senddata,int iLen);
int MsgCopy(const char* pSrc, char* pDst,int nSrcLength) ;
UINT ServerThd(LPVOID lp) ;
UINT WriteDBThd(LPVOID lp) ;
//存储系统基本配置信息
//##ModelId=4652869D0222
typedef struct {
CString UserID;
CString UserPassword;
CString DBIP; //数据库机器名
CString DBNam; //数据库名称
CString WebIP; //WEB服务器名
CString Phone; //短信手机号码
CString CallTel; //告警后的语音呼叫号码
int WebPort; //WEB服务器的接收端口
int ServerPort; //接收WEB指令的端口
int DevicePort; //设备监测端口
int GSMPort; //GSM端口
CString SMSCenter; //端消息中心号码
BOOL SMSOpen; //起用短信功能
BOOL VoiceOpen; //起用语音功能
UINT MonitorStatus; //当前监测服务状态
int Interval; //轮询时间间隔(毫秒)
int SaveLog; //是否保存运行日志
int Autostart; //自动起动监测
int PlaySound; //播放告警声音
CString AlarmRange; //告警范围
int GSMBORT; //GSMMODEM波特轨
int GSMDBIT; //GSMMODEM数据位
int GSMCBIT; //GSMMODEM校验位
int GSMSBIT; //GSMMODEM停止位
} CBaseInfo;
//*通讯处理包*
typedef struct {
char ucBuf[1024]; //数据缓存
int nRLen; //数据长度
UINT addrType; //0-COM|1-UDP|2-TCP
sCommPack InPack ; //通讯数据包
CString address; //通讯设备源地址
UINT iPort; //使用的端口
UINT unState; //当前状态 0-未开始处理 1-处理结束 3-异常数据包
CTime time; //接收时间或发送时间
int nFromType ; //通讯包来源类型 0--设备,1--Web
int iCmd; //发送的数据命令
} CInfoFrame ;
//*基本设备通信信息,用在发送线程中记录设备通信信息*
//##ModelId=4652869D0243
typedef struct {
int nID; //设备ID
int nModel; //设备通讯模式 0-UDP;1-串口;2-TCP;3--RS485
int iPort; //IP协议的端口号或串口号
int iReceive; //接收数
int iSendCount; //发送数,当一条发送命令超过3次时,认为不在线
int iCmd; //发送命令字
CString sIP; //协议包中的目的IP或串口
int strType; //设备类型码
int strIDAddr; //协议包中的ADR项
CString strSend; //发送的数据资料
CTime tmSend; //发送时间
CTime tmReceive; //接收时间
int iState; //是否在线 0-不在线; 1-在线
int isDisable; //是否在线 0-正常监测; 1-禁止
}sUnit;
//*Socket通讯*
//typedef struct {
// LPVOID pSock ;
// SOCKADDR_IN addrr ;
// BOOL bIsConnect ;
//}CSocketInfo ;//*本机IP地址*
//
//##ModelId=4652869D0252
typedef struct{
int MonitorEquPort; //监测设备端口序号
long MonitorPortID; //端口序列ID
char AlarmState; //当前状态 0-未告警;1-告警;
double value; //当前值
int fAlarmLevel; //告警级别
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
CString strComment; //说明
}CPort; //监测设备的端口状态
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //说明
CPort portList[40]; //端口列表
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
}CEquipmentPort; //监测设备基本信息
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //说明
float fVoltage; //电压
float fCarrent; //电流
float fRate; //频率
int fAlarmLevel; //告警级别
long lmSeconds; //持续毫秒数
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
}tyCircle; //工频环数据结构
//直流电源柜数据结构
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //说明
int m_flagStatus; //状态字
float m_majorPower; //主种电压
float m_minorPower; //备路电压
float m_majorCarrent; //主种电流
float m_minorCarrent; //备路电流
char m_sub[CST_SUBCOUNT+1]; //支路告警状态
int m_mainState;
int fAlarmLevel; //告警级别
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
} tyPowerDC;
//交流电源柜数据结构
//##ModelId=4652869D0271
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //说明
int m_flagStatus; //状态字
float m_majorPower[12]; //主路备路数据,顺序 电压 主A-主B-主C;电流 主A-主B-主C 电压 备A-备B-备C 电流 备A-备B-备C
int m_subCount; //支路数
int m_sub[CST_SUBCOUNT][2]; //支路状态及电流
int fAlarmLevel; //告警级别
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
} tyPowerAC;
typedef struct {
CString strComment; //说明
int fAlarmLevel; //告警级别
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
long m_cableLength; //电缆长度
} tyCablePort;
//电缆设备的数据结构
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //告警说明
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
tyCablePort portInfo[16]; //电缆的端口信息
} tyCable;
//直流电源分配箱
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //说明
int m_flagStatus; //状态字
float m_majorPower; //主种电压
float m_minorPower; //备路电压
float m_majorCarrent; //主种电流
float m_minorCarrent; //备路电流
int m_subStatus; //支路状态
int fAlarmLevel; //告警级别
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
} tyAllotBoxDC;
//交流电源分配箱
typedef struct {
long MonitorEquID; //设备ID
CString MonitorEquName; //设备名称
UCHAR TYPENUM; //设备类型号
int ComModel; //通信方式 0--UDP,1--COM,2--TCP,3--RS485
CString SourceAddr; //设备通信原地址 IP地址或串口地址
UCHAR CodeAddr; //设备地址编号
CString strComment; //说明
int m_majorStatus; //主路状态
float m_majorPower[12]; //主路备路数据,顺序 电压 主A-主B-主C;电流 主A-主B-主C 电压 备A-备B-备C 电流 备A-备B-备C
int m_subStatus; //支路状态
int fAlarmLevel; //告警级别
CTime tmStartTime; //起始时间
CTime tmUpdateTime; //结束时间
BOOL onLine; //在线状态 0-不在线;1-在线;
BOOL isDisable; //是否被屏蔽 0--未屏蔽,1--屏蔽
} tyAllotBoxAC;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -