• <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>

            Life & Code

            代碼是咒語,我是魔法師

            搜索內存取得QQ號碼

            這樣的帖子,不知道可不可以放到首頁..如果不行,麻煩管理員清理. 謝謝.

            HANDLE?GetQQProcess();
            bool ?SeachQQNumber(HANDLE?_hProcess, string ? & strQQ);
            int ?_tmain( int ?argc,?_TCHAR * ?argv[])
            {
            ????HANDLE?hProces?
            = ?GetQQProcess()?;
            ????
            if (hProces == ?NULL)
            ????????cout?
            << " No?run?QQ! " << endl;

            ????
            string ?strQQ;
            ????SeachQQNumber(hProces,strQQ);
            ????cout?
            << strQQ << endl;
            ????system(
            " pause " );
            ????
            return ? 0 ;
            }


            bool ?SeachQQNumber(HANDLE?_hProcess,? string ? & strQQ)
            {
            ????SuspendThread(_hProcess);
            ????
            ????DWORD?dwBaseAddress;?
            ????MEMORY_BASIC_INFORMATION?mbi;
            ????
            char ??process_mem[ 4096 ]? = ? { 0 } ;
            ????DWORD?number_of_bytes_read?
            = ? 0 ;
            ????SYSTEM_INFO?si;?
            ????GetSystemInfo(
            & si);
            ????dwBaseAddress?
            = ?(DWORD)si.lpMinimumApplicationAddress;?
            ????
            while (dwBaseAddress? < ?(DWORD)si.lpMaximumApplicationAddress)?
            ????
            {?
            ????????mbi.BaseAddress?
            = ?(LPVOID)dwBaseAddress;?
            ????????VirtualQueryEx(_hProcess,?(LPVOID)dwBaseAddress,?
            & mbi,? sizeof (mbi));
            ????????dwBaseAddress?
            = ?(DWORD)mbi.BaseAddress? + ?mbi.RegionSize;?
            ????????
            if (mbi.State? != ?MEM_COMMIT? || ?mbi.AllocationProtect? != ?PAGE_READWRITE)? // 跳過未分配或不可讀寫的區域?
            ???????? {?
            ????????????
            continue ;?
            ????????}
            ?
            ????????
            ????????
            // 搜索
            ???????? for (DWORD?i? = ?(DWORD)mbi.BaseAddress;?i? < ?dwBaseAddress;?i += 4096 )
            ????????
            {
            ????????????
            if ( ! ReadProcessMemory(_hProcess,LPCVOID(i),process_mem, 4096 , & number_of_bytes_read))
            ????????????????
            break ;????????????
            ????????????
            for ( int ?j = 0 ;j < 4096 ? - ? 9 ;j ++ )
            ????????????
            {
            ????????????????
            if ( ! memcmp( & process_mem[j], " \\MsgEx.db " , 9 )?)
            ????????????????
            {
            ????????????????????
            // printf("begin\n");
            ???????????????????? for ( int ?k = j - 1 ;?k? > ?j - 12 ;?k -- )
            ????????????????????
            {
            ????????????????????????
            if (process_mem[k]? >= ? ' 0 ' ? && ?process_mem[k]? <= ? ' 9 ' )
            ????????????????????????
            {
            ????????????????????????????strQQ?
            = ??process_mem[k]? + ?strQQ;
            ????????????????????????}

            ????????????????????????
            else
            ????????????????????????????
            break ;
            ????????????????????}

            ????????????????????
            if (strQQ.length())
            ????????????????????
            {
            ????????????????????????ResumeThread(_hProcess);
            ????????????????????????
            return ? true ;
            ????????????????????}
            ????????????
            ????????????????}

            ????????????}

            ????????}

            ????}

            ????ResumeThread(_hProcess);
            ????
            return ? false ;
            }



            HANDLE?GetQQProcess()
            {
            ????PROCESSENTRY32?pe;
            ????pe.dwSize?
            = ? sizeof (PROCESSENTRY32);
            ????HANDLE?hSnapshot?
            = ?CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,? 0 );
            ????Process32First(hSnapshot,?
            & pe);
            ????
            do {
            ????????
            if ( ! _tcsicmp(pe.szExeFile,_T( " qq.exe " )))
            ????????
            {
            ????????????CloseHandle(hSnapshot);
            ????????????
            return ?OpenProcess(PROCESS_ALL_ACCESS,FALSE,pe.th32ProcessID);
            ????????}

            ????????pe.dwSize?
            = ? sizeof (PROCESSENTRY32);
            ????}
            while (Process32Next(hSnapshot,? & pe));
            ????CloseHandle(hSnapshot);
            ????
            return ?NULL;
            }

            posted on 2006-12-13 00:36 橙子 閱讀(1842) 評論(6)  編輯 收藏 引用 所屬分類: Win32

            評論

            # re: 搜索內存取得QQ號碼 2006-12-13 18:54 Alpha_

            粗看了一下,內容不論,主程序似乎有點疑問。
            {
            HANDLE hProces = GetQQProcess() ;
            if (hProces == NULL)
            cout << " No run QQ! " << endl;
            // 在hProces == NULL的情況下沒有return,那么SeachQQNumber必將得到一個空的參數,似乎不妥。
            string strQQ;
            SeachQQNumber(hProces,strQQ);
            cout << strQQ << endl;
            system( " pause " );
            return 0 ;
            }   回復  更多評論   

            # re: 搜索內存取得QQ號碼 2006-12-15 11:26 橙子

            呵呵. 的確哦. 謝謝.  回復  更多評論   

            # re: 搜索內存取得QQ號碼 2006-12-19 21:15 學習c++

            建議加上頭文件  回復  更多評論   

            # re: 搜索內存取得QQ號碼 2006-12-19 21:16 學習c++

            建議加上頭文件

              回復  更多評論   

            # re: 搜索內存取得QQ號碼 2006-12-19 21:30 學習c++

            strQQ = process_mem[k] + strQQ;

            這句話有問題,無法通過  回復  更多評論   

            # re: 搜索內存取得QQ號碼 2007-10-30 14:10 Rollrock

            大問題是沒有底 小問題就有了那么一點點點了 呵呵 我還得謝謝這位大哥呢 經過我改動之后,我已經能成功的讀取了   回復  更多評論   

            <2007年6月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            1234567

            導航

            統計

            常用鏈接

            留言簿(10)

            隨筆分類

            隨筆檔案

            相冊

            收藏夾

            搜索

            最新評論

            閱讀排行榜

            精品久久久久一区二区三区| 婷婷国产天堂久久综合五月| 97久久久久人妻精品专区 | 日韩亚洲欧美久久久www综合网| 看久久久久久a级毛片| 99久久国产热无码精品免费久久久久| 日产久久强奸免费的看| 久久亚洲欧美国产精品| 日韩欧美亚洲国产精品字幕久久久 | 午夜天堂av天堂久久久| 久久久青草久久久青草| 伊人色综合久久天天人手人婷| 国产精品久久永久免费| 久久久久久精品免费免费自慰| 久久久久久夜精品精品免费啦| 久久精品二区| 国产 亚洲 欧美 另类 久久| 久久精品国产亚洲AV麻豆网站| 久久免费国产精品| 99久久精品国产一区二区蜜芽| 人人狠狠综合久久88成人| 久久毛片免费看一区二区三区| 国产精品禁18久久久夂久| 久久精品国产99国产精品亚洲 | 亚洲精品乱码久久久久久中文字幕 | 久久亚洲AV成人无码软件| 91精品国产91久久久久久青草 | 9久久9久久精品| 无码人妻精品一区二区三区久久久 | 精品一区二区久久| 久久香蕉超碰97国产精品| 精品综合久久久久久97| 亚洲国产高清精品线久久 | 国产精品视频久久久| 久久AV高清无码| 国产高潮国产高潮久久久| 久久丫精品国产亚洲av不卡| 97精品依人久久久大香线蕉97| 免费无码国产欧美久久18| 亚洲精品无码久久久久去q| 久久亚洲AV成人无码电影|