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

📄 mainunit.pas

📁 用delphi开发的短信群发平台
💻 PAS
字号:
unit MainUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, OoMisc, AdPort;

type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    LabeledEdit1: TLabeledEdit;
    Label1: TLabel;
    LabeledEdit2: TLabeledEdit;
    Button1: TButton;
    ApdComPort1: TApdComPort;
    Button2: TButton;
    Memo1: TMemo;
    procedure Button2Click(Sender: TObject);
    procedure ApdComPort1PortClose(Sender: TObject);
    procedure ApdComPort1PortOpen(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ApdComPort1TriggerAvail(CP: TObject; Count: Word);
    procedure Button1Click(Sender: TObject);
    procedure ApdComPort1Trigger(CP: TObject; Msg, TriggerHandle,
      Data: Word);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
begin
  ApdComPort1.Open := false;
  ApdComPort1.ComNumber :=  ComboBox1.ItemIndex + 1;
  ApdComPort1.Open := True;

end;

procedure TForm1.ApdComPort1PortClose(Sender: TObject);
begin
  Memo1.Lines.Add('PortClose')
end;

procedure TForm1.ApdComPort1PortOpen(Sender: TObject);
begin
  Memo1.Lines.Add('PortOpen')
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if ApdComPort1.Open then
    ApdComPort1.Open := false;

end;

procedure TForm1.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
var str : string;
  n : integer;
begin
  for n := 1 to count do
    str := str + ApdComPort1.GetChar();

  Memo1.Lines.Add(str);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if ApdComPort1.Open then
  begin
    Memo1.Lines.Add('AT');
    ApdComPort1.Output := 'AT'+^M;

    Memo1.Lines.Add('AT+CMGF=1');
    ApdComPort1.Output := 'AT+CMGF=1'+^M;

    Memo1.Lines.Add('AT+CSMP=17,167,0,0');
    ApdComPort1.Output := 'AT+CSMP=17,167,0,0'+^M;

    Memo1.Lines.Add('AT+CSCS=GSM');
    ApdComPort1.Output := 'AT+CSCS=GSM'+^M;

    Memo1.Lines.Add('AT+CMGS='+LabeledEdit1.Text);
    ApdComPort1.Output := 'AT+CMGS='+LabeledEdit1.Text+^M;

    Memo1.Lines.Add(LabeledEdit2.Text);
    ApdComPort1.Output := LabeledEdit2.Text+^Z;

  end;
  
end;

procedure TForm1.ApdComPort1Trigger(CP: TObject; Msg, TriggerHandle,
  Data: Word);
begin
    case Msg of
    APW_TRIGGERDATA :
      ApdComPort.PutString('myname');
    APW_TRIGGERAVAIL :
      {extract and display/process the data}
      for I := 1 to Data do begin
        C := ApdComPort.GetChar;
        ...process data
      end;
    APW_TRIGGERTIMER :
      {timed out waiting for login prompt, handle error}
      ...
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -