用C#能在QQ窗体里发送消息吗?
查了好多文章都无法完美解决在QQ窗体里发送消息。但是看有些桌面应用是可以给在QQ窗体里发送消息的。
看到有用AumotaionElement方式实现,我也尝试写了一下,能发现窗体但是无法找到文本框和发送消息。
用以上代码能找到窗体,但是无法找到里面的文本框和按钮
有什么好方法能实现那???请各位大神不吝赐教。
看到有用AumotaionElement方式实现,我也尝试写了一下,能发现窗体但是无法找到文本框和发送消息。
AutomationElement aeDeskTop = AutomationElement.RootElement;
// 不设定查找条件,列出所有窗体
this.textBox1.AppendText("\r\n");
AutomationElementCollection elementCollection = aeDeskTop.FindAll(TreeScope.Children, Condition.TrueCondition);
foreach (AutomationElement frm in elementCollection)
{
this.textBox1.AppendText(string.Format("窗体名称:{0}\r\n", frm.Current.Name));
if (frm.Current.Name == "豆干") //这里是打开的QQ窗体的名称
{
elementCollection = frm.FindAll(TreeScope.Subtree,
Condition.TrueCondition);
foreach (AutomationElement control in elementCollection)
{
this.textBox1.AppendText(string.Format("控件id:{0}\r\n", control.Current.AutomationId));
}
}
}
用以上代码能找到窗体,但是无法找到里面的文本框和按钮
//从网上找到的输入文本内容
System.Windows.Forms.SendKeys.SendWait(textBox2.Text);
//从网上找到的点击发送消息按钮
InvokePattern ipClickButton1 = (InvokePattern)aeAllEdit1[t].GetCurrentPattern(InvokePattern.Pattern);
ipClickButton1.Invoke();
//这两步都无法实现
有什么好方法能实现那???请各位大神不吝赐教。
...全文
相关推荐
QQ消息定时发送器
因QQ消息对话框中的控件是绘制的,所以很难找到控件句柄。刚好自己有需求,就写了一个模拟键盘的定时发送器。在QQ2012版本中测试通过。
通过C# Winform实现与QQ的交互及消息发送
本文还有配套的精品资源,点击获取 简介:本文将探讨如何使用C# Winform应用程序与本地已登录QQ程序交互,发送消息给指定好友。首先,介绍Winform和C#基础知识,然后讲解调用外部程序和开机启动功能的实现。实现过程中,我们需要通过查询注册表或环境变量获取QQ程序路径,使用 Process.Start() 方法启动QQ,并利用 SendKeys ...
仿QQ2008聊天程序(c#源码)
仿QQ2008聊天程序(c#源代码)
C# QQ消息发送器源码,调用系统API
C# QQ消息发送器 源码 调用系统API实现键盘事件,纯属菜鸟制作
QQ自动发送消息器
QQ自动发送消息 QQ机器人,打开QQ聊天窗口,然后捕获QQ窗口,再进行发送


