📄 unit1.h
字号:
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ScktComp.hpp>
#include <ComCtrls.hpp>
#include <Menus.hpp>
#include <ExtCtrls.hpp>
#include <ImgList.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TServerSocket *ServerSocket1;
TStatusBar *StatusBar1;
TMainMenu *MainMenu1;
TMenuItem *Connect1;
TClientSocket *ClientSocket1;
TMenuItem *Connect2;
TMenuItem *Exit1;
TPanel *Panel1;
TPanel *Panel2;
TMemo *Memo1;
TLabel *Label1;
TLabel *Label2;
TLabel *Label3;
TLabel *Label4;
TButton *Button1;
TComboBox *ComboBox1;
TButton *Button2;
TEdit *Edit1;
TEdit *Edit2;
TButton *Button3;
TPanel *Panel3;
TListView *ListView1;
TButton *Button5;
TImageList *ImageList1;
void __fastcall ServerSocket1ClientRead(TObject *Sender,
TCustomWinSocket *Socket);
void __fastcall Bind_Resp();
void __fastcall Submit_Resp();
void __fastcall UnBind_Resp();
void __fastcall Deliver();
void __fastcall ServerSocket1ClientConnect(TObject *Sender,
TCustomWinSocket *Socket);
void __fastcall Connect1Click(TObject *Sender);
void __fastcall ClientSocket1Connect(TObject *Sender,
TCustomWinSocket *Socket);
void __fastcall Exit1Click(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall ClientSocket1Error(TObject *Sender,
TCustomWinSocket *Socket, TErrorEvent ErrorEvent,
int &ErrorCode);
void __fastcall Button2Click(TObject *Sender);
void __fastcall Button3Click(TObject *Sender);
void __fastcall ClientSocket1Read(TObject *Sender,
TCustomWinSocket *Socket);
void __fastcall Button5Click(TObject *Sender);
private:
bind(); // User declarations
public: // User declarations
int sequence;
int counter;
String Server;
__fastcall TForm1(TComponent* Owner);
//void set_recv_head(_SGIP_HEAD *head);
void recv(AnsiString data);
int alternate(int input);
void swap(char * a, char * b);
void head(int command_type,int length);
void additem(int id, int command, AnsiString content, int index);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#define SGIP_BIND 0x1
#define SGIP_BIND_RESP 0x80000001
#define SGIP_UNBIND 0x2
#define SGIP_UNBIND_RESP 0x80000002
#define SGIP_SUBMIT 0x3
#define SGIP_SUBMIT_RESP 0x80000003
#define SGIP_DELIVER 0x4
#define SGIP_DELIVER_RESP 0x80000004
#define INT_MAX 10000
typedef struct
{
int Message_Length; //消息的总长度(字节)
int Command_ID; //命令ID
int Sequence_Number[3]; //序列号;此处为12个字节
}_SGIP_HEAD;
typedef struct
{
unsigned char Login_Type; //一个字节整型,登录类型;
//1:SP向SMG建立的连接,用于发送命令
//2:SMG向SP建立的连接,用于发送命令
char Login_Name[16]; //服务器端给客户端分配的登录名
char Login_Password[16]; //服务器端和Login Name对应的密码
char Reserve[8]; //保留,扩展用
}_SGIP_BIND;
typedef struct
{
unsigned char Result; //Bind执行命令是否成功。0:执行成功其它:错误码
char Reserve[8]; //保留,扩展用
}_SGIP_BIND_RESP;
typedef struct
{
//无消息体
}_SGIP_UNBIND;
typedef struct
{
//无消息体
}_SGIP_UNBIND_RESP;
typedef struct //长度为9
{
unsigned char Result; //Submit命令是否成功接收。0:接收成功其它:错误码
char Reserve[8]; //保留,扩展用
}_SGIP_SUBMIT_RESP;
typedef struct //
{
char UserNumber[21]; //发送短消息的用户手机号,手机号码前加"86"国别标志
char SPNumber[21]; //SP的接入号码
unsigned char TP_pid; //GSM协议类型。详细解释请参考GSM03.40中的9.2.3.9
unsigned char TP_udhi; //GSM协议类型。详细解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐
unsigned char MessageCoding; //短消息的编码格式。0:纯ASCII字符串3:写卡操作4:
//二进制编码8:UCS2编码15: GBK编码其它参见GSM3.38第4节:SMS Data Coding Scheme
int MessageLength; //短消息的长度
AnsiString MessageContent; //长度是短消息的内容的长度
char Reserve[8]; //保留,扩展用
}_SGIP_DELIVER;
typedef struct
{
unsigned char Result; //Deliver命令是否成功接收。0:接收成功其它:错误码
char Reserve[8]; //保留,扩展用
}_SGIP_DELIVER_RESP;
_SGIP_HEAD sgip_head,r_Message_Head;
_SGIP_BIND sgip_bind;
_SGIP_BIND_RESP sgip_bind_resp;
_SGIP_SUBMIT_RESP sgip_submit_resp;
_SGIP_DELIVER sgip_deliver;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -