HANDLE定义:
typedef void *HANDLE;PROCESSENTRY32 ProcessInfo;//定义进程信息变量其定义如下:
typedef struct tagPROCESSENTRY32
{
DWORD dwSize;
DWORD cntUsage;
DWORD th32ProcessID; // this process
ULONG_PTR th32DefaultHeapID;
DWORD th32ModuleID; // associated exe
DWORD cntThreads;
DWORD th32ParentProcessID; // this process's parent process
LONG pcPriClassBase; // Base priority of process's threads
DWORD dwFlags;
CHAR szExeFile[MAX_PATH]; // Path
} PROCESSENTRY32;为了获取系统中的第一个线程和下一个要用到两个函数:
BOOL
WINAPI
Process32First(
HANDLE hSnapshot,
LPPROCESSENTRY32 lppe
);
BOOL
WINAPI
Process32Next(
HANDLE hSnapshot,
LPPROCESSENTRY32 lppe
);ProcessInfo.th32ProcessID 进程ID
ProcessInfo.th32ParentProcessID 进程的父进程
杀死进程:
WINBASEAPI
BOOL
WINAPI
TerminateProcess(
__in HANDLE hProcess,
__in UINT uExitCode
);HANDLE hProcess= OpenProcess( PROCESS_ALL_ACCESS, FALSE,ProcessInfo.th32ProcessID);
if(::TerminateProcess(hProcess,1))实现方式如上。
本文介绍了Windows环境下进程的基本操作,包括进程信息结构PROCESSENTRY32的定义、使用Process32First与Process32Next获取进程信息的方法,以及如何通过TerminateProcess函数来结束指定进程。
2266

被折叠的 条评论
为什么被折叠?



