pro_ser.h
来自「网络文件传输,用于显示屏控制系统」· C头文件 代码 · 共 311 行
H
311 行
#define UINT8 unsigned char
#define UINT16 WORD
#define UINT32 ULONG
#define u8_long ULONG
#define pro_udp_port 0x3131
#define req_pro 1
#define ack_pro 2
#define write_at93c 3
#define write_ack_fail 4
#define write_ack_ok 5
#define password_err 6
#define d_arp_name_ord 7 //名字广播
#define d_re_name_ord 8 //名字广播应
//ctrl<=>ser play<=>ser
#define ltd_ask 9
#define ltd_req 10
#define sing_ask 11
#define sing_req 12
#define reco 13
#define reco_ltd_ask 14
#define reco_ltd_req 15
#define reco_sing_ask 16
#define reco_sing_req 17
#define ser_err_rep 18
#define ltd_lan_ask 20
#define ltd_lan_ack 19
#define open_lock_req 21
#define open_lock_ack 22
#define edit_user 23
#define dir 24
#define att_op 25
#define table_op 26
#define set_par_req 27
//end ctrl<=>ser play<=>ser
//order_port
#define po_tcport 1
#define po_udport 2
#define po_name 3
#define po_password 4
#define reco_ack_ok 13
#define reco_ack_id 14
#define reco_ack_idpass 15
#define reco_ack_ltd 16
#define open_lock_ok 21
#define add_user 23
#define chang_user_pass 24
#define del_user 25
#define dir_root_req 26
#define dir_direct_req 27
#define crea_direct_req 28
#define dir_root_ack 29
#define dir_direct_ack 30
#define crea_direct_ack 31
#define att_root_req 32
#define att_direct_req 33
#define att_file_req 34
#define att_root_ack 35
#define att_direct_ack 36
#define att_file_ack 37
#define table_req 38
#define table_ack 39
#define table_del 40
#define table_add 41
#define table_inser 42
#define del_direct_req 43
#define del_direct_ack 44
#define del_file_req 45
#define del_file_ack 46
#define table_up 47
#define table_down 48
#define rename_req 49
#define rename_ack 50
#define att_table_req 51
#define att_table_ack 52
#define table_clear 53
#define sing_att 54
#define dir_direct_sorb 55
#define table_sorb 56
#define acc_syn_udp 57 //建立连接 同步
#define con_syn_udp 58 //连接应答
#define udp_fin 59 //传输完成
#define sta_re 60 //状态回应
#define sta_req 61 //状态请求
#define com_req 62
#define com_ack 63
#define file_on 64
//#define set_att_req 55
#define fil_fin_ack 65
#define file_req 66
#define file_ack 67
#define file_dat 68
#define file_fin 69
#define tree1_ser_ltd_item 0x80000000
#define tree1_ser_name_item 0x40000000
#define tree1_ser_tcp_item 0x20000000
#define tree1_ser_udp_item 0x10000000
#define tree1_my_ser_item 0x08000000
#define tree1_my_tcp_lock 0x04000000
#define tree1_my_tcp_unlock 0x02000000
#define tree1_lan_item 0x01000000
#define tree2_drive_item 0x80000000 //驱动器
#define tree2_play_file 0x40000000 //播放文件
#define tree2_file_item 0x20000000 //普通文件
#define tree2_drire_item 0x10000000 //目录
#define max_pack_cou 1000
static char BASED_CODE szFilter[] = "播放文件(*.rmvb,*.mp3,*.avi,*.mepg)|*.rmvb;*.mp3;*.avi;*.mepg|All Files (*.*)|*.*||";
//#define tree1_lan_item 0x01000000
#define send_udp_num 1024
#define send_ok '1'
#define send_fail '2'
#define sending '3'
#define to_be_send '4'
#define stop '5'
#define breaked '6'
#define overwrite '8'
#define fileon '9'
#define noip '7'
#define read_file_fail 10
#pragma pack (1)
typedef struct pro_ser_stru{
UINT8 head0; //1
UINT8 head1; //1
UINT8 order; //1
UINT8 order_port; //1 -----4
UINT8 id_num[16]; //16
UINT8 id_password[16]; //16
// UINT8 my_name[16]; //16
// UINT8 my_password[16]; //16
UINT8 ltd_name[16]; //16
UINT8 ltd_password[16];//16
UINT8 dat_name[16]; //16
UINT8 dat_password[16];//16 ----100
// UINT8 my_tcp_port[6]; //6
// UINT8 my_udp_port[6]; //6
UINT8 ser_tcp_port[6]; //6
UINT8 ser_udp_port[6]; //6
UINT8 dat_tcp_port[6]; //6
UINT8 dat_udp_port[6]; //6 ----136
UINT8 flat[20]; //20
UINT8 startt[20]; //20
UINT8 shutt[20]; //20 ----176
UINT8 pels[16]; //16
UINT8 conatt[16]; //16
UINT8 disatt[16]; //16 ----224
UINT8 ver[8]; //8
UINT8 netatt[2]; //2 ----234
UINT8 pingip[16];
UINT8 port[6];
UINT8 sta;
}stru_pro_ser;
typedef struct pro_dir{
UINT8 head0; //1
UINT8 head1; //1
UINT8 order; //1
UINT8 order_port; //1 -----4
UINT8 path[200];
UINT8 itemdat[4];
UINT8 name[50];
}stru_pro_dir;
typedef struct pro_att{
UINT8 head0; //1
UINT8 head1; //1
UINT8 order; //1
UINT8 order_port; //1 -----4
UINT8 path[200];
UINT8 size[8];
UINT8 freesize[8];
UINT8 crea_time[28];
UINT8 modi_time[28];
UINT8 crea_reco_time[28];
UINT8 end_play_time[28];
UINT8 play_cou[8];
UINT8 seri[8];
UINT8 file_att;
}stru_pro_att;
typedef struct pro_table{
UINT8 head0; //1
UINT8 head1; //1
UINT8 order; //1
UINT8 order_port; //1 -----4
UINT8 path[200];
UINT8 size[12];
UINT8 seri[8];
UINT8 play_cou[8];
UINT8 crea_time[28];
UINT8 modi_time[28];
// UINT8 file_att;
UINT8 curr_play;
}stru_pro_table;
typedef struct pro_reco{
UINT8 next_pointh;
UINT8 next_pointl;
UINT8 size[8];
UINT8 seri[8];
UINT8 play_cou[4];
UINT8 curr_play;
UINT8 path[5];
}stru_pro_reco;
typedef struct pro_driv{
UINT8 head0; //1
UINT8 head1; //1
UINT8 order; //1
UINT8 order_port; //1 -----4
UINT8 drive1[13][16];
}stru_pro_driv;
typedef struct send_stru{
unsigned char sta;
unsigned char send_mode;
struct send_stru *next;
unsigned char sour_path[200];
unsigned char der_path[200];
unsigned short p_send_sock;
unsigned short p_file_sock;
unsigned short pnum;
unsigned char start_timer[24];
unsigned char finish_timer[24];
unsigned long fil_len;
// CString file_name;
unsigned char ip_addr[17];
unsigned char port[6];
}stru_send;
typedef struct rec_stru{
unsigned char rec_head[2];
unsigned char rec_seri[3];
unsigned char dat[send_udp_num];
unsigned char cu;
}stru_rec;
typedef struct file_req_stru{
unsigned char rec_headh;
unsigned char rec_headl;
unsigned char rec_pro;
unsigned char reserver;
unsigned long pack_len;
unsigned long pack_num;
unsigned short p_file_sock;
}stru_file_req;
typedef struct file_stru{
unsigned char rec_head[2];
unsigned char rec_pro;
unsigned char file_mode;
unsigned char file_path[128];
// unsigned char sorc_path[128];
unsigned long file_len;
unsigned long pack_len;
unsigned short p_file_sock;
unsigned char cu;
}stru_file;
#pragma pack ()
#define f_mis 1 //传输不成功,重传
#define f_ok 2 //该包传输成功
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?