我需要从 jcmd 获取进程的参数,该进程由同一台 PC 上的其他用户启动。但我无法使用管理员帐户执行此操作。我也尝试使用“runas”函数,但结果相同。 除了使用同一用户之外,还有其他方法可以捕获此过程吗?
最佳答案
有答案了。 Java 将其 perf 文件放置在用户临时文件夹中,此外,它还会在每个 jcmd 请求上清理停止的进程文件。这就是为什么你无法从其他用户那里获取 perf.counter 数据,也无法使用你帐户下其他用户的 perf 文件。 另一个麻烦是,如果您想为此目的使用 Windows 任务调度程序,则必须仅在用户登录时运行此任务。否则您将获得权限异常(exception)。
关于java - 针对不同用户的JCMD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35203582/