遍历指定窗体的子窗体、跨进程读取其文本框中的内容

本文介绍了一种通过遍历Windows记事本窗体来读取文本内容的方法。使用了FindWindow、GetWindow等API函数定位到记事本的文本编辑区域,并通过发送WM_GETTEXT消息获取该区域内的文本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//示例:遍历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);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值