如何获取cmd.exe的当前工作目录?获取cmd.exe的当前工作目录
这似乎是可能的。例如,使用ProcessExplorer,选择CMD.exe,右键单击,属性,图像选项卡,“当前目录”将使用CD或CHDIR命令设置目录。
我已经看过.NET Process和ProcessStartInfo类(ProcessStartInfo.WorkingDirectory总是返回“”),并且似乎无法找到确定此方法的方法。 PInvoke也没有什么突出的。
作为一个例子,我期待以编程方式能够说类似于:Process.GetCurrentWorkingDirectory(processID)其中processID是另一个正在运行的进程的Windows进程ID。
有没有解决方案,WinAPI或.NET?
[更新]
原因提出这个问题:
我用“命令提示符浏览器栏”了一段时间,这是除非我“CD”大到一个新的目录,当前资源管理器窗口不会更改。 (即同步只是从资源管理器到命令提示符的一种方式)。我正在寻找这2种方法。
你所要求的听起来可疑。除非你正在测试(QA)或调试,否则一个进程不应该干扰另一个进程。将它用于“生产”或商业软件是不好的,因为它需要特权。你的产品不会得到。那么,你想完成什么? – jim 2008-10-20 12:23:49
公平的问题。没什么可疑的。我已经使用了“命令提示符浏览器栏”一段时间,除非我“CD”到新目录,否则当前浏览器窗口不会改变,这很棒。(即同步只是从资源管理器到命令提示符的一种方式)。我正在寻找这2种方法。 – Ash 2008-10-21 00:40:10
我需要这个用于测试目的 - 我想杀死一个Java Tomcat进程,并将其用作区别于其他方式的一种方法。 – ripper234 2009-01-13 17:27:01