Code Bye

查找QQ登录窗口句柄

 
 IntPtr maindHwnd =FindWindow(null, "QQ"); //获得QQ登陆框的句柄  
                    if (maindHwnd != IntPtr.Zero)
                    {
                        IntPtr childHwnd = FindWindowEx(maindHwnd, IntPtr.Zero, null, "QQEdit");   //获得按钮的句柄  
                        if (childHwnd != IntPtr.Zero)
                        {
                            //SendMessage(childHwnd, BM_CLICK, IntPtr.Zero, null);     //发送点击按钮的消息 
                            IntPtr childHwnd2 = FindWindowEx(maindHwnd, IntPtr.Zero, null, "登录");
                            if (childHwnd2 != IntPtr.Zero)
                            {
                                SendMessage(childHwnd2, BM_CLICK, IntPtr.Zero, null);     //发送点击按钮的消息 
                            }
                            else
                            {
                                MessageBox.Show("没有找到登录按钮");
                            }
                        }
                        else
                        {
                            MessageBox.Show("没有找到子窗口");
                        }
                    }
                    else
                    {
                        MessageBox.Show("没有找到窗口");
                    }   

问题:
现在只可以取到QQEdit窗口句柄
请问如何取到里面的登录按钮(从图中可以看到只到QQEdit,不知为何)?
或是如何直接取到QQEdit时发送回车消息?

没有句柄就是没有句柄,不要以为天下窗体都是Windows API那样用句柄堆出来的
难道那个叫做“传智播客”的培训学校又想在它的(以及csdn的)宣传页上弄一个什么“偷盗QQ通讯”的学员的例子来?
这类“偷盗问题”请最好发到其它论坛。
引用 3 楼 sp1234 的回复:

这类“偷盗问题”请最好发到其它论坛。

小人一个,我只是想做个QQ自动登录器而已,你的想法怎么这么龌龊,别以为别人都和你一样

引用 1 楼 iyomumx 的回复:

没有句柄就是没有句柄,不要以为天下窗体都是Windows API那样用句柄堆出来的

恩,工具里看到是没有,不过怎么能发个回车的命令给QQEdit,这样就可以自动登录了,打开的窗口就不用再点一次了,多谢!

SendMessage(childHwnd, BM_CLICK, IntPtr.Zero, null);这个可以发送回车吗?可以的话这个BM_CLICK值用什么替换?

楼主,那是个图片也说不定吧,是按钮?有可能是骗人的吧,就是防止自动登录这种行为的
楼主,我尝试了一下,飞信的账号框有句柄,密码的和登录也是没有的
听别人说,那个是用户名和密码框是画出来的。
没有那么容易。现在比较漂亮的界面都是DirectUI了。你这种方式是行不通的,因为这个按钮句柄不存在。 用hook技术试试。
你为什么不直接找edit这个句柄 而是找QQ的句柄
20分
而且我已经知道你的QQ号了
80分
引用 10 楼 jiaoshiyao 的回复:

你为什么不直接找edit这个句柄 而是找QQ的句柄

找句柄找到的就是窗口句柄。 窗口上的那些输入框啊、按扭什么的,都是画出来的。 且TX还做了技术保护,所以用hook都不是那么容易.

引用 12 楼 dk385 的回复:

.

。。。控件也有句柄啊。。。
如果控件 也有句柄 那这种方法就行不通了。。

引用 3 楼 sp1234 的回复:

这类“偷盗问题”请最好发到其它论坛。

我看到有好多 你这个头像的人 名字都叫sp1234 头像也一样
但是 昵称不一样
是好多个人使用一些类似的账号 
还是你有特权 一段时间改一个昵称啊

我也想知道啊,头大!sendmessage无法输入密码,只能更改edit的标题
今天我也在模拟键盘输入登录,模拟键盘输入失败而告终.QQ已经不给一般的模拟输入了,可能要更高级的技术,不懂….
引用 11 楼 jiaoshiyao 的回复:

而且我已经知道你的QQ号了

机智,百度QQ登陆器

引用 11 楼 jiaoshiyao 的回复:

而且我已经知道你的QQ号了

呵呵,你又不知道密碼,況且那是不用的號

引用 18 楼 zhangandli 的回复:
Quote: 引用 11 楼 jiaoshiyao 的回复:

而且我已经知道你的QQ号了

呵呵,你又不知道密碼,況且那是不用的號

只是加下QQ骚扰一下你而已

可以先用SetForegroundWindow()设置窗体在最前,然后用SetCursorPos()设置鼠标所在位置,最后用mouse_event()实现点击事件,可以实现楼主要的功能。但是弊端比较多,有点太傻!

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明查找QQ登录窗口句柄