0

ユーザーに特定のタスクを与え、それらが実行されたかどうかをプログラムで判断するトレーニングおよびテスト アプリケーションがあります。タスクの 1 つは、たとえばコマンド ライン プロンプト「dir /s」に何かを入力することです。

自分のアプリケーションが作成した "cmd.exe" のインスタンスの入出力をリダイレクトできることはわかっていますが、ユーザーが起動したインスタンスに対して同じことを行うにはどうすればよいですか?

また、アプリが黙ってそれらを飲み込むのではなく、ユーザーがコマンドプロンプトでアクションの結果を確認できるようにしたいと考えています。

4

1 に答える 1

0

Processクラスを使用してプロセスを見つけることができます。

Process.GetProcessesByName("cmd")

これは、cmd プロセスの配列を返します。

見る:Process.GetProcessesByName

どのプロセスにフォーカスがあるかを判断するには、「現在のアプリケーションがアクティブ化されている (フォーカスがある) かどうかを判断する」を参照してください。

その後、プロセスの出力をアプリケーションにリダイレクトできます。

于 2013-06-13T15:01:48.493 に答える