Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh melaksanakan baris arahan di C# dan menangkap output mereka?

Bagaimanakah saya boleh melaksanakan baris arahan di C# dan menangkap output mereka?

Susan Sarandon
Susan Sarandonasal
2025-02-01 01:01:09291semak imbas

How Can I Execute Command Lines in C# and Capture Their Output?

Mengintegrasikan alat luaran dengan C#: melaksanakan baris arahan dan menangkap output

C# menawarkan keupayaan yang mantap untuk berinteraksi dengan aplikasi baris arahan luaran. Kes penggunaan biasa melibatkan menjalankan alat perbandingan (seperti diff) dan memaparkan hasil dalam aplikasi C#. Panduan ini memperincikan proses.

Langkah pertama melibatkan penciptaan objek

, melumpuhkan pelaksanaan shell, dan membolehkan pengalihan output standard: Process

<code class="language-csharp">Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;</code>
Seterusnya, tentukan program baris perintah atau fail batch untuk dilaksanakan (mis.,

): YOURBATCHFILE.bat

<code class="language-csharp">p.StartInfo.FileName = "YOURBATCHFILE.bat";</code>
Mulakan proses secara asynchronously; Jangan tunggu siap sebelum mengambil output:

<code class="language-csharp">p.Start();</code>
Ambil output standard menggunakan

, kemudian tunggu proses selesai: ReadToEnd()

<code class="language-csharp">string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();</code>
rentetan

kini memegang hasil dari pelaksanaan baris arahan, bersedia untuk memaparkan atau pemprosesan selanjutnya dalam aplikasi C# anda. output

Pendekatan ini, berdasarkan dokumentasi MSDN Microsoft, menyediakan kaedah yang boleh dipercayai untuk melaksanakan program baris arahan dan mengambil output mereka dalam C#.

Atas ialah kandungan terperinci Bagaimanakah saya boleh melaksanakan baris arahan di C# dan menangkap output mereka?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn