Monday 7 August 2017

Redirect Standard Output C # Proses Waitforexit


Saya telah mencoba segalanya tapi saya tidak bisa mengeluarkan Output dari sebuah proses untuk mengalihkan ke listbox. Saya bisa mengarahkannya ke file tapi bukan listbox. Inilah kodenya. String machineName textBox1.Text Process process proses baru () process. StartInfo. FileName quotschtasksquot process. StartInfo. Arguments quot query s quot 43 proses machineName. StartInfo. UseShellExecute proses yang salah. StartInfo. RedirectStandardOutput process. StartInfo. CreateNoWindow benar process. Start ( ) String output process. StandardOutput. ReadToEnd () process. WaitForExit () Saya tidak tahu apa yang saya hilang. Aplikasi akan menulis baris header tapi tidak ada data. Namun, ketika saya beralih ke file, itu menulis semuanya. Tuesday, May 17, 2011 2:45 PM Itu menambahkan output sebagai satu item. Saya membuat sebuah array untuk setiap baris dan sepertinya bekerja sekarang. Ditandai sebagai jawaban oleh Matt11380 Tuesday, May 17, 2011 9:33 PMSystem. Diagnostics. Process: redirect StandardInput, StandardOutput, StandardError 82218217 InputAndOutputToEnd: cara mudah untuk menggunakan inputoutputerror yang diarahkan pada sebuah p. 82218217 ltparam name8221p8221gtP untuk mengarahkan ulang. Haruskah UseShellExecute diset ke false. ltparamgt 82218217 ltparam name8221StandardInput8221gt String ini akan dikirim sebagai masukan ke hlm. (Harus tidak ada apa-apa jika tidak StartInfo. RedirectStandardInput) ltparamgt 82218217 ltparam name8221StandardOutput8221gt Output p8217s akan dikumpulkan dalam string ByRef ini. (Harus tidak ada apa-apa jika tidak StartInfo. RedirectStandardOutput) ltparamgt 82218217 ltparam name8221StandardError8221gtKesalahan p8217s akan dikumpulkan dalam string ByRef ini. (Harus tidak ada jika tidak StartInfo. RedirectStandardError) ltparamgt 82218217 ltremarksgtFitur ini memecahkan masalah kebuntuan yang disebutkan di msdn. microsoften-uslibrarysystem. diagnostics. p.standardoutput. aspxltremarksgt ltRuntimepilerServices. Extension () gt Sub InputAndOutputToEnd (ByVal p as Diagnostics. Process, ByVal StandardInput As String ByRef StandardOutput As String ByRef StandardError As String) Jika p Tidak Ada Lalu Lempar ArgumentException Baru (8220p harus non-null8221) 8216 Asumsikan p telah dimulai. Sayangnya tidak ada cara untuk mengeceknya. Jika p. StartInfo. UseShellExecute Kemudian Lemparkan ArgumentException Baru (8220Set StartInfo. UseShellExecute ke false8221) Jika (p. StartInfo. RedirectStandardInput ltgt (StandardInput Tidak Tidak Ada)) Kemudian Lemparkan New ArgumentException (8220Memberikan Masukan non-null hanya jika StartInfo. RedirectStandardInput8221) Jika (P. StartInfo. RedirectStandardOutput ltgt (StandardOutput IsNot nothing)) Lalu Lempar ArgumentException Baru (8220Provide Output non-null hanya jika StartInfo. RedirectStandardOutput8221) Jika (p. StartInfo. RedirectStandardError ltgt (StandardError IsNot Nothing)) Kemudian Lemparkan ArgumentException Baru (8220Provide Kesalahan non-null hanya ketika StartInfo. RedirectStandardError8221) Dim outputData Sebagai New InputAndOutputToEndData Dim errorData Sebagai New InputAndOutputToEndData Jika p. StartInfo. RedirectStandardOutput Kemudian

No comments:

Post a Comment