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

📄 sample4.pas

📁 MR320数据采集程序
💻 PAS
字号:
unit Sample4;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls,
  OnlineDll, OnlineHandle;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
  Result: Word;
  szResult: String[15];
begin
  if(IsConnected=False) then
   begin
    Result := Online_SetupEx(pCommData, 1, Word('7'), Word('1'), Word('N'));
    if(Result<>0) then
    Result := Online_Connect(pCommData);
    IsConnected := Result<>0;
    Str(Result, szResult);
    szResult[Length(szResult)+1]:=Chr(0);
    Application.MessageBox(@szResult[1], 'Result', MB_OK);
   end
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  if(IsConnected=True ) then
   begin
    Online_Disconnect(pCommData);
    IsConnected:=False;
    Application.MessageBox('0', 'Result', MB_OK);
   end
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  Result:   Word;
  F:        File Of Byte;
  NameStr:  String;
  TextAsc:  Array [1..120] Of Byte;
  TextLen:  Byte;
  Finished: Boolean;
begin
  if(IsConnected)then
   begin
    AssignFile(F, 'C:\OnlineCommManager\Delphi\Sample.txt');
    {$I-} Reset(F); {$I+}
    if IOResult = 0 then
     begin
      NameStr  := 'Sample.txt';
      Result   := Online_ESC_L(pCommData, Word('A'), @NameStr[1], 10);
//    Suppose Result = 1
      Finished := False;
      Repeat
       TextLen := 0;
       while (Not Eof(F))And(TextLen<120) Do
        Begin
         TextLen:=TextLen+1;
         {$I-} Read(F, TextAsc[TextLen]); {$I+}
        End;
       if(TextLen>0)then
        begin
         Result := Online_ESC_Y(pCommData, Word('A'), @TextAsc, TextLen);
//       Suppose Result = CmdACK (4)
         Online_ACK(pCommData, Word('A'))
        end
       else
        begin
         Result := Online_ESC_Z(pCommData, Word('A'));
//       Suppose Result = CmdACK (4)
         Online_ACK(pCommData, Word('A'));
         Finished:=True;
        end;
      Until Finished;
      {$I-} CloseFile(F); {$I+}
      Application.MessageBox('File Download', 'Sample.Txt', MB_OK);
     end
   end
end;

end.

⌨️ 快捷键说明

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