//通过标题模糊搜索
//
HWND hWndWindow = objRemote.GeneralSearchWindow(_T("管理控制台"));
if (hWndWindow )
{
if (((CWnd)hWndWindow).IsIconic())
{
((CWnd)hWndWindow).ShowWindow(SW_RESTORE);
}
::SetForegroundWindow(hWndWindow);
DWORD FormThreadID = GetCurrentThreadId();
DWORD CWndThreadID = GetWindowThreadProcessId(hWndWindow,NULL);
AttachThreadInput(CWndThreadID,FormThreadID,true);
Sleep(1000);
HWND hwndName = ::GetFocus();
// m_edit1 = (CString)hwndName;
::PostMessage(hwndName, WM_CHAR, 'a', 0);
::PostMessage(hwndName, WM_CHAR, 'd', 0);
::PostMessage(hwndName, WM_CHAR, 'm', 0);
::PostMessage(hwndName, WM_CHAR, 'i', 0);
::PostMessage(hwndName, WM_CHAR, 'n', 0);
Sleep(1000);
// ::SendDlgItemMessage(hWndWindow, ((CWnd)hwndName).GetDlgCtrlID(),WM_KEYDOWN, VK_TAB,0);
::PostMessage(hwndName, WM_KEYDOWN, VK_TAB, 1);
// ::PostMessage(hwndName, WM_KEYUP, VK_TAB, 0);
// ::PostMessage(hwndName,WM_KILLFOCUS,this->m_hWnd,0);
::SetForegroundWindow(this->m_hWnd);
::SetForegroundWindow(hWndWindow);
// ::SendMessage(hwndName, WM_KEYUP, VK_TAB, 0);
// //::PostMessage(hwndName, WM_KEYUP, VK_TAB, 0);
// AttachThreadInput(CWndThreadID,FormThreadID,false);
// AttachThreadInput(CWndThreadID,FormThreadID,true);
// ::SetForegroundWindow(hWndWindow);
hwndName = ::GetFocus();
Sleep(1000);
::PostMessage(hwndName, WM_CHAR, 'b', 0);
// AttachThreadInput(CWndThreadID,FormThreadID,false);
// ::PostMessage(::GetFocus(), WM_KEYDOWN, VK_TAB, 0);
// HWND hwndOK = ::GetFocus();
// ::PostMessage(::GetFocus(), WM_KEYDOWN, VK_SPACE, 0);
::SetForegroundWindow(this->m_hWnd);
::SetForegroundWindow(hWndWindow);
CString strTitle = _T("确定(&O)");
HWND hWndBtnOK = ::FindWindowEx(hWndWindow, NULL, NULL, (LPCSTR)strTitle);
// // SendDlgItemMessage(m_hWndRemoteDesktop,GetDlgCtrlID(m_hWndRemoteDesktop),WM_CHAR,'s',0);
if (hWndBtnOK)
{
::SendMessage(hWndBtnOK,BM_CLICK,0,0);
// CloseHandle(hWndBtnOK);
// hWndBtnOK = NULL;
}
不知道为什么,确定按钮,通过FindWindowEx查询总返回空,悲剧