如何得到某一个窗口的文本框的句柄,并写入相应的值

stevenpeng 2008-03-24 03:19:56
比如得到QQ上面的文本框,并写入相应的值
...全文
251 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lake_cx 2008-03-25
  • 打赏
  • 举报
回复
Delphi做的Label不是窗体,没有Handle,你就不要想了
stevenpeng 2008-03-25
  • 打赏
  • 举报
回复
不是QQ,指是举例而已.
现在急于了解,如何取一个文本框或LABEL的值,并设置一个文本框的值
lake_cx 2008-03-25
  • 打赏
  • 举报
回复
看了楼上说的,我就像,是不是当焦点在QQ密码框时,连DirectInput都会失效。。。
jameshooo 2008-03-25
  • 打赏
  • 举报
回复
如果想控制QQ的登录密码框,就别费心了,QQ使用了一个第三方的虚拟键盘驱动,输入信息是加密且不可跟踪的,即使找到密码窗体普通方式也控制不了,防的就是想干坏事的人。
scq2099yt 2008-03-25
  • 打赏
  • 举报
回复
SPY++
TeddyGe 2008-03-24
  • 打赏
  • 举报
回复
具体思想呢是 先找到QQ这个窗口句柄, 再枚举这个窗口下的所有控件 下边就看你的想法了. 想找到什么就自己决定了.


BOOL CALLBACK EnumChildProc(HWND hwnd, LPARAM lParam);

void CTest_ConnectDlg::OnBnClickedButton6()
{
CWnd *pWnd = FindWindow(NULL, "DIALOG");
if (pWnd != NULL)
{
EnumChildWindows(pWnd->GetSafeHwnd(), EnumChildProc, 0) ;
}

}


BOOL CALLBACK EnumChildProc(HWND hwnd, LPARAM lParam)
{

CString cstrText ;

//我的是根据控件上的文件来找想要的控件
GetWindowText(hwnd, cstrText.GetBuffer(50), 50) ;
if ( cstrText == "好友列表" )
{

}

return TRUE ;
}
cnzdgs 2008-03-24
  • 打赏
  • 举报
回复
似乎很多人在盯着QQ啊。
先用SPY++查出从主窗口到目标控件的各层控件的类名和次序。在程序中先FindWindow找出主窗口,然后再用FindWindowEx逐层找出控件,最后向控件发WM_SETTEXT消息。
iyranly 2008-03-24
  • 打赏
  • 举报
回复
HWND WindowFromPoint(
POINT Point // point
);

获得控件的HWND后,就可以
BOOL SetWindowText(
HWND hWnd, // handle to window or control
LPCTSTR lpString // title or text
);

在这个过程中你可能还需要SetCapture(true);

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧