如何通过想窗口控件发消息模拟点击按键

1.首先获取控件的句柄

使用FindWindow来获取窗口句柄,再通过FindWindowEx来获取控件句柄;

如果知道控件ID的情况下,直接通过GetDlgItem获取句柄

2.获取控件的ID

可以通过GetDlgCtrlID来获取控件的ID,或者通过资源获取

3.发按键消息

SendMessage(hWnd, WM_COMMAND, MAKELONG(nID, BN_CLICKED), (LPARAM)hButton);

实例:

hWnd = ::FindWindow(NULL, _T("测试程序实例"));
  if (hWnd)
  {
   HWND hBtn = ::FindWindowEx(hWnd, NULL, NULL, _T("确定"));
   if (hBtnYes)
   {
    WORD nID = (WORD)::GetDlgCtrlID(hBtn);
    ::SendMessage(hWnd, WM_COMMAND, MAKELONG(nID, BN_CLICKED), (LPARAM)hBtn);
   }
  }

你可能感兴趣的:(command,测试,null)