ホームページ > バックエンド開発 > C++ > コマンドラインプログラムを実行して、C#でその出力をキャプチャするにはどうすればよいですか?

コマンドラインプログラムを実行して、C#でその出力をキャプチャするにはどうすればよいですか?

Barbara Streisand
リリース: 2025-02-01 01:11:09
オリジナル
687 人が閲覧しました

How Can I Execute a Command-Line Program and Capture its Output in C#?

コマンドラインプログラムを実行し、C#

で出力をキャプチャします

このガイドは、C#プログラム内からコマンドラインアプリケーションを実行し、標準出力を取得する方法を示しています。これは、外部ツールを統合したり、アプリケーションからシステムタスクを直接実行したりするのに役立ちます。 一般的な例は、2つのファイルで「diff」コマンドを実行し、結果を使用することです。

クラスは必要な機能を提供します。段階的なアプローチは次のとおりです System.Diagnostics.Process

  1. プロセスインスタンスを作成します:

    インスタンスA オブジェクトはコマンドラインプログラムを表します。 Process

  2. プロセスパラメーターを構成:
  3. set

    to
      を設定します。これにより、コマンドがシステムシェルを実行するのを防ぎます。
    • setUseShellExecutetofalseを設定して、プログラムの出力をC#アプリケーションにリダイレクトします。
    • で実行可能ファイルのパスを指定します。 バッチファイルの場合、これは「yourbatchfile.bat」になります。 また、引数をRedirectStandardOutputtrueで指定する必要があります
    • FileName Arguments
    • プロセスを開始します:
    メソッドを使用してコマンドを実行します。 この方法はブロックされません。プロセスは非同期に実行されます
  4. 標準出力を読み取ります:出力を取得するには、Start()プロパティにアクセスします。 プロセスが終了する前に

    を使用して完全な出力を取得します。
  5. プロセスの完了を待つ:コマンドラインプログラムが進行前に完了したことを確認するためにStandardOutput電話してください。 これにより、不完全または破損した出力の読み取りが防止されます ReadToEnd()

  6. このメソッドを使用すると、出力を簡単にキャプチャして表示(テキストボックスなど)に表示したり、C#アプリケーション内でさらに処理したりできます。

以上がコマンドラインプログラムを実行して、C#でその出力をキャプチャするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート