如何根据子线程的线程ID找到进程的pid?

时间:2014-06-20 09:21:42

标签: windows multithreading process

给定一个线程的线程ID,我需要找到拥有它的进程的pid。我想通过toolhelp库枚举所有线程并使用" th32OwnerProcessID" THREADENTRY32的成员,但我正在寻找一种更简单的方法(而且更短)。我无法找到直接api来做到这一点,也无法在Stack Overflow中找到答案。谢谢提前。

1 个答案:

答案 0 :(得分:4)

您需要两个WinAPI功能。

  1. 使用OpenThread获取线程句柄,该句号将线程ID作为参数。
  2. 使用GetProcessIdOfThread获取进程ID,该句柄将句柄作为参数。
  3. 在尝试使用之前,您需要阅读有关其使用限制的链接文档。