📄 main.~pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, ScktComp, Sockets, ExtCtrls, Menus,
ImgList, TrayIcon;
type
TForm1 = class(TForm)
ServerSocket: TServerSocket;
R_Memo: TMemo;
StatusBar1: TStatusBar;
Timer1: TTimer;
Button1: TButton;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
ImageList1: TImageList;
N1: TMenuItem;
N3: TMenuItem;
TrayIcon1: TTrayIcon;
procedure FormCreate(Sender: TObject);
procedure ServerSocketClientRead(Sender: TObject;
Socket: TCustomWinSocket);
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
temp_clicSocket: TCustomWinSocket;
{ Private declarations }
public
{ Public declarations }
end;
{ TFileServerThread }
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
ServerSocket.Close;
ServerSocket.Port := 5678;
ServerSocket.Open;
end;
procedure TForm1.ServerSocketClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
temp_text: string;
begin
temp_text := Socket.ReceiveText;
temp_clicSocket:=Socket;
if Length(temp_text) > 0 then
begin
R_Memo.Lines.Add(temp_text);
if Copy(temp_text,1,10)='0017100101' then//签到00171001010012011
Socket.SendText('00111001010');
if temp_text='00081004' then//签退
Socket.SendText('00111004010');
//暂停
if temp_text='00081002' then
Socket.SendText('00111002010');
//恢复
if temp_text='00081003' then
begin
Socket.SendText('00111003010');
//Socket.SendText('002810061113834660306077425599010');0031100608123456780887654321010
end;
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
StatusBar1.Panels[2].Text:=DateTimeToStr(Now);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
//003010060812345678088765432100
//002810060812345678088765432100
//前面4个字节是总长度,接着的4个字节是功能码(1006),
//接着2个字节是主叫号码长度(08),然后8个字节是主叫号码,
//后面两个字节是被叫号码长度(08),接着8个字节是被叫号码,接着两个0.
try
if temp_clicSocket.Connected then;
temp_clicSocket.SendText('003310061113834660306077425599010');
except
Application.MessageBox('没有坐席登陆!', '错误', MB_OK + MB_ICONSTOP);
end;
end;
procedure TForm1.N1Click(Sender: TObject);
begin
// SetForegroundWindow(application.handle);
//ShowWindow(application.handle, SW_RESTORE);
try
if temp_clicSocket.Connected then;
temp_clicSocket.SendText('003310061113834660306077425599010');
except
Application.MessageBox('没有坐席登陆!', '错误', MB_OK + MB_ICONSTOP);
end;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -