2010-02-13 30 views

回答

15

Process Explorer或其中一位朋友应该帮忙。

+0

应该澄清我的问题,我其实是在寻找第三方工具来查看任意过程 – theactiveactor 2010-02-13 15:13:41

+1

它可以让你看到它的包膜,但它是不容易查看诸如PATH或CLASSPATH之类的长整型值。不幸的是,似乎没有可用的复制命令。 – 2016-03-22 19:54:00

+1

我刚刚发现要复制PATH的完整值,可以使用* Cheat Engine *(在* Process Explorer *进程上)找到可见部分,然后浏览内存区域。您可以从那里复制全文。 – Ghost4Man 2017-11-18 22:40:40

0

要获得流程环境,您必须能够获取其上下文。在上下文中,使用getenv()来获取特定变量。

3

或者在PowerShell中:

(Get-Process -id 5060).StartInfo.EnvironmentVariables 
(Get-Process notepad).StartInfo.EnvironmentVariables 
+2

据说这并不总是做你期望的,并且从当前进程返回一些*环境变量(如Path),而不是另一个: https://blog.gapotchenko.com/eazfuscator.net /阅读环境变量 – piers7 2015-11-18 03:50:54

+2

我花了一点时间验证了这一点,我认为Process.StartInfo.EnvironmentVariables的输出看起来只是完整的垃圾。它似乎并不包含我已经生成的子进程中存在的变量,并且在其他登录中运行的其他(服务器)进程显然是错误的。避免。 – piers7 2015-11-18 08:16:31

+1

.net参考源中的注释(和实现)似乎支持这一点 - ProcessStartInfo只是为您提供当前的环境变量,*与其他进程完全无关*。 http://referencesource.microsoft.com/#System/services/monitoring/system/diagnosticts/ProcessStartInfo.cs,7caf1ab108119a18也用ILSpy进行了确认 – piers7 2015-11-18 08:32:27