• <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
            <2008年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(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 閱讀(2059) 評論(2)  編輯 收藏 引用 所屬分類: VC++

            FeedBack:
            # re: 轉@QQ自動登錄 2008-08-09 00:10 看看而已
            太老了,這個是以前版本的QQ可以使用,現在已經失效了  回復  更多評論
              
            # re: 轉@QQ自動登錄 2008-08-14 16:12 浪跡天涯
            現在qq版本對鍵盤輸入加鎖了,有兩個dll插件,防止輸入密碼時被截獲,這個方式已經不能傳輸密碼進去了  回復  更多評論
              
            亚洲午夜精品久久久久久浪潮| 国产A级毛片久久久精品毛片| 久久久久久精品免费看SSS| 亚洲v国产v天堂a无码久久| 久久夜色精品国产欧美乱| 久久精品成人免费网站| 亚洲国产日韩欧美综合久久| 99久久国产热无码精品免费| 日韩十八禁一区二区久久| 久久91精品久久91综合| 久久久国产视频| 777久久精品一区二区三区无码 | 色偷偷久久一区二区三区| 99久久精品免费看国产一区二区三区| 欧洲国产伦久久久久久久| 亚洲一本综合久久| 蜜臀久久99精品久久久久久小说| 国产午夜精品理论片久久| 久久香综合精品久久伊人| 伊人色综合久久天天网| 久久―日本道色综合久久| 无码久久精品国产亚洲Av影片| 国产成人精品久久亚洲| 丰满少妇人妻久久久久久| 中文字幕热久久久久久久| 日本加勒比久久精品| 久久本道久久综合伊人| 国产精品一区二区久久国产| 久久亚洲国产成人影院| 亚洲国产精品无码久久久久久曰| 国内精品久久久久久久久电影网| 久久九九亚洲精品| 久久综合中文字幕| 久久99国产精品久久| 久久精品国产亚洲欧美| 91久久香蕉国产熟女线看| 99久久综合国产精品二区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 日韩电影久久久被窝网| 久久99国产精品成人欧美| 国产成人精品综合久久久|