سؤال

وأنا أحاول أن تتفاعل مع موجه الأوامر ويندوز من التعليمات البرمجية. هدفي هو لعرض موجه، وضعت في بعض الأوامر، عرض الإخراج، وتكرار. ولكن لا يمكن أن يبدو للحصول على أول ثلاث العمل في نفس الوقت.

      private void button2_Click(object sender, EventArgs e)
      {
        Process proc = new Process();
        proc.StartInfo.FileName = "cmd";
        proc.StartInfo.CreateNoWindow = true;
        proc.StartInfo.UseShellExecute = false;
        proc.StartInfo.RedirectStandardOutput = true;
        proc.StartInfo.RedirectStandardInput = true;

        proc.Start();
        StreamReader k = new StreamReader(proc.StandardOutput.BaseStream);

        textBox2.Text = k.ReadToEnd();            
       }

ورمز أعلاه معلقة فقط. إذا كنت لا تقم بتعيين RedirectStandardInput، ثم لا أستطيع عرض موجه بالكامل. وإذا أغمض الكاتب لStandardInput يمكنني الحصول على والأوامر لتشغيل، ولكن دون أن يرى موجه، أو أن تكون قادرة على تكرار ذلك. فكيف يمكنني الحصول على موجه لاظهار، تشغيل الأوامر، وإظهار الناتج ... مرارا وتكرارا؟

وأنا على أمل إعادة إنشاء السلوك سطر الأوامر من Console2 لكن أنا طغت قليلا من قبل انها شفرة المصدر.

هل كانت مفيدة؟

المحلول

http://www.codeproject.com/cs/library/CommandLineHelper. آسيا والمحيط الهادئ

[marc_s] أن النتائج URL في 404 صفحة غير موجود.

ووURL الصحيح على الأرجح هو: http://www.codeproject.com/ KB / سلسلة / CommandLineHelper.aspx

نصائح أخرى

وأعتقد أنك غير قادر. إذا تبين موجه الأوامر وحدة التحكم، أنت لن تكون قادرة على قراءة الناتج. أعتقد أنك بحاجة إلى رسم موجه الأوامر الخاصة بك إذا كان لديك قراءة الناتج من العملية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top