AnonymousPipeServerStream コンストラクター
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
オーバーロード
AnonymousPipeServerStream() |
AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。 |
AnonymousPipeServerStream(PipeDirection) |
パイプの方向を指定して AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。 |
AnonymousPipeServerStream(PipeDirection, HandleInheritability) |
パイプの方向と継承性のモードを指定して、AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。 |
AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle) |
指定したパイプ ハンドルから AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。 |
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32) |
パイプの方向、継承性のモード、バッファー サイズを指定して、AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。 |
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity) |
パイプの方向、継承性のモード、バッファー サイズ、パイプのセキュリティを指定して、AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。 |
AnonymousPipeServerStream()
AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
public:
AnonymousPipeServerStream();
public AnonymousPipeServerStream ();
Public Sub New ()
注釈
パラメーターのないコンストラクターのPipeDirection場合AnonymousPipeServerStream、既定の方向は ですOut。PipeDirection匿名パイプは一方向として定義されているため、 のInOut値はサポートされていません。
このコンストラクターは、既定のAnonymousPipeServerStreamバッファー サイズ、パイプ セキュリティ、および の値Noneを持つ オブジェクトをHandleInheritability作成します。
適用対象
AnonymousPipeServerStream(PipeDirection)
パイプの方向を指定して AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection)
パラメーター
例外
direction
が InOut に設定されます。
注釈
PipeDirection匿名パイプは一方向として定義されているため、 のInOut値はサポートされていません。
このコンストラクターは、既定のAnonymousPipeServerStreamバッファー サイズ、パイプ セキュリティ、および の値Noneを持つ オブジェクトをHandleInheritability作成します。
適用対象
AnonymousPipeServerStream(PipeDirection, HandleInheritability)
パイプの方向と継承性のモードを指定して、AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, System::IO::HandleInheritability inheritability);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, inheritability As HandleInheritability)
パラメーター
- inheritability
- HandleInheritability
基になるハンドルを子プロセスが継承できるかどうかを決定する列挙値の 1 つ。 None または Inheritable のどちらかに設定する必要があります。
例外
inheritability
は、None にも Inheritable にも設定されていません。
direction
が InOut に設定されます。
例
次の例では、匿名パイプを使用して親プロセスから子プロセスに文字列を送信するメソッドを示します。 この例では、値 Outが AnonymousPipeServerStream の親プロセスで オブジェクトがPipeDirection作成されます。
//<snippet01>
#using <System.dll>
#using <System.Core.dll>
using namespace System;
using namespace System::IO;
using namespace System::IO::Pipes;
using namespace System::Diagnostics;
ref class PipeServer
{
public:
static void Main()
{
Process^ pipeClient = gcnew Process();
pipeClient->StartInfo->FileName = "pipeClient.exe";
AnonymousPipeServerStream^ pipeServer =
gcnew AnonymousPipeServerStream(PipeDirection::Out,
HandleInheritability::Inheritable);
Console::WriteLine("[SERVER] Current TransmissionMode: {0}.",
pipeServer->TransmissionMode);
// Pass the client process a handle to the server.
pipeClient->StartInfo->Arguments =
pipeServer->GetClientHandleAsString();
pipeClient->StartInfo->UseShellExecute = false;
pipeClient->Start();
pipeServer->DisposeLocalCopyOfClientHandle();
try
{
// Read user input and send that to the client process.
StreamWriter^ sw = gcnew StreamWriter(pipeServer);
sw->AutoFlush = true;
// Send a 'sync message' and wait for client to receive it.
sw->WriteLine("SYNC");
pipeServer->WaitForPipeDrain();
// Send the console input to the client process.
Console::Write("[SERVER] Enter text: ");
sw->WriteLine(Console::ReadLine());
sw->Close();
}
// Catch the IOException that is raised if the pipe is broken
// or disconnected.
catch (IOException^ e)
{
Console::WriteLine("[SERVER] Error: {0}", e->Message);
}
pipeServer->Close();
pipeClient->WaitForExit();
pipeClient->Close();
Console::WriteLine("[SERVER] Client quit. Server terminating.");
}
};
int main()
{
PipeServer::Main();
}
//</snippet01>
//<snippet01>
using System;
using System.IO;
using System.IO.Pipes;
using System.Diagnostics;
class PipeServer
{
static void Main()
{
Process pipeClient = new Process();
pipeClient.StartInfo.FileName = "pipeClient.exe";
using (AnonymousPipeServerStream pipeServer =
new AnonymousPipeServerStream(PipeDirection.Out,
HandleInheritability.Inheritable))
{
Console.WriteLine("[SERVER] Current TransmissionMode: {0}.",
pipeServer.TransmissionMode);
// Pass the client process a handle to the server.
pipeClient.StartInfo.Arguments =
pipeServer.GetClientHandleAsString();
pipeClient.StartInfo.UseShellExecute = false;
pipeClient.Start();
pipeServer.DisposeLocalCopyOfClientHandle();
try
{
// Read user input and send that to the client process.
using (StreamWriter sw = new StreamWriter(pipeServer))
{
sw.AutoFlush = true;
// Send a 'sync message' and wait for client to receive it.
sw.WriteLine("SYNC");
pipeServer.WaitForPipeDrain();
// Send the console input to the client process.
Console.Write("[SERVER] Enter text: ");
sw.WriteLine(Console.ReadLine());
}
}
// Catch the IOException that is raised if the pipe is broken
// or disconnected.
catch (IOException e)
{
Console.WriteLine("[SERVER] Error: {0}", e.Message);
}
}
pipeClient.WaitForExit();
pipeClient.Close();
Console.WriteLine("[SERVER] Client quit. Server terminating.");
}
}
//</snippet01>
'<snippet01>
Imports System.IO
Imports System.IO.Pipes
Imports System.Diagnostics
Class PipeServer
Shared Sub Main()
Dim pipeClient As New Process()
pipeClient.StartInfo.FileName = "pipeClient.exe"
Using pipeServer As New AnonymousPipeServerStream(PipeDirection.Out, _
HandleInheritability.Inheritable)
Console.WriteLine("[SERVER] Current TransmissionMode: {0}.",
pipeServer.TransmissionMode)
' Pass the client process a handle to the server.
pipeClient.StartInfo.Arguments = pipeServer.GetClientHandleAsString()
pipeClient.StartInfo.UseShellExecute = false
pipeClient.Start()
pipeServer.DisposeLocalCopyOfClientHandle()
Try
' Read user input and send that to the client process.
Using sw As New StreamWriter(pipeServer)
sw.AutoFlush = true
' Send a 'sync message' and wait for client to receive it.
sw.WriteLine("SYNC")
pipeServer.WaitForPipeDrain()
' Send the console input to the client process.
Console.Write("[SERVER] Enter text: ")
sw.WriteLine(Console.ReadLine())
End Using
Catch e As IOException
' Catch the IOException that is raised if the pipe is broken
' or disconnected.
Console.WriteLine("[SERVER] Error: {0}", e.Message)
End Try
End Using
pipeClient.WaitForExit()
pipeClient.Close()
Console.WriteLine("[SERVER] Client quit. Server terminating.")
End Sub
End Class
'</snippet01>
注釈
PipeDirection匿名パイプは一方向として定義されているため、 のInOut値はサポートされていません。
このコンストラクターは、既定の AnonymousPipeServerStream バッファー サイズを持ち、パイプ セキュリティがない オブジェクトを作成します。
適用対象
AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle)
指定したパイプ ハンドルから AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, Microsoft::Win32::SafeHandles::SafePipeHandle ^ serverSafePipeHandle, Microsoft::Win32::SafeHandles::SafePipeHandle ^ clientSafePipeHandle);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, Microsoft.Win32.SafeHandles.SafePipeHandle serverSafePipeHandle, Microsoft.Win32.SafeHandles.SafePipeHandle clientSafePipeHandle);
[System.Security.SecurityCritical]
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, Microsoft.Win32.SafeHandles.SafePipeHandle serverSafePipeHandle, Microsoft.Win32.SafeHandles.SafePipeHandle clientSafePipeHandle);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * Microsoft.Win32.SafeHandles.SafePipeHandle * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.AnonymousPipeServerStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * Microsoft.Win32.SafeHandles.SafePipeHandle * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, serverSafePipeHandle As SafePipeHandle, clientSafePipeHandle As SafePipeHandle)
パラメーター
- serverSafePipeHandle
- SafePipeHandle
この AnonymousPipeServerStream オブジェクトによってカプセル化されるパイプのセーフ ハンドル。
- clientSafePipeHandle
- SafePipeHandle
AnonymousPipeClientStream オブジェクトのセーフ ハンドル。
- 属性
例外
serverSafePipeHandle
または clientSafePipeHandle
は無効なハンドルです。
serverSafePipeHandle
または clientSafePipeHandle
が null
です。
direction
が InOut に設定されます。
注釈
PipeDirection匿名パイプは一方向として定義されているため、 のInOut値はサポートされていません。
適用対象
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32)
パイプの方向、継承性のモード、バッファー サイズを指定して、AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, System::IO::HandleInheritability inheritability, int bufferSize);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize);
[System.Security.SecurityCritical]
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int -> System.IO.Pipes.AnonymousPipeServerStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, inheritability As HandleInheritability, bufferSize As Integer)
パラメーター
- inheritability
- HandleInheritability
基になるハンドルを子プロセスが継承できるかどうかを決定する列挙値の 1 つ。 None または Inheritable のどちらかに設定する必要があります。
- bufferSize
- Int32
バッファーのサイズ。 この値は、0 以上である必要があります。
- 属性
例外
direction
が InOut に設定されます。
注釈
PipeDirection匿名パイプは一方向として定義されているため、 のInOut値はサポートされていません。
このコンストラクターは、パイプ セキュリティなしで オブジェクトを AnonymousPipeServerStream 作成します。
適用対象
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity)
パイプの方向、継承性のモード、バッファー サイズ、パイプのセキュリティを指定して、AnonymousPipeServerStream クラスの新しいインスタンスを初期化します。
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, System::IO::HandleInheritability inheritability, int bufferSize, System::IO::Pipes::PipeSecurity ^ pipeSecurity);
[System.Security.SecurityCritical]
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize, System.IO.Pipes.PipeSecurity pipeSecurity);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize, System.IO.Pipes.PipeSecurity pipeSecurity);
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int * System.IO.Pipes.PipeSecurity -> System.IO.Pipes.AnonymousPipeServerStream
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int * System.IO.Pipes.PipeSecurity -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, inheritability As HandleInheritability, bufferSize As Integer, pipeSecurity As PipeSecurity)
パラメーター
- inheritability
- HandleInheritability
基になるハンドルを子プロセスが継承できるかどうかを決定する列挙値の 1 つ。
- bufferSize
- Int32
バッファーのサイズ。 この値は、0 以上である必要があります。
- pipeSecurity
- PipeSecurity
パイプのアクセス制御と監査セキュリティを決定するオブジェクト。
- 属性
例外
direction
が InOut に設定されます。
注釈
PipeDirection匿名パイプは一方向として定義されているため、 のInOut値はサポートされていません。
適用対象
.NET