今天闲来无事,想做个qq的自动登录程序,所学到得东西如下:
1、从文件中读取一行:getline(ifstream, string); 注意包含<string>
2、获取窗口句柄:FindWindow,注意:此函数需在窗口创建成功后调用,否则找不到句柄,调用CreateProcess后需要调用Sleep,等待窗口被创建成功后才可调用FindWindow,
3、获取窗口类名:GetClassName
4、获取窗口标题或文本:GetWindowText
5、获取子窗口句柄:FindWindowEx,可用户获取窗口中控件的句柄。
6、设置窗口标题或文本:SetWindowText
7、产生键盘消息:keybd_event
8、获取与特定窗口有关系的窗口句柄GetWindow:可以通过此函数用FindWindow得到的句柄轮询其他句柄,在寻找句柄时有用。
不过最终没有成功做成自动登录程序,因为TX封装了登陆控件,无法用SetWindowText改变输入框中的内容。
解决方案,或许可以用keybd_event将所有数字和字母转换为按键消息,模拟真正的登录过程, 这样应该可行。