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