中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

遍歷進程 結束某個進程

發布時間:2020-06-10 19:30:18 來源:網絡 閱讀:454 作者:WZM3558862 欄目:開發技術
 

 

#include <tlhelp32> 

    HANDLE hSnapShot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);

           //現在我們獲得了所有進程的信息。
       //將從hSnapShot中抽取數據到一個PROCESSENTRY32結構中
       //這個結構代表了一個進程,是ToolHelp32 API的一部分。
       //抽取數據靠Process32First()和Process32Next()這兩個函數。
       //這里我們僅用Process32Next(),他的原形是:
       //BOOL WINAPI Process32Next(HANDLE hSnapshot,LPPROCESSENTRY32 lppe);
       //我們程序的代碼中加入:
       PROCESSENTRY32* processInfo=new PROCESSENTRY32;
       // 必須設置PROCESSENTRY32的dwSize成員的值 ;
       processInfo->dwSize=sizeof(PROCESSENTRY32);
       int index=0;
       //這里我們將快照句柄和PROCESSENTRY32結構傳給Process32Next()。
       //執行之后,PROCESSENTRY32 結構將獲得進程的信息。我們循環遍歷,直到函數返回FALSE。
       printf("****************開始列舉進程****************/n");
       int ID = 0;
       while(Process32Next(hSnapShot,processInfo)!=FALSE)
       {
           index++;
           printf("****************** %d ******************/n",index);
           printf("PID       Name      Current Threads/n");
           printf("%-15d%-25s%-4d/n",processInfo->th42ProcessID,processInfo->szExeFile,processInfo->cntThreads);
           int size=WideCharToMultiByte(CP_ACP,0,processInfo->szExeFile,-1,NULL,0,NULL,NULL);
           char *ch=new char[size+1];
           if(WideCharToMultiByte(CP_ACP,0,processInfo->szExeFile,-1,ch,size,NULL,NULL))
           {
               if(strstr(ch,"cmd.exe"))//使用這段代碼的時候只需要改變"cmd.exe".將其改成你要結束的進程名就可以了。
             {
                    ID = processInfo->th42ProcessID;
                    qDebug()<<"ID ="<<ID;
                    HANDLE hProcess;
                    // 現在我們用函數 TerminateProcess()終止進程:
                    // 這里我們用PROCESS_ALL_ACCESS
                    hProcess=OpenProcess(PROCESS_ALL_ACCESS,TRUE,ID);
                    if(hProcess==NULL)
                    {
                        printf("Unable to get handle of process: ");
                        printf("Error is: %d",GetLastError());
                    }
                    TerminateProcess(hProcess,0);
                    CloseHandle(hProcess);
               }
           }
       }
       CloseHandle(hSnapShot);
       delete processInfo;
       typedef HANDLE (_stdcall *WTSOPENSERVER)(
       LPTSTR pServerName //NetBios指定的終端服務名,如果我們查看本地終端所有進程信息我們可以通過在控制臺命令行下用nbtstat –an來獲取本機NetBios名。如圖3所示。
       );


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

qt
AI

卓资县| 横山县| 尖扎县| 顺义区| 石泉县| 石楼县| 金堂县| 永平县| 江陵县| 高淳县| 买车| 龙南县| 永吉县| 兰坪| 抚顺县| 油尖旺区| 甘南县| 湖口县| 襄城县| 道孚县| 古交市| 景德镇市| 江门市| 吉首市| 郓城县| 福建省| 怀宁县| 淳安县| 黄大仙区| 温泉县| 会泽县| 大足县| 资兴市| 客服| 张家界市| 垦利县| 普定县| 仙居县| 墨脱县| 南开区| 天津市|