把qq信息用语音读出的几个问题

类别:VC语言 点击:0 评论:0 推荐:

读出qq信息需要涉及到几个问题:

1、就是要利用到microsoft speech sdk 5.1开发包做为文本语音的转换

2、就是如何提取出qq窗口中需要的信息

首先需要把qq信息设定为自动弹出

这样程序可以动态地捕捉到弹出的qq窗口

为其分别开起一个发声线程,或者把信息加到特定的信息队列以便依次读出


 

HWND g_hParantWnd = ::FindWindow(NULL, "查看消息");
 if (g_hParantWnd )
 {  
    m_client=AfxBeginThread(RUNTIME_CLASS   ( CServerThread),THREAD_PRIORITY_ABOVE_NORMAL,0,0,NULL );
  ((CServerThread*)m_client)->ThreadProc (g_hParantWnd);
    ThreadProc,&g_hParantWnd, CREATE_SUSPENDED,NULL);
}


 另外需要说明的是各个重要的信息窗口的id号


 

HWND hChildQQCode = ::GetDlgItem(g_hParantWnd, 223);//发信人的id
HWND hChildQQName = ::GetDlgItem(g_hParantWnd, 285);//发信人的昵称
HWND hChildQQTime = ::GetDlgItem(g_hParantWnd, 1078);//发信时间

但是更重要的是文本信息窗口,文本信息窗口采用的是CRichEditCtrl形式

因此需要绑定工作

HWND hWnd = ::FindWindowEx(g_hParantWnd, NULL, "AfxWnd42", NULL);
      HWND hChildQQText = ::GetDlgItem(hWnd, 896);//文本的id

     CRichEditCtrl  x;
     x.Attach(hChildQQText);//绑定
     int nLineCount = x.GetLineCount();
     for ( int j=0; j

本文地址:http://com.8s8s.com/it/it692.htm