cmd.exe の現在の作業ディレクトリを取得するにはどうすればよいですか?
これは可能のようです。たとえば、ProcessExplorer を使用して、CMD.exe を選択し、右クリックして、プロパティ、[イメージ] タブ、[現在のディレクトリ] に、CD または CHDIR コマンドを使用して設定されたディレクトリが反映されます。
.NET Process および ProcessStartInfo クラス (ProcessStartInfo.WorkingDirectory は常に "" を返す) を調べましたが、これを判断する方法が見つからないようです。PInvokeにも目立ったものはありません。
たとえば、Process.GetCurrentWorkingDirectory(processID) のようにプログラムで記述できるようにしようとしています。ここで、processID は実行中の別のプロセスの Windows プロセス ID です。
解決策、WinAPI または .NET はありますか?
[アップデート]
この質問をする理由:
「コマンドプロンプトエクスプローラーバー」をしばらく使用しましたが、新しいディレクトリに「CD」した場合を除いて、現在のエクスプローラーウィンドウも変更されません。(つまり、同期は、エクスプローラーからコマンド プロンプトへの 1 方向のみです)。私はこれを2ウェイにすることを目指しています。