博客日历
2025年06月 | ||||||
一 | 二 | 三 | 四 | 五 | 六 | 七 |
26 | 27 | 28 | 29 | 30 | 31 | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
存档
2025年03月 2024年
03月 04月 05月 2021年
01月 02月 11月 12月 2020年
02月 03月 04月 05月 06月 07月
09月 2018年
09月 2017年
01月 02月 07月 2016年
01月 04月 07月 08月 11月 12月
2015年
01月 02月 03月 05月 09月 10月
11月 2014年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2013年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2012年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2011年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2010年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2009年
03月 04月 05月 06月 07月 08月
09月 10月 11月 12月
遍历指定窗体的子窗体、跨进程读取其文本框中的内容
//示例:遍历Windows记事本窗体,读取文本内容
BOOLGetNotepadText(OUTCString& csText)
BOOLGetNotepadText(OUTCString& csText)
{
//记事本的窗口类名是Notepad
HWND_hWnd=::FindWindow("Notepad",NULL);
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);
上一篇: 宝宝生日
下一篇: 结束指定窗体hWnd所属的进程
分类:Win32/C++ 查看次数:7797 发布时间:2010/4/1 11:49:01