⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.~pas

📁 利用api函数重新启动一个程序的小程序
💻 ~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 + -