VC++实现QQ消息群发
来源:互联网 发布:dnv轴系校中软件 编辑:程序博客网 时间:2024/04/28 00:20
void QQSendMsg(CString strMsg,BOOL bCloseWindow)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState( ));//切换回调用程序
CString str;
CWnd* pMainWnd = AfxGetMainWnd()->GetWindow(GW_HWNDFIRST);
while (pMainWnd)
{
HWND hWnd,hNext;
CWnd* pChildWnd = NULL;
CWnd *pDlgWnd = NULL;
hWnd = pMainWnd->m_hWnd;
pMainWnd->GetWindowText(str);
if(str.Find (L"交谈")>-1 || str.Find (L"群")>-1)//找到聊天主窗口Begin
{
hWnd=::FindWindowEx(pMainWnd->m_hWnd,NULL,L"#32770",NULL);
pDlgWnd = CWnd::FromHandle(hWnd);
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,NULL,L"AfxWnd42",NULL);
while(hWnd)//找消息填写控件
{
pChildWnd=CWnd::FromHandle(hWnd);
hNext = ::FindWindowEx(pChildWnd->m_hWnd,NULL,L"RICHEDIT20A",NULL);
if(hNext)
{
break;
}
else
{
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,hWnd,L"AfxWnd42",NULL);
}
}
if(hNext){//找到消息填写控件
CRichEditCtrl* pRich=(CRichEditCtrl*)(CWnd::FromHandle(hNext));
pRich->ReplaceSel (strMsg);//填上将要发送的内容
}else return;
//找消息发送按钮
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,NULL,NULL,NULL);
while (hWnd)
{
pChildWnd=CWnd::FromHandle(hWnd);
//CWnd *pChildWnd=CWnd::FromHandle(hWnd);
pChildWnd->GetWindowText(str);
if(str.Find (L"发送")>-1)
{
pChildWnd->SendMessage (BM_CLICK);//发送
//return;//退出
break;
}
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,hWnd,NULL,NULL);
}
if(TRUE == bCloseWindow)
{
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,NULL,NULL,NULL);
while (hWnd)
{
pChildWnd=CWnd::FromHandle(hWnd);
//CWnd *pChildWnd=CWnd::FromHandle(hWnd);
pChildWnd->GetWindowText(str);
if(str.Find (L"关闭")>-1)
{
pChildWnd->SendMessage (BM_CLICK);//关闭
//return;//退出
break;
}
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,hWnd,NULL,NULL);
}
}
//return;
}//找到聊天主窗口End
pMainWnd = pMainWnd->GetWindow(GW_HWNDNEXT); //继续找
}//While
}
void QQSendMessage(CWnd * pDlgMainWnd ,CString strMsg,BOOL bCloseWindow)
{
CString str;
CWnd* pMainWnd = pDlgMainWnd->GetWindow(GW_HWNDFIRST);
while (pMainWnd)
{
HWND hWnd,hNext;
CWnd* pChildWnd = NULL;
CWnd *pDlgWnd = NULL;
hWnd = pMainWnd->m_hWnd;
pMainWnd->GetWindowText(str);
if(str.Find (L"交谈")>-1 || str.Find (L"群")>-1)//找到聊天主窗口Begin
{
hWnd=::FindWindowEx(pMainWnd->m_hWnd,NULL,L"#32770",NULL);
pDlgWnd = CWnd::FromHandle(hWnd);
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,NULL,L"AfxWnd42",NULL);
while(hWnd)//找消息填写控件
{
pChildWnd=CWnd::FromHandle(hWnd);
hNext = ::FindWindowEx(pChildWnd->m_hWnd,NULL,L"RICHEDIT20A",NULL);
if(hNext)
{
break;
}
else
{
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,hWnd,L"AfxWnd42",NULL);
}
}
if(hNext){//找到消息填写控件
CRichEditCtrl* pRich=(CRichEditCtrl*)(CWnd::FromHandle(hNext));
pRich->ReplaceSel (strMsg);//填上将要发送的内容
}else return;
//找消息发送按钮
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,NULL,NULL,NULL);
while (hWnd)
{
pChildWnd=CWnd::FromHandle(hWnd);
//CWnd *pChildWnd=CWnd::FromHandle(hWnd);
pChildWnd->GetWindowText(str);
if(str.Find (L"发送")>-1)
{
pChildWnd->SendMessage (BM_CLICK);//发送
//return;//退出
break;
}
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,hWnd,NULL,NULL);
}
if(TRUE == bCloseWindow)
{
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,NULL,NULL,NULL);
while (hWnd)
{
pChildWnd=CWnd::FromHandle(hWnd);
//CWnd *pChildWnd=CWnd::FromHandle(hWnd);
pChildWnd->GetWindowText(str);
if(str.Find (L"关闭")>-1)
{
pChildWnd->SendMessage (BM_CLICK);//关闭
//return;//退出
break;
}
hWnd=::FindWindowEx(pDlgWnd->m_hWnd,hWnd,NULL,NULL);
}
}
//return;
}//找到聊天主窗口End
pMainWnd = pMainWnd->GetWindow(GW_HWNDNEXT); //继续找
}//While
- VC++实现QQ消息群发
- Visual C++ 实现QQ消息群发
- 利用Visual C++ 实现QQ消息群发
- 利用Visual C++ 实现QQ消息群发
- QQ消息群发器实现原理及核心代码
- 转帖 群发qq消息思路
- python QQ群发剪贴板消息
- 给QQ群发送消息
- 手机自动群发QQ消息自动回复消息群发
- QQ群发消息的笨办法
- QQ即时通讯消息群发例子,QQ机器人开发学习资料
- QQ群发/QQ群发器/程序源代码/VS2010/VS2012/VC/MFC
- 用vc实现对qq发送按钮消息的截获
- 用vc实现qq消息输入框内容的获取
- 终极qq消息群发大师 v2.51 下载
- 中京安qq消息群发精灵 v3.6 官方
- delphi写QQ消息群发(模拟按键精灵)
- 手机QQ公众号亿级消息实时群发架构
- 虚继承和虚基类本质
- 苹果mac os 远程登录windows
- Groovy的闭包
- jBPM-4.4:基于decision和event-listener的一个例子
- define宏定义和const常量定义之间的区别
- VC++实现QQ消息群发
- 英语--听说读写
- Android下如何使用硬键盘快捷键。
- double运算会比float慢吗?
- Google Search Widget, Google Search ap, Globe Search ap
- 编程备忘录 --- Cygwin下Telnet编程的问题
- 深入理解回溯法
- 同济大学软件学院万院长谈择业
- 诺基亚与微软结盟事件杂谈