Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

ProcessStartInfo.RedirectStandardInput-Eigenschaft

Ruft einen Wert ab, der angibt, ob die Eingabe für eine Anwendung aus dem Process.StandardInput-Stream gelesen wird, oder legt diesen fest.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)
public bool RedirectStandardInput { get; set; }

Eigenschaftswert

Typ: System.Boolean
true, um die Eingabe aus Process.StandardInput zu lesen, andernfalls false .

Ein Process kann Eingabetext aus dem Standardeingabestream lesen. Dies ist i. d. R. die Tastatur. Sie können die Eingabe eines Prozesses programmgesteuert angeben, indem Sie den StandardInput-Stream umleiten. Sie können z. B: anstelle der Tastatureingabe Text aus dem Inhalt einer angegebenen Datei oder aus der Ausgabe einer anderen Anwendung bereitstellen.

Hinweis Hinweis

Sie müssen UseShellExecute auf false festlegen, wenn Sie RedirectStandardInput auf true festlegen möchten. Andernfalls löst das Schreiben in den StandardInput-Stream eine Ausnahme aus.

Im folgenden Beispiel wird das Umleiten des StandardInput-Streams eines Prozesses veranschaulicht. Der Befehl sort ist eine Konsolenanwendung, die Texteingaben liest und sortiert.

Im Beispiel wird der sort-Befehl mit umgeleiteter Eingabe gestartet. Anschließend wird der Benutzer zur Eingabe von Text aufgefordert, der über den umgeleiteten StandardInput-Stream an den sort-Prozess übergeben wird. Die Ergebnisse von sort werden für den Benutzer auf der Konsole angezeigt.



using System;
using System.IO;
using System.Diagnostics;
using System.ComponentModel;

namespace Process_StandardInput_Sample
{
   class StandardInputTest
   {
      static void Main()
      {
         Console.WriteLine("Ready to sort one or more text lines...");

         // Start the Sort.exe process with redirected input.
         // Use the sort command to sort the input text.
         Process myProcess = new Process();

         myProcess.StartInfo.FileName = "Sort.exe";
         myProcess.StartInfo.UseShellExecute = false;
         myProcess.StartInfo.RedirectStandardInput = true;

         myProcess.Start();

         StreamWriter myStreamWriter = myProcess.StandardInput;

         // Prompt the user for input text lines to sort. 
         // Write each line to the StandardInput stream of
         // the sort command.
         String inputText;
         int numLines = 0;
         do 
         {
            Console.WriteLine("Enter a line of text (or press the Enter key to stop):");

            inputText = Console.ReadLine();
            if (inputText.Length > 0)
            {
               numLines ++;
               myStreamWriter.WriteLine(inputText);
            }
         } while (inputText.Length != 0);


         // Write a report header to the console.
         if (numLines > 0)
         {
            Console.WriteLine(" {0} sorted text line(s) ", numLines);
            Console.WriteLine("------------------------");
         }
         else 
         {
            Console.WriteLine(" No input was sorted");
         }

         // End the input stream to the sort command.
         // When the stream closes, the sort command
         // writes the sorted text lines to the 
         // console.
         myStreamWriter.Close();


         // Wait for the sort process to write the sorted text lines.
         myProcess.WaitForExit();
         myProcess.Close();

      }
   }
}


.NET Framework

Unterstützt in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Community-Inhalt Hinzufügen
Anmerkungen FAQ