【发布时间】:2014-03-18 14:29:52
【问题描述】:
我有一个使用桌面快捷方式启动的进程。 桌面快捷方式在“开始于”字段中有信息。 我想获得该过程的“开始”信息。 这可能吗?我将如何使用 Powershell?
我查看了 Get-Process 和 Get-WMIObject win32_process 返回的属性 但我似乎找不到在哪里可以找到“开始”信息。 TIA
更新
我需要这些信息的原因是我有几个由 python 运行的程序。我有快捷方式设置来启动这些。快捷目标是:
python.exe my_script.py
但是,计算机上有几个版本的 my_script.py,但没有一个版本位于 PATH 中。我设置了快捷方式的“Start in”属性来控制执行哪个版本的 my_script.py。
我意识到还有其他方法可以更改,以便我可以知道哪个脚本版本正在运行,但是我试图不对现有设置进行更改,并编写一个可以获取此信息的 powershell 脚本。
【问题讨论】:
-
进程对象实际上没有办法知道这一点。 start in 字段所做的只是设置初始工作目录。该进程可以随意更改工作目录,并且不需要知道它从哪个工作目录开始。这可能是XY问题情况(meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。为什么你觉得你需要这样做?
-
@EBGreen,感谢您的回复,更多信息请查看更新。
-
我理解您想要维持现状的愿望,但我不确定您想要做的事情是否可行。为什么您需要确切知道正在运行的版本?
-
@EBGreen,感谢您提供的信息。我正在拍摄系统快照以进行后期分析。我正在为多台计算机执行此操作,并寻找任何奇怪的配置,以便对其进行更正。
-
顺便说一句,在这种情况下,“不可能”是一个有效的答案 :-) 会给我一个请求更改设置的理由。
标签: windows powershell desktop-shortcut