如果别人的程序在运行
GetWindow可以得到它的句柄
curHnd:=GetWindow(handle,GW_HWND,FIRST);
获得他的按钮句柄
btnHnd:=FindWindow(curHnd,'button',nil);
对于要给这个按钮发消息,我不太清楚,你可以用媒体控制试一试
MCIERROR mciSengdString(
                      LPCTSTR lpszCommane,
                      LPTSTR  lpszReturnString,
                      UNIT    cchReturn,
                      HANDLE  hwndCallback
                        );

解决方案 »

  1.   

    实例代码
    var
      Wnd, WndWin: HWND;
      P: TPoint;
      Rect: TRect;
      I: Integer;
    begin
      //找到窗体句柄
      WndWin := FindWindow(PChar('TfrmMain'), nil);
      if WndWin <> 0 then begin
        //获取按钮句柄
        Wnd := FindWindowEx(WndWin, 0, 'TButton', PChar('Button1'));
        //给按钮发消息
        if Wnd <> 0 then
        begin
          Windows.GetClientRect(Wnd, Rect);
          P.X := Rect.Left + 2;
          P.Y := Rect.Top + 2;
          PostMessage(Wnd, WM_LBUTTONDOWN, 0, MakeLParam(P.X, P.Y));
          PostMessage(Wnd, WM_LBUTTONUP, 0, MakeLParam(P.X, P.Y));
        end;
      end;