15,979
社区成员
发帖
与我相关
我的任务
分享
while( 1 )
{
HWND hwnd = ::FindWindow( NULL,"Microsoft Office Outlook" );// = outlookwnd->GetSafeHwnd();
if( hwnd==NULL ){
::Sleep(500);
}else{
SendMessage( hwnd,WM_COMMAND,MAKEWPARAM(IDC_YESBT,BN_CLICKED),0 );
//::PostMessage( hwnd1,WM_LBUTTONDOWN,0,MAKELPARAM(425,450) );
//SetCursorPos( 425,450 );
::Sleep(500);
//::SendMessage( hwnd,WM_LBUTTONDOWN,0,MAKELPARAM(425,450) );
//mouse_event( MOUSEEVENTF_RIGHTDOWN | MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0 );
}
}
/****************************************************************************
获取主窗口下某个子窗口的窗口句柄
参数1:最顶层父窗口
参数2:控件ID,可使用spy++(VS2008版本) 查看
****************************************************************************/
static
HWND FindControlWnd(HWND ParentWnd,DWORD ControlID)
{
HWND hChild = ::GetWindow(ParentWnd, GW_CHILD);
for(; hChild!=NULL ; hChild=::GetWindow(hChild,GW_HWNDNEXT))
{
//判断是否为需要的控件
if ( GetDlgCtrlID(hChild) == ControlID )
return hChild;
HWND FindWnd=FindControlWnd(hChild,ControlID);
if (FindWnd)
return FindWnd;
}
return NULL;
}
HWND hwnd = ::FindWindow( NULL,"Microsoft Office Outlook" );
HWND hButton = ::FindWindowEx(hwnd, NULL, ....); // 找到Button的HWND
PostMessage(hwnd, WM_COMMAND, MAKEWPARAM(IDC_YESBT,BN_CLICKED), (LPARAM)hButton);