窗口中进程打开的文件名?

2024-09-25 02:37:54 发布

您现在位置:Python中文网/ 问答频道 /正文

如何打印窗口中某个进程(PID)打开的文件名?或所有进程(PID)当前打开一个文件。
processexplorer是一个实用程序。但是它是如何工作的呢? windows中有什么/proc filesystem之类的东西吗?在

Can we read any Window's Registry?  
I wants to write a programming code And I rarely work on windows. 

在Python中有两个解决方案:
1导入psutil
2导入win32api、win32con、win32process

但这对我来说还是个问题!
1这些库是如何工作的?
2任何寄存器、内存或虚拟文件系统都保存这些信息?在

If its possible in window, Why this information not present in TasK-Manager?


Tags: 文件in实用程序read进程文件名windowsany
2条回答

以下是使用Win32 API从pid获取文件名的方法:

import win32api, win32con, win32process

handle = win32api.OpenProcess(win32con.PROCESS_ALL_ACCESS, False, pid) #get handle for the pid
filename = win32process.GetModuleFileNameEx(handle, 0) #get exe path & filename for handle

这只适用于windows(显然)。在

这是python中独立于平台的解决方案。在

   import psutil
   p = psutil.Process(os.getpid()) # or PID of process
   p.open_files()

所以我推荐给你psutil包,它有太好的函数来获取有关运行进程的信息

相关问题 更多 >