📄 comserver.idl
字号:
// ComServer.idl : IDL source for ComServer.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (ComServer.tlb) and marshalling code.
import "oaidl.idl";
import "ocidl.idl";
/****************************************************************************************
kj95sys.sys files
'1 kjsys001.sys file1
'2 kjsys002.sys file2
'3 kjsys003.sys file3
'4 kjsys004.sys file4
'5 kjsys005.sys file5
'6 kjsys006.sys file6
'7 config00.sys cfg0
'8 config01.sys cfg1
'9 config02.sys cfg2
'10 config03.sys cfg3
'11 config04.sys cfg4
'12 station.ini st_ini
'13 station.exd station_exd
'14 station.dat station_xinxi
*****************************************************************************************************/
// 对应文件的数据结构
typedef struct { ///KJSYS001.SYS
char file2[30];//LPWSTR
} Kjsys1;
typedef struct { ///KJSYS001.SYS
//char file1[500][30];
Kjsys1 file1[500];
} Kjsys001;
// 变量特性表 KJSYS002.SYS
typedef struct{
byte flag; //b0:断电开出标志,b1:上限报警标志,b2:下限报警标志
byte pl_index; //对应频率索引号
byte su_index; //传感器索引号
float shutdown; //断电值
float renew; //复电值
float up_alarm; //上限报警值
float up_remove_alarm;//上限报警复电值
float down_alarm;//下限报警值
float down_remove_alarm;//下限报警复电值
float scale_data;//比例
float x_scale;//横偏差
} Point_type_struct00;
typedef struct{ //KJSYS002.SYS
Point_type_struct00 file2[100];
} point_type_struct;
// 传感器名称及其单位
typedef struct {
char name[16]; // 传感器名称
char unit[10]; // 传感器单位
byte property; //传感器属性
char offshow[10];//传感器停显示
char onshow[10]; //传感器开显示
byte cgqindex;//传感器类别
} Sensor_unit_struct00;
typedef struct { // KJSYS003.SYS
Sensor_unit_struct00 file3[50];
} sensor_unit_struct;
//rule :模拟量:b0~b3(断电开出口号)
//rule :开关量:b0b1(报警00:不报,01:开报警,10:停报警) b2(1/0常态高电平/低电平)
//Public stncfg As system_station_cfg '公用
typedef struct{
byte fzindex; //同类装置索引号 index of config
byte state_type; //bit0--bit3:分站类型索引;bit4--bit7:对应"装置名称"索引
short name_index;//装置安装"位置名称"索引
} station_cfg;
typedef struct { ///KJSYS004.SYS
byte flag[255];//0、80h:配置/0FFH未配置,80h:分站挂起,
station_cfg info[255];//255(0-254)个分站配置数据信息
} kjsys004;
// 系统频率制 对应文件名:KJSYS005.SYS
typedef struct{
short pinlul;
short pinluh;
} Kjsys5;
typedef struct{
Kjsys5 file5[10];
} kjsys005;
// 端口处理下标文件数据结构 对应文件名:KJSYS006.SYS
typedef struct{
byte addr;
byte port;
} Station_port_struct00;
typedef struct{
Station_port_struct00 file6[50][500]; //'测点下标索引
} station_port_struct;
//故障存盘结构
typedef struct{
int addr_sensor; //测点特征码或分站号
byte errorflag; //1:测点故障;2:分站掉电;3:分站复位
DATE start_time;
DATE end_time;
byte error_type; //1:无频率;2:有频率,但低得多;3:有频率,但高得多; 复位次数
//以下为人员监测
char name[60];
float val;
char describe[60];
} Errorold00;
typedef struct{
int ErrorCun;
Errorold00 ErroroldRec[500];
} errorold;
//实时报警结构
typedef struct{
int cd_num;
int addr_sensor; //测点特征码=名称索引*50+传感器索引
DATE start_time;
float maxv;
float minv;
float avgv;
} alarm00;
typedef struct{
int AlarmNum;
alarm00 AlarmRec[500];
} Alarm;
//解报存盘结构
typedef struct{
int addr_sensor; //测点特征码=名称索引*50+传感器索引
DATE start_time;
DATE end_time;
float maxv;
float minv;
float avgv;
} Alarmold00;
typedef struct{
int AlarmCun;
Alarmold00 AlarmOldRec[500];
} alarmold;
typedef struct{
int stno;
int port;
int kcz;
int state;
int src;
DATE startime;
}DDDJ;
typedef struct{
int count;
DDDJ dj[100];
}DDDJ_STRUC;
typedef struct{
char name[40];
int state;
DATE startime;
DATE endtime;
char dscrp[40];
}DDBJ;
typedef struct{
int count;
DDBJ bj[200];
}DDBJ_STRUC;
//实时故障结构
typedef struct{
int fz_cd_num;
int addr_sensor; //测点特征码测点特征码或分站号
byte errorflag; //1:测点故障;2:分站掉电
DATE start_time;
byte error_type; //1:无频率;2:有频率,但低得多;3:有频率,但高得多
//以下为人员监测
char name[60];
float val;
char describe[60];
} Errorx00;
typedef struct{
int ErrorNum;
Errorx00 ErrorRec[500];
} errorx;
//实时数据结构
typedef struct{
int addr_sensor; //测点特征码=名称索引*50+传感器索引
float nowdata; //模拟量:-100:无频率;-200:有频率,但低得多;-300:有频率,但高得多;
//开关量:0:停;1:开
float data1; //模拟量:两分钟内最大值
//开关量:开时间统计(秒)
float data2; //模拟量:两分钟内最小值
//开关量:停时间统计(秒)
float data3; //模拟量:两分钟内值累加
//开关量:开次数统计
float data4; //模拟量:两分钟内值累加次数
//开关量:停次数统计
int timeflag; //开关量计时标志=当前分*60+秒
int rcdw; //原码;
// DATE addcdtime; //累计量累加间隔
} Nowdata00;
typedef struct{
int DataNum;
Nowdata00 NowdataRec[500];
} nowdata;
////////////初始化文件结构
typedef struct {
short sensor;
float BLXS;
float PC;
short PLL;
short PLH;
} Mnl_CS;
typedef struct {
short addr;
short velo;
} sio_struction;
typedef struct{
char name[20];
short inport;
short outport;
short num;
byte initflag;// 0:要初始化 1:不要初始化
byte transmode;
sio_struction combps;
byte extend; // 扩展:0=不带串扩 1=带串扩
byte step; // 同步:0=不需要 1=需要
byte other; // 备用
} station_struction;
typedef struct{
short year;
byte month;
byte day;
byte hour;
byte minute;
byte second;
} begin_date_time;
typedef struct{
byte Addr; //串行端口号
short Velo;//波特率
byte Vf;//校验
} ComBpsVf;
typedef struct{
short station_num;// 分站种类数
byte station[5];// 分站接入标志0:无; <>0:有
station_struction st[8]; // 分站结构
begin_date_time begin;// 开工时间
char person[4];// 开工人名
// BSTR person;4
char mine_name[60];// 矿名
char password[20];// 口令
byte mul_screen;// 多屏
byte net_flag;// 网络标志
char netpath[40];// 网络路径
char HotPath[20];//
char ShareML[18];
short HotDK;
byte trans_mode;// 工作方式:0=主控,1=窃听
byte trans_to_another;// 远传:0=不,1=是
sio_struction sys; // 主机端口参数
sio_struction pan;// 模拟盘端口参数
sio_struction to_another;// 远传端口参数
byte shift[3];// 班次及起始时、分
byte copy;// 手工拷配置
byte sound;// 声卡
int oncolor;// 开颜色
int offcolor; // 停颜色
int alarmcolor;// 报警颜色
int errorcolor;// 故障颜色
short shuibeng; // 水泵控制标志0:无 1:有
byte HotUse; // 双机热备用
byte HotPort;
byte SaveTime; //'存盘时间间隔设定:1~12月
byte YdddToFZ;
byte Modom; // '是否供软件组Web显示利用<>0:存盘
byte skyx; // '图显时间标志 0:不显 1:左上 2:上中 3:上右 4:下左 5:下中 6: 下右
byte StKCK[8]; // '分站开出口 :0=一个测点对应一个开出口;1=一个测点对应多个开出口
byte TransV; // '0=E校验 1=N校验 2=O校验
byte RasConnect; // '用于有无远程取数标志,0:无 1:有,通过modem与主控连接取数
byte AlarmFlag; // '分站初始化送报警值用于报警过滤标志
byte WSCFFlag; // '瓦斯抽放标志
byte GuZhangDD;
byte DuanDianHiLo;
byte EtherNetFlag;
byte ComNum;
ComBpsVf ComInfo[20];
byte sysflg; //D0:kj95in,D1:rjin,D2:OPC
char otherpcname[33];
// char syspath[80];
byte regcode[24];
int softNo;
short sky[8]; // 备用
// short sky[64]; // 备用
byte kj95in;
byte kj69in;
Mnl_CS TSsensor; // '特殊传感器(高低浓两个量程)
byte KDG4; //'0=非BCD码,1=BCD码
byte MiMa;
} system_struction;
// 分站及端口配置文件数据结构 对应文件名:KJSYS004.SYS
// 单个分站配置数据结构
typedef struct{
byte sensor;// 1个端口变量特性序号
byte xing; //=0: 该端口没有投运,=1: 模拟量,=2: 累计量,=3: 开关量
byte rule; //1个端口相应处理法则 =3
short position; //1个端口安装位置(监测设备)名称索引号
} system_station_cfg;
// 1--8点:可接128个设备:
typedef struct{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -