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

            1CM

              

            查找所有進(jìn)程的編程例子

            提示:關(guān)鍵是利用kernel32.dll中的
            CreateToolhelp32Snapshot,Process32First,Process32Next函數(shù)。
            并且要熟悉相關(guān)的結(jié)構(gòu)體變量,比如PROCESSENTRY32等。
            編程的方法類似與TC(DOS)中的findfirst,findnext。

            1、首先查找所需函數(shù)的入口地址。
            HMODULE hmk;
            hmk=GetModuleHandle("kernel32.dll");

            typedef DWORD (WINAPI *NEWAPI)(DWORD,DWORD);
            NEWAPI CT32S=NULL;//CreateToolhelp32Snapshot
            CT32S=(NEWAPI)GetProcAddress(hmk,"CreateToolhelp32Snapshot");

            NEWAPI P32F;//Process32First
            P32F=(NEWAPI)GetProcAddress(hmk,"Process32First");


            NEWAPI P32N;//Process32Next
            P32N=(NEWAPI)GetProcAddress(hmk,"Process32Next");

            2、得到所有進(jìn)程印象的句柄。
            HANDLE hps=NULL;
            hps=(HANDLE)CT32S(TH32CS_SNAPPROCESS,NULL);
            3、定義進(jìn)程結(jié)構(gòu)體變量,在使用Process32First和Process32Next中需要它的指針。
            PROCESSENTRY32 pe32;
            pe32.dwSize=sizeof(PROCESSENTRY32);

            4、開(kāi)始查找進(jìn)程。
            BOOL b;
            //查找第一個(gè)進(jìn)程;
            b=P32F((DWORD)hps,(DWORD)&pe32);
            DWORD count=0;
            CString str;
            if(b)
            {

            PutLB(&pe32);//輸出結(jié)果到列表
            m_PID[count]=pe32.th32ProcessID;//記住進(jìn)程的ID,以后Kill時(shí)使用;
            //這樣不必在轉(zhuǎn)換
            count++;
            //如果查到循環(huán)進(jìn)行繼續(xù)查找直到查不到下一個(gè)進(jìn)程
            while(1)
            {
            b=P32N((DWORD)hps,(DWORD)&pe32);
            m_PID[count]=pe32.th32ProcessID;
            if(!b)
            break;
            PutLB(&pe32);
            count++;
            }
            }
            5、顯示進(jìn)程的個(gè)數(shù)。
            CString s;
            s.Format("Find All Process Ver1.0 Total %d",count);
            this->SetWindowText(s);
            CloseHandle(hmk);

            posted on 2007-03-14 17:06 1CM 閱讀(468) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            中文字幕久久精品 | 国产精品久久久久天天影视| 久久国产欧美日韩精品免费| 久久久久久久综合狠狠综合| 国产精品99精品久久免费| 国产精品激情综合久久| 97视频久久久| 四虎国产精品免费久久久| 久久人人爽人人爽人人av东京热 | 亚洲AV无码久久寂寞少妇| www亚洲欲色成人久久精品| 亚洲综合伊人久久大杳蕉| 国产精品成人99久久久久| 久久久久国产精品熟女影院| 久久国产香蕉一区精品| 久久综合综合久久97色| 日韩乱码人妻无码中文字幕久久| 久久精品国产精品亚洲艾草网美妙| 久久久久久久久久久精品尤物| 色综合久久久久网| 久久精品国产亚洲AV无码偷窥| 国产精品久久久香蕉| 久久精品女人天堂AV麻| 精品精品国产自在久久高清| 人妻无码中文久久久久专区| 久久人人爽人人爽人人片AV麻烦 | 久久综合九色综合精品| 久久久久AV综合网成人| 久久久国产乱子伦精品作者| 国产精品一久久香蕉国产线看| 99久久香蕉国产线看观香| 国产精品免费福利久久| 欧洲成人午夜精品无码区久久| 久久天天躁狠狠躁夜夜不卡| 久久精品亚洲福利| 久久久噜噜噜久久中文字幕色伊伊| 国产一区二区三精品久久久无广告 | 久久只这里是精品66| 奇米影视7777久久精品人人爽| 性做久久久久久久久浪潮| 一本色道久久综合|