【发布时间】:2019-05-05 11:41:32
【问题描述】:
我想获取进程 ID,例如进程“notepad.exe”。
我只找到了线程等如何通过 PID 获取进程。但我想通过进程名称(在这种情况下为“notepad.exe”)获取 PID。 这与我的内核驱动程序有关。
【问题讨论】:
标签: c pid wdk windows-kernel
我想获取进程 ID,例如进程“notepad.exe”。
我只找到了线程等如何通过 PID 获取进程。但我想通过进程名称(在这种情况下为“notepad.exe”)获取 PID。 这与我的内核驱动程序有关。
【问题讨论】:
标签: c pid wdk windows-kernel
可以有多个进程的进程映像来自文件notepad.exe。您必须枚举所有正在运行的进程并从中检索模块名称。在 MSDN 中有描述:https://docs.microsoft.com/en-us/windows/desktop/psapi/enumerating-all-processes
然后从进程列表中提取模块名称为 notepad.exe 的所有进程并获取匹配 PID 的列表。
【讨论】:
NtQuerySystemInformation 和SystemProcessInformation 而不是EnumProcesses。但是通常使用名称不是最佳选择 - 需要询问 - 你这个过程和搜索基于另一个东西