有没有办法使用 WMI 查看进程的当前环境变量?

Jus*_*ing 5 windows monitoring environment-variables wmi

我有一个奇怪的问题,我的登录会话中的某些东西正在改变我的路径。注册表中的永久路径不会改变。

我想使用Register-CimIndicationEventWin32_Process CIM 对象来监视对 explorer.exe 进程的环境变量的更改。但是,我在那里没有看到有关环境变量的任何信息。有我遗漏的财产吗?是否有另一种方法可以获取另一个进程的当前环境并跟踪对它的更改?

有一个Win32_Environment类。但是,它从存储环境变量的注册表标记中读取。它不读取工作变量。

hea*_*vyd 4

该环境无法通过任何 API 或 WMI 轻松获得。

跟踪环境的最简单方法是通过Process Explorer进行定期检查,以了解更改何时发生。

如果您可以编写一些 C++ 代码,这里有一些关于如何访问另一个进程环境的资源。您可以使用它来创建一个工具来为您监控环境: