2012年12月14日金曜日

Dosコマンドを実行し、「内部コマンドまたは...」を取得する。

やりたいこと
Dosコマンドを実行するプログラムで、コマンド自体が有効になってなくて、
「'aaa' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」の状態の場合がある。
例えば、windowsの機能を有効にしてないと実行できないコマンドなど。

この結果を取得する方法がわかったので、書いておきます。
方法
1.まずC#でコマンドを実行するコードはこちらのページを参考にするとできる。
http://dobon.net/vb/dotnet/process/standardoutput.html
2.上記のコードに以下のコードをそれらしいところに追記して、 コマンドをAAAとか適当なものに置き換える。
①psi.RedirectStandardError = true;

②string error = p.StandardError.ReadToEnd();

③Console.WriteLine(error);

結果
「'aaa' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
0 件のコメント:
コメントを投稿