//示例:遍历Windows记事本窗体,读取文本内容
BOOLGetNotepadText(OUTCString& csText)
{
//记事本的窗口类名是Notepad
HWND_hWnd=::FindWindow("Notepad",NULL);
//获取窗体_hWnd的子窗体
HWNDhChildWnd = ::GetWindow(_hWnd, GW_CHILD);
while(hChildWnd!=NULL)
{
//获取窗口类名
charszClassName[MAX_PATH];
::GetClassName(hChildWnd, szClassName, MAX_PATH);
//如果是文本框(Edit类)
if(strcmp("Edit",szClassName)==0)
{
//读取文本框中的文本
charszText[MAX_PATH];
SendMessage(hChildWnd,WM_GETTEXT,(WPARAM)MAX_PATH,(LPARAM)szText);
csText=szText;
returnTRUE;
}
//继续访问下一个子窗体
hChildWnd = ::GetNextWindow(hChildWnd, GW_HWNDNEXT);
}
returnFALSE;
}
//使用方法
CStringcs_txt;
GetNotepadText(cs_txt);
AfxMessageBox(cs_txt);
遍历指定窗体的子窗体、跨进程读取其文本框中的内容
最新推荐文章于 2023-03-08 12:25:36 发布