#include <stdio.h>
#include <string.h>
#include <windows.h>
#include <Tlhelp32.h>
#include <algorithm>
#include <vector>
void kill(int pid)
{
HANDLE hProcess = OpenProcess(PROCESS_TERMINATE, FALSE, pid);
BOOL bOkey = TerminateProcess(hProcess, 0);
if(bOkey)
{
WaitForSingleObject(hProcess, 1000);
CloseHandle(hProcess);
hProcess = NULL;
}
}
void TerminateProcessByName(PCWSTR name)
{
DWORD pid = 0;
HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32W process;
ZeroMemory(&process, sizeof(process));
process.dwSize = sizeof(process);
std::vector<DWORD> pids;
if (Process32FirstW(snapshot, &process))
{
do
{
// Compare process.szExeFile based on format of name, i.e., trim file path
// trim .exe if necessary, etc.
std::wstring szExeFil
C++结束程序 按进程名结束
最新推荐文章于 2023-10-15 16:04:39 发布
本文介绍在C++编程中如何通过进程名称查找并结束指定的进程,涉及进程管理和系统调用的相关知识。
摘要由CSDN通过智能技术生成