AnonymousPipeServerStream Costruttori

Definizione

Inizializza una nuova istanza della classe AnonymousPipeServerStream.

Overload

Nome Descrizione
AnonymousPipeServerStream()

Inizializza una nuova istanza della classe AnonymousPipeServerStream.

AnonymousPipeServerStream(PipeDirection)

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe specificata.

AnonymousPipeServerStream(PipeDirection, HandleInheritability)

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe e la modalità di ereditabilità specificate.

AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle)

Inizializza una nuova istanza della AnonymousPipeServerStream classe dagli handle di pipe specificati.

AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32)

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe, la modalità di ereditarietà e le dimensioni del buffer specificate.

AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity)

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe, la modalità di ereditarietà, le dimensioni del buffer e la sicurezza della pipe specificate.

AnonymousPipeServerStream()

Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs

Inizializza una nuova istanza della classe AnonymousPipeServerStream.

public:
 AnonymousPipeServerStream();
public AnonymousPipeServerStream();
Public Sub New ()

Commenti

Per AnonymousPipeServerStream i costruttori senza un PipeDirection parametro, la direzione predefinita è Out. Il PipeDirection valore non InOut è supportato perché le pipe anonime sono definite come unidirezionale.

Questo costruttore crea un AnonymousPipeServerStream oggetto con le dimensioni predefinite del buffer, nessuna sicurezza della pipe e il HandleInheritability valore .None

Si applica a

AnonymousPipeServerStream(PipeDirection)

Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe specificata.

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)

Parametri

direction
PipeDirection

Uno dei valori di enumerazione che determina la direzione della pipe.

Le pipe anonime possono trovarsi solo in una direzione, quindi direction non possono essere impostate su InOut.

Eccezioni

direction è impostato su InOut.

Commenti

Il PipeDirection valore non InOut è supportato perché le pipe anonime sono definite come unidirezionale.

Questo costruttore crea un AnonymousPipeServerStream oggetto con le dimensioni predefinite del buffer, nessuna sicurezza della pipe e il HandleInheritability valore .None

Si applica a

AnonymousPipeServerStream(PipeDirection, HandleInheritability)

Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe e la modalità di ereditabilità specificate.

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)

Parametri

direction
PipeDirection

Uno dei valori di enumerazione che determina la direzione della pipe.

Le pipe anonime possono trovarsi solo in una direzione, quindi direction non possono essere impostate su InOut.

inheritability
HandleInheritability

Uno dei valori di enumerazione che determina se l'handle sottostante può essere ereditato dai processi figlio. Deve essere impostato su None o Inheritable.

Eccezioni

inheritability non è impostato su None o Inheritable.

direction è impostato su InOut.

Esempio

Nell'esempio seguente viene illustrato un metodo per inviare una stringa da un processo padre a un processo figlio tramite pipe anonime. In questo esempio viene creato un AnonymousPipeServerStream oggetto in un processo padre con un PipeDirection valore .Out

//<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>

Commenti

Il PipeDirection valore non InOut è supportato perché le pipe anonime sono definite come unidirezionale.

Questo costruttore crea un AnonymousPipeServerStream oggetto con le dimensioni predefinite del buffer e nessuna sicurezza della pipe.

Si applica a

AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle)

Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs

Inizializza una nuova istanza della AnonymousPipeServerStream classe dagli handle di pipe specificati.

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)

Parametri

direction
PipeDirection

Uno dei valori di enumerazione che determina la direzione della pipe.

Le pipe anonime possono trovarsi solo in una direzione, quindi direction non possono essere impostate su InOut.

serverSafePipeHandle
SafePipeHandle

Handle sicuro per la pipe incapsulata da questo AnonymousPipeServerStream oggetto.

clientSafePipeHandle
SafePipeHandle

Handle sicuro per l'oggetto AnonymousPipeClientStream .

Attributi

Eccezioni

serverSafePipeHandle o clientSafePipeHandle è un handle non valido.

serverSafePipeHandle o clientSafePipeHandle è null.

direction è impostato su InOut.

Si è verificato un errore di I/O, ad esempio un errore del disco.

oppure

Il flusso è stato chiuso.

Commenti

Il PipeDirection valore non InOut è supportato perché le pipe anonime sono definite come unidirezionale.

Si applica a

AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32)

Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs
Origine:
AnonymousPipeServerStream.cs

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe, la modalità di ereditarietà e le dimensioni del buffer specificate.

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)

Parametri

direction
PipeDirection

Uno dei valori di enumerazione che determina la direzione della pipe.

Le pipe anonime possono trovarsi solo in una direzione, quindi direction non possono essere impostate su InOut.

inheritability
HandleInheritability

Uno dei valori di enumerazione che determina se l'handle sottostante può essere ereditato dai processi figlio. Deve essere impostato su None o Inheritable.

bufferSize
Int32

Dimensione del buffer. Questo valore deve essere maggiore o uguale a 0.

Attributi

Eccezioni

inheritability non è impostato su None o Inheritable.

oppure

bufferSize è minore di 0.

direction è impostato su InOut.

Commenti

Il PipeDirection valore non InOut è supportato perché le pipe anonime sono definite come unidirezionale.

Questo costruttore crea un AnonymousPipeServerStream oggetto senza sicurezza pipe.

Si applica a

AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity)

Inizializza una nuova istanza della AnonymousPipeServerStream classe con la direzione della pipe, la modalità di ereditarietà, le dimensioni del buffer e la sicurezza della pipe specificate.

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)

Parametri

direction
PipeDirection

Uno dei valori di enumerazione che determina la direzione della pipe.

Le pipe anonime possono trovarsi solo in una direzione, quindi direction non possono essere impostate su InOut.

inheritability
HandleInheritability

Uno dei valori di enumerazione che determina se l'handle sottostante può essere ereditato dai processi figlio.

bufferSize
Int32

Dimensione del buffer. Questo valore deve essere maggiore o uguale a 0.

pipeSecurity
PipeSecurity

Oggetto che determina il controllo di accesso e controlla la sicurezza per la pipe.

Attributi

Eccezioni

inheritability non è impostato su None o Inheritable.

oppure

bufferSize è minore di 0.

direction è impostato su InOut.

Commenti

Il PipeDirection valore non InOut è supportato perché le pipe anonime sono definite come unidirezionale.

Si applica a