我需要获得有关运行处理Windows的信息。
我可以写些什么来让程序给出这样的列表:工作应用:Opera、Teamspeak。它有点像Windows中的任务管理器。
使用EnumProcesses()
获取进程列表,然后您可以使用Process API函数(如GetModuleBaseName()
(对其进行迭代,以获取有关单个进程的信息,如https://learn.microsoft.com/en-us/windows/win32/psapi/enumerating-all-processes
您可以使用以下任意一种:
-
EnumProcesses()
获取运行进程ID的列表,然后OpenProcess()
打开每个进程的句柄,并使用GetModuleFileNameEx()
、GetProcessImageFileName()
或QueryFullProcessImageName()
查询其EXE文件名。请参阅枚举所有进程。 -
CreateToolhelp32Snapshot()
获取运行进程的快照,然后Process32First()
和Process32Next()
获取它们的EXE文件名。请参阅拍摄快照和查看进程。
一旦您有了EXE文件名,就可以使用GetFileVersionInfo()
和VerQueryValue()
来检索它们的人类可读显示名称,例如从FileDescription
版本信息字段中检索。