• <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 橙子 閱讀(1860) 評論(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

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

            <2006年11月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            導航

            統計

            常用鏈接

            留言簿(10)

            隨筆分類

            隨筆檔案

            相冊

            收藏夾

            搜索

            最新評論

            閱讀排行榜

            久久久99精品成人片中文字幕| 无码AV波多野结衣久久| 国产精品免费久久久久电影网| 亚洲国产成人精品久久久国产成人一区二区三区综 | 国内精品久久久久久久coent| 久久一区二区免费播放| 日产精品99久久久久久| 久久久99精品成人片中文字幕| 97久久国产露脸精品国产 | 久久亚洲AV无码西西人体| 久久久久久国产精品免费无码| 久久亚洲AV永久无码精品| 国产精品岛国久久久久| 久久精品国产久精国产果冻传媒| 岛国搬运www久久| 久久被窝电影亚洲爽爽爽| 久久久久av无码免费网| 三级片免费观看久久| 欧美亚洲国产精品久久蜜芽| 精品国产乱码久久久久久郑州公司| 无夜精品久久久久久| 精品久久久久久久久久中文字幕 | 国产精品视频久久久| 久久九九久精品国产免费直播| 久久性生大片免费观看性| 丰满少妇人妻久久久久久4| 精品久久久久久中文字幕| 久久大香香蕉国产| 色综合久久久久久久久五月| 国产精品99久久久精品无码| 日韩电影久久久被窝网| 人妻中文久久久久| 亚洲欧美另类日本久久国产真实乱对白| 国产精品久久国产精麻豆99网站| 777米奇久久最新地址| 99精品国产在热久久| 91精品久久久久久无码| 久久久久黑人强伦姧人妻| 欧美久久久久久精选9999| 超级碰碰碰碰97久久久久| 亚洲精品无码久久一线|