• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 67  文章 - 171  trackbacks - 0
            <2013年4月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            常用鏈接

            留言簿(10)

            隨筆分類

            隨筆檔案

            連接資料

            最新隨筆

            搜索

            •  

            最新隨筆

            最新評論

            //找QQ的登陸對話框,如果QQ沒有啟動,則先啟動它。
            pWnd = FindWindow(_T("#32770"), _T("QQ用戶登錄"));
            if (!pWnd)
            {
             PROCESS_INFORMATION lpProcessInformation;
             STARTUPINFO startupinfo;
             memset(&startupinfo,0,sizeof(STARTUPINFO));
             memset(&lpProcessInformation,0,sizeof(PROCESS_INFORMATION));
             startupinfo.cb = sizeof(STARTUPINFO);
             startupinfo.dwFlags = STARTF_FORCEOFFFEEDBACK;
             startupinfo.dwX = 0;
             startupinfo.dwY = 0;
             startupinfo.lpDesktop = NULL;
             startupinfo.lpReserved = NULL;
             startupinfo.lpReserved2 = NULL;
             startupinfo.lpTitle = NULL;
             CreateProcess(_T("D:\\Tencent\\qq\\CoralQQ.exe"), NULL, NULL, NULL, FALSE,
             NORMAL_PRIORITY_CLASS, NULL, NULL, &startupinfo, &lpProcessInformation);
            }

              二、開啟和打開后就是取得QQ的號碼框和密碼框的句柄了

              這里要注意的是,因為QQ密碼框是登陸框的子窗口,先要找到登陸框后再一步步找到QQ的密碼框。找到后就是向它們發送消息了。QQ的密碼框先復制到剪切板后發送WM_PASTE就可以了,但是密碼框因為使用了QQ鍵盤加密保護技術,所以不能發送WM_PASTE,而要模擬鍵盤發送WM_CHAR消息,讓其一個一個接收密碼就可以了。

            if (pWnd)
            {
             //獲得QQ的號碼輸入框指針
             CComboBox *pCob = (CComboBox *)pWnd->GetDlgItem(138);
             if (pCob)
             {
              m_edtCode.SetSel(0, -1);
              m_edtCode.Copy();

              //先刪除原有號碼后向號碼輸入框發送復制消息
              pCob->SetCurSel(0);
              pCob->DeleteString(0);
              pCob->SendMessage(WM_PASTE, 0, 0);
             }

             //因為QQ的密碼框是包含在主窗口里的子窗口,所以先獲得子窗口后再一個個往后找
             CWnd *pCwnd = pWnd->GetNextWindow(GW_CHILD);
             pCwnd = pCwnd->GetNextWindow(GW_HWNDNEXT);
             while (pCwnd != NULL)
             {
              if (pCwnd)//找到
              {
               CEdit *pPwd = (CEdit *)pCwnd->GetDlgItem(16038);
               if (pPwd)
               {
                char cKey;
                char buf[20];
                memset(buf, 0, sizeof(buf));
                //因為我的程序是unicode,所以這里要轉換。如果不是,則不用轉換了。
                int iRet = WideCharToMultiByte(CP_ACP, WC_COMPOSITECHECK,
            m_strPassword.GetBuffer(m_strPassword.GetLength()),
            m_strPassword.GetLength(), buf, 20, NULL, NULL);

                //清除密碼框
                pPwd->SetSel(0, -1);
                pPwd->Clear();
                i = 0;

                //將密碼一個個地發送過去。這里不能用復制消息,因為QQ的密碼框不允許復制
                while (i < iRet)
                {
                 strncpy(&cKey, buf+i, 1);
                 pPwd->SendMessage(WM_CHAR, (WPARAM)cKey, 0);
                 i++;
                }
                break;
               }
              }
              pCwnd = pCwnd->GetNextWindow(GW_HWNDNEXT);
             }

              三、當填充好號碼和密碼后就可以發送單擊鼠標消息,讓QQ登陸了。

            //以下為找到登陸按鈕后,發送鼠標單擊消息
            CButton *pbtnLogin = (CButton *)pWnd->GetDlgItem(16032);
            if (pbtnLogin)
            {
             pbtnLogin->PostMessage(WM_LBUTTONDOWN, 0, 0);
             pbtnLogin->PostMessage(WM_LBUTTONUP, 0, 0);
            }

              四、要讓QQ自動登陸,只要加個WM_TIMER就可以了,至于這個大家都會的了,這里不再講述。
            posted on 2008-08-08 19:24 cpsprogramer 閱讀(2042) 評論(2)  編輯 收藏 引用 所屬分類: VC++

            FeedBack:
            # re: 轉@QQ自動登錄 2008-08-09 00:10 看看而已
            太老了,這個是以前版本的QQ可以使用,現在已經失效了  回復  更多評論
              
            # re: 轉@QQ自動登錄 2008-08-14 16:12 浪跡天涯
            現在qq版本對鍵盤輸入加鎖了,有兩個dll插件,防止輸入密碼時被截獲,這個方式已經不能傳輸密碼進去了  回復  更多評論
              
            av无码久久久久久不卡网站| 久久精品国产亚洲AV影院| 99久久久精品免费观看国产| 99久久精品日本一区二区免费| 99久久99久久精品国产| 欧美亚洲日本久久精品| 亚洲精品无码久久千人斩| 天天爽天天爽天天片a久久网| 久久天天躁狠狠躁夜夜av浪潮| 精品熟女少妇AV免费久久| 国内精品久久国产大陆| 精品国产日韩久久亚洲| 国产国产成人精品久久| 婷婷久久综合| 亚洲综合久久综合激情久久| 中文字幕久久精品无码| 久久精品二区| 久久亚洲精品视频| 狠狠综合久久综合88亚洲| 久久精品国产精品亜洲毛片 | 久久久国产精品亚洲一区| 久久www免费人成看国产片| 亚洲精品午夜国产VA久久成人| 久久精品国产99久久久香蕉| 国产精品禁18久久久夂久| 亚洲中文字幕无码久久精品1| 亚洲国产成人精品久久久国产成人一区二区三区综 | 亚洲精品综合久久| 久久精品中文字幕第23页| 久久精品国产免费一区| 狠狠色丁香婷婷综合久久来| 青青草原精品99久久精品66| 久久久久久久久波多野高潮| 色综合久久中文字幕综合网| 久久亚洲2019中文字幕| 欧美麻豆久久久久久中文| 四虎久久影院| 久久久高清免费视频| 一级做a爰片久久毛片看看| 欧洲国产伦久久久久久久| 久久午夜无码鲁丝片秋霞|