2012-04-19 94 views
2

我需要一个跨平台的方式来查找名称正在运行的进程,并获得其进程ID。然后使用boost的进程库来终止它。提升:如何通过名称查找进程的进程id?

Boost的进程库需要进程ID是已知的(http://www.highscore.de/boost/process/reference/classboost_1_1process_1_1process.html)

+0

你所说的“工序名”是什么意思?源自过程的可执行程序的名称?如果该程序有多个实例,您会终止哪一个?进程唯一的唯一标识符是其进程ID(又名PID)。 – lvella 2012-04-19 18:40:20

回答

1

我相信不存在这样的跨平台工具。我知道最近的是pgrep,这是一个程序,而不是一个库,并且它不是Windows的一部分。

在使用procfs的类Unix系统上,您需要扫描/proc以符合您的需求。我不知道如何在Windows上做到这一点,但我相信这是可能的,它不会比你在* nix上所做的更糟糕。