我正在尝试创建一个结束进程的C ++程序。所以从头开始,我不太确定我应该向哪个方向前进?我的意思是基于我所做的研究,解决方案涉及这些步骤(让我知道这是不正确的逻辑):
获取流程名称(在我的情况下,它始终是相同的)
迭代所有进程并找到匹配的名称(假设此进程具有唯一名称)
获取ID并终止
正如我所提到的,我不必担心检查重复的进程名称,因为它被认为是唯一的,但现在我需要指导我应该查看哪种类型的库,类等?
答案 0 :(得分:0)
使用TerminateProcess
功能。
答案 1 :(得分:0)
请参阅EnumProcesses并将Handles研究为流程。
将一个类型为pID的空数组传递给EnumProcesses,它会用当前正在运行的进程的pID填充它,所以使用一个大数组。这样,您可以枚举所有正在运行的进程。
使用OpenProcess获取与PID关联的句柄,并调用GetModuleFileNameEx以获取其完全限定的路径,以查看您正在查看的那个是否是您想要的那个。
然后你可以在句柄上使用TerminateProcess,如果它是你要结束的那个。