https://blog.51cto.com/bigpower/113711

delphi 发送Windwos消息控制按钮

 

  1.  
    procedure TfrmMain.btnSendClick(Sender: TObject);
  2.  
    var
  3.  
    hCalc, h1: Cardinal;
  4.  
    begin
  5.  
    WinExec('calc', SW_SHOWNORMAL);//运行计算器
  6.  
    hCalc := FindWindow('SciCalc', nil);
  7.  
    //查找计算器主窗口句柄,通过Spy++可查看到类名等
  8.  
     
  9.  
    h1 := FindWindowEx(hCalc, 0, 'Button', '9');
  10.  
    //查找按钮1的句柄,通过Spy++可查看到各种控件及他们的父子、兄弟关系
  11.  
     
  12.  
    SendMessage(hCalc, WM_COMMAND, MakeWParam(GetDlgCtrlID(h1), BN_CLICKED), h1)
  13.