ProcessStartInfo.RedirectStandardInput プロパティ
アセンブリ: System (system.dll 内)

Dim instance As ProcessStartInfo Dim value As Boolean value = instance.RedirectStandardInput instance.RedirectStandardInput = value
/** @property */ public boolean get_RedirectStandardInput () /** @property */ public void set_RedirectStandardInput (boolean value)
public function get RedirectStandardInput () : boolean public function set RedirectStandardInput (value : boolean)
入力を Process.StandardInput から読み取る場合は true。それ以外の場合は false。

Process は、その標準入力ストリーム (通常はキーボード) から入力テキストを読み取ることができます。StandardInput ストリームをリダイレクトすることにより、プロセスの入力をプログラムで指定できます。たとえば、キーボード入力を使用せずに、指定したファイルの内容からテキストを提供したり、別のアプリケーションからの出力を提供したりできます。
![]() |
---|
RedirectStandardInput を true に設定するには、UseShellExecute を false に設定する必要があります。設定しない場合は、StandardInput ストリームに書き込みを行うと例外がスローされます。 |

プロセスの StandardInput ストリームをリダイレクトする方法を次のコード例に示します。sort コマンドは、テキスト入力を読み込み、並べ替えを実行するコンソール アプリケーションです。
このコードは、リダイレクトされた入力を使用して sort コマンドを起動します。その後、ユーザーにテキストの入力を要求し、そのテキストをリダイレクトされた StandardInput ストリームを通じて sort プロセスに渡します。sort の結果はユーザーのコンソールに表示されます。
Imports System Imports System.IO Imports System.Diagnostics Imports System.ComponentModel Imports Microsoft.VisualBasic Namespace Process_StandardInput_Sample Class StandardInputTest Shared Sub 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. Dim myProcess As New Process() myProcess.StartInfo.FileName = "Sort.exe" myProcess.StartInfo.UseShellExecute = False myProcess.StartInfo.RedirectStandardInput = True myProcess.Start() Dim myStreamWriter As StreamWriter = myProcess.StandardInput ' Prompt the user for input text lines to sort. ' Write each line to the StandardInput stream of ' the sort command. Dim inputText As String Dim numLines As Integer = 0 Do Console.WriteLine("Enter a line of text (or press the Enter key to stop):") inputText = Console.ReadLine() If inputText.Length > 0 Then numLines += 1 myStreamWriter.WriteLine(inputText) End If Loop While inputText.Length <> 0 ' Write a report header to the console. If numLines > 0 Then Console.WriteLine(" {0} sorted text line(s) ", numLines) Console.WriteLine("------------------------") Else Console.WriteLine(" No input was sorted") End If ' 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() End Sub 'Main End Class 'StandardInputTest End Namespace 'Process_StandardInput_Sample
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(); } } }
#using <System.dll> using namespace System; using namespace System::IO; using namespace System::Diagnostics; using namespace System::ComponentModel; int 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 = gcnew Process; if ( myProcess ) { myProcess->StartInfo->FileName = "Sort.exe"; myProcess->StartInfo->UseShellExecute = false; myProcess->StartInfo->RedirectStandardInput = true; myProcess->Start(); StreamWriter^ myStreamWriter = myProcess->StandardInput; if ( myStreamWriter ) { // 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 && inputText->Length > 0 ) { numLines++; myStreamWriter->WriteLine( inputText ); } } while ( inputText && inputText->Length != 0 ); // Write a report header to the console. if ( numLines > 0 ) { Console::WriteLine( " {0} sorted text line(s) ", numLines.ToString() ); 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(); } }

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からProcessStartInfo.RedirectStandardInput プロパティを検索する場合は、下記のリンクをクリックしてください。

- ProcessStartInfo.RedirectStandardInput プロパティのページへのリンク