#include <tlhelp32.h>
char c[]="cmd.exe"; //定義字串並初始化,c為8長度,最後結尾有'\0',定義一個字元為'x',
HANDLE handle; //定義CreateToolhelp32Snapshot系統快照控制代碼
HANDLE handle1; //定義要結束進程控制代碼
handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);//獲得系統快照控制代碼
PROCESSENTRY32 *info; //定義PROCESSENTRY32結構字指
//PROCESSENTRY32 結構的 dwSize 成員設定成 sizeof(PROCESSENTRY32)
info=new PROCESSENTRY32;
info->dwSize=sizeof(PROCESSENTRY32);
//調用一次 Process32First 函數,從快照中擷取進程列表
Process32First(handle,info);
//重複調用 Process32Next,直到函數返回 FALSE 為止
while(Process32Next(handle,info)!=FALSE)
{
info->szExeFile; //指向進程名字
//strcmp字串比較函數同要結束相同
if( strcmp(c,info->szExeFile) == 0 )
{
MessageBox (TEXT ("HelloMsg"));
//PROCESS_TERMINATE表示為結束操作開啟,FALSE=可繼承,info->th32ProcessID=進程ID
handle1=OpenProcess(PROCESS_TERMINATE,FALSE,info->th32ProcessID);
//結束進程
TerminateProcess(handle1,0);
}
}
CloseHandle(handle);
//每次只能結束一個進程,