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

📄 unit1.pas

📁 最简单的进程之间通讯
💻 PAS
字号:
unit Unit1;

interface

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

type
  TForm12 = class(TForm)
    edt1: TEdit;
    btn1: TButton;
    edt2: TEdit;
    lbl1: TLabel;
    procedure btn1Click(Sender: TObject);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure Mymessage(var t:TWmCopyData);message WM_COPYDATA;
  end;

var
  Form12: TForm12;

implementation

{$R *.DFM}

procedure TForm12.Mymessage(var t: TWmCopyData);
begin
  edt1.text:=StrPas(t.CopyDataStruct^.lpData);
end;

procedure TForm12.btn1Click(Sender: TObject);
var
  ds: TCopyDataStruct;
  hd: THandle;
begin
  ds.cbData := Length (edt2.Text) + 1;
  GetMem (ds.lpData, ds.cbData ); //为传递的数据区分配内存
  StrCopy (ds.lpData, PChar (edt2.Text));

  Hd := FindWindow (nil, 'Server'); // 获得接受窗口的句柄  Form123代表的是窗体的caption
  if Hd > 0 then
    SendMessage (Hd, WM_COPYDATA, Handle,
                 Cardinal(@ds)) // 发送WM_COPYDATA消息
  else
    ShowMessage ('目标窗口没找到!');
    FreeMem (ds.lpData); //释放资源

end;

procedure TForm12.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  ReleaseCapture;
  SendMessage(Handle,WM_SYSCOMMAND,$f012,0);
end;

end.

⌨️ 快捷键说明

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