C#查找某些特殊应用程序的窗体句柄
查找窗体句柄用findwindow,findwindowex等系统API.但是,有些应用程序就是查找不到. 比如说QQ2009,能够找到它主窗体的句柄.但是找不到比如 聊天输入窗体的句柄. 用SPy++也找不到.该怎么办呢?
举个例子好吗?比如怎么用C#找QQ2009的聊天输入框句柄 --------------------编程问答-------------------- 因为根本就不是标准的Windows窗口,例如DirectX,WPF,根本就没有句柄的概念,当然找不到了 --------------------编程问答-------------------- QQ2009的窗体是自己画的.
你当然找不到. --------------------编程问答-------------------- 那比如我想操作它们.还是用QQ举例子.
想把QQ2009的聊天窗口发送一个键,该怎么办呢 --------------------编程问答-------------------- 本人是C#菜鸟建了C#.NET交流群,方便自己也方便大家学习,群号:86344209,欢迎大家加入! --------------------编程问答--------------------
不要去想Windows那一套了,SendMessage,句柄都没有,还发什么消息?
去看看QQ有没有留下什么接口吧。
总之,不是一件容易的事,知道其窗口是用DirectX技术(或类似技术)画出来的就行了。 --------------------编程问答-------------------- 你窗体得不到,可是你的QQ信息是可以截得到的吧…… --------------------编程问答-------------------- 比如我想做个QQ批量登陆器.
怎么样让QQ号码和密码输入到 QQ的号码窗口和密码窗口,然后再按确定.如果无法找到他的句柄,又该怎么办?请大家帮忙 --------------------编程问答-------------------- 自己顶个.麻烦大家帮忙 --------------------编程问答-------------------- 只是发送按键的话....使用SendKeys.Send就行了.
前提是要保证QQ对应的输入框能获得焦点(发送tab来切换) --------------------编程问答--------------------
这种方法我知道.请问还有没有别的方法. 用作QQ输入框只是一个例子. --------------------编程问答-------------------- 没有句柄,什么都是空谈,怎么能发消息? --------------------编程问答-------------------- public static bool SearchAllForm(string FormName)
{
for (int i = 0; i < Application.OpenForms.Count; i++)
{
if (Application.OpenForms[i].Name == FormName)
{
return true;
}
}
return false;
}
补充:.NET技术 , C#