NamedPipeClientStream Klas

Definitie

Maakt een Stream rond een benoemde pijp beschikbaar, die zowel synchrone als asynchrone lees- en schrijfbewerkingen ondersteunt.

public ref class NamedPipeClientStream sealed : System::IO::Pipes::PipeStream
public sealed class NamedPipeClientStream : System.IO.Pipes.PipeStream
type NamedPipeClientStream = class
    inherit PipeStream
Public NotInheritable Class NamedPipeClientStream
Inherits PipeStream
Overname
NamedPipeClientStream

Voorbeelden

In het volgende voorbeeld ziet u een manier om een tekenreeks van een bovenliggend proces naar een onderliggend proces op dezelfde computer te verzenden met behulp van named pipes. In dit voorbeeld wordt een NamedPipeServerStream object gemaakt in een bovenliggend proces. Het NamedPipeServerStream object heeft een PipeDirection waarde van Out. De server wacht vervolgens tot een NamedPipeClientStream object in een onderliggend proces er verbinding mee maakt. In dit voorbeeld bevinden beide processen zich op dezelfde computer en heeft het NamedPipeClientStream object een PipeDirection waarde van In. Het bovenliggende proces verzendt vervolgens een door de gebruiker opgegeven tekenreeks naar het onderliggende proces. De tekenreeks wordt weergegeven in de console.

Dit voorbeeld is voor het clientproces, dat verbinding maakt met het serverproces. Voor het volledige codevoorbeeld, inclusief de code voor zowel de pipe-client als de server, raadpleegt u Het volgende: Named Pipes gebruiken voor netwerkcommunicatie tussen processen.

using System;
using System.IO;
using System.IO.Pipes;

class PipeClient
{
    static void Main(string[] args)
    {
        using (NamedPipeClientStream pipeClient =
            new NamedPipeClientStream(".", "testpipe", PipeDirection.In))
        {

            // Connect to the pipe or wait until the pipe is available.
            Console.Write("Attempting to connect to pipe...");
            pipeClient.Connect();

            Console.WriteLine("Connected to pipe.");
            Console.WriteLine("There are currently {0} pipe server instances open.",
               pipeClient.NumberOfServerInstances);
            using (StreamReader sr = new StreamReader(pipeClient))
            {
                // Display the read text to the console
                string temp;
                while ((temp = sr.ReadLine()) != null)
                {
                    Console.WriteLine("Received from server: {0}", temp);
                }
            }
        }
        Console.Write("Press Enter to continue...");
        Console.ReadLine();
    }
}
Imports System.IO
Imports System.IO.Pipes
Imports System.Security.Principal

Class PipeClient

    Shared Sub Main(ByVal args As String())

        Dim pipeClient As New NamedPipeClientStream("localhost", _
                    "testpipe", PipeDirection.In, PipeOptions.None)

        ' Connect to the pipe or wait until the pipe is available.
        Console.WriteLine("Attempting to connect to the pipe...")
        pipeClient.Connect()

        Console.WriteLine("Connect to the pipe.")
        Console.WriteLine("There are currently {0} pipe server instances open.", _
                          pipeClient.NumberOfServerInstances)

        Dim sr As New StreamReader(pipeClient)
        Dim temp As String

        temp = sr.ReadLine()
        While Not temp Is Nothing
            Console.WriteLine("Received from server: {0}", temp)
            temp = sr.ReadLine()
        End While
        Console.Write("Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class

Opmerkingen

Benoemde pijpen bieden eenrichtings- of duplexpijpen voor communicatie tussen een pijpserver en een of meer pijpclients. Benoemde pijpen kunnen lokaal of via een netwerk worden gebruikt voor communicatie tussen processen. Een enkele pijpnaam kan worden gedeeld door meerdere NamedPipeClientStream objecten.

Elk proces kan fungeren als een benoemde pijpserver of -client, of beide.

Constructors

Name Description
NamedPipeClientStream(PipeDirection, Boolean, Boolean, SafePipeHandle)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse voor de opgegeven pijpgreep met de opgegeven pijprichting.

NamedPipeClientStream(String, String, PipeAccessRights, PipeOptions, TokenImpersonationLevel, HandleInheritability)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijp- en servernamen, en de opgegeven pijpopties, het beveiligingsimitatieniveau en de modus overname.

NamedPipeClientStream(String, String, PipeDirection, PipeOptions, TokenImpersonationLevel, HandleInheritability)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijp- en servernamen, en de opgegeven pijprichting, pijpopties, beveiligingsimitatieniveau en de modus overname.

NamedPipeClientStream(String, String, PipeDirection, PipeOptions, TokenImpersonationLevel)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijp- en servernamen, en de opgegeven pijprichting, pijpopties en beveiligingsimitatieniveau.

NamedPipeClientStream(String, String, PipeDirection, PipeOptions)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijp- en servernamen en de opgegeven pijprichting en pijpopties.

NamedPipeClientStream(String, String, PipeDirection)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijp- en servernamen en de opgegeven pijprichting.

NamedPipeClientStream(String, String)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijp- en servernamen.

NamedPipeClientStream(String)

Initialiseert een nieuw exemplaar van de NamedPipeClientStream klasse met de opgegeven pijpnaam.

Eigenschappen

Name Description
CanRead

Hiermee wordt een waarde opgehaald die aangeeft of de huidige stroom leesbewerkingen ondersteunt.

(Overgenomen van PipeStream)
CanSeek

Hiermee wordt een waarde opgehaald die aangeeft of de huidige stroom zoekbewerkingen ondersteunt.

(Overgenomen van PipeStream)
CanTimeout

Hiermee wordt een waarde opgehaald die bepaalt of er een time-out optreedt voor de huidige stroom.

(Overgenomen van Stream)
CanWrite

Hiermee wordt een waarde opgehaald die aangeeft of de huidige stroom schrijfbewerkingen ondersteunt.

(Overgenomen van PipeStream)
InBufferSize

Hiermee haalt u de grootte, in bytes, van de binnenkomende buffer voor een pijp op.

(Overgenomen van PipeStream)
IsAsync

Hiermee wordt een waarde opgehaald die aangeeft of een PipeStream object asynchroon of synchroon is geopend.

(Overgenomen van PipeStream)
IsConnected

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of een PipeStream object is verbonden.

(Overgenomen van PipeStream)
IsHandleExposed

Hiermee wordt een waarde opgehaald die aangeeft of een ingang voor een PipeStream object wordt weergegeven.

(Overgenomen van PipeStream)
IsMessageComplete

Hiermee wordt een waarde opgehaald die aangeeft of er meer gegevens in het bericht zijn geretourneerd door de meest recente leesbewerking.

(Overgenomen van PipeStream)
Length

Hiermee haalt u de lengte van een stream op, in bytes.

(Overgenomen van PipeStream)
NumberOfServerInstances

Hiermee haalt u het aantal serverexemplaren op dat dezelfde pijpnaam heeft.

OutBufferSize

Hiermee haalt u de grootte, in bytes, van de uitgaande buffer voor een pijp op.

(Overgenomen van PipeStream)
Position

Hiermee haalt u de huidige positie van de huidige stroom op of stelt u deze in.

(Overgenomen van PipeStream)
ReadMode

Hiermee wordt de leesmodus voor een PipeStream object opgehaald of ingesteld.

(Overgenomen van PipeStream)
ReadTimeout

Hiermee wordt een waarde opgehaald of ingesteld, in milliseconden, die bepaalt hoe lang de stroom probeert te lezen voordat er een time-out optreedt.

(Overgenomen van Stream)
SafePipeHandle

Hiermee haalt u de veilige ingang op voor het lokale uiteinde van de pijp die door het huidige PipeStream object wordt ingekapseld.

(Overgenomen van PipeStream)
TransmissionMode

Hiermee haalt u de transmissiemodus van de pijp op die wordt ondersteund door de huidige pijp.

(Overgenomen van PipeStream)
WriteTimeout

Hiermee wordt een waarde opgehaald of ingesteld, in milliseconden, die bepaalt hoe lang de stream probeert te schrijven voordat er een time-out optreedt.

(Overgenomen van Stream)

Methoden

Name Description
BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Begint een asynchrone leesbewerking.

(Overgenomen van PipeStream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Hiermee wordt een asynchrone schrijfbewerking gestart.

(Overgenomen van PipeStream)
CheckPipePropertyOperations()

Controleert of de pijp de juiste status heeft voor het ophalen of instellen van eigenschappen.

(Overgenomen van PipeStream)
CheckReadOperations()

Controleert of de pijp een verbonden status heeft voor leesbewerkingen.

(Overgenomen van PipeStream)
CheckWriteOperations()

Controleert of de pijp een verbonden status heeft voor schrijfbewerkingen.

(Overgenomen van PipeStream)
Close()

Hiermee sluit u de huidige stroom en worden alle resources (zoals sockets en bestandsingangen) die aan de huidige stroom zijn gekoppeld, vrijgegeven. In plaats van deze methode aan te roepen, moet u ervoor zorgen dat de stream correct wordt verwijderd.

(Overgenomen van Stream)
Connect()

Maakt verbinding met een wachtserver met een oneindige time-outwaarde.

Connect(Int32)

Maakt verbinding met een wachtserver binnen de opgegeven time-outperiode.

ConnectAsync()

Asynchroon maakt verbinding met een wachtserver met een oneindige time-outperiode.

ConnectAsync(CancellationToken)

Asynchroon maakt verbinding met een wachtserver en bewaakt annuleringsaanvragen.

ConnectAsync(Int32, CancellationToken)

Asynchroon maakt verbinding met een wachtserver binnen de opgegeven time-outperiode en bewaakt annuleringsaanvragen.

ConnectAsync(Int32)

Asynchroon maakt verbinding met een wachtserver binnen de opgegeven time-outperiode.

CopyTo(Stream, Int32)

Leest de bytes uit de huidige stream en schrijft ze naar een andere stroom, met behulp van een opgegeven buffergrootte. Beide streamsposities worden geavanceerd door het aantal gekopieerde bytes.

(Overgenomen van Stream)
CopyTo(Stream)

Leest de bytes uit de huidige stream en schrijft ze naar een andere stream. Beide streamsposities worden geavanceerd door het aantal gekopieerde bytes.

(Overgenomen van Stream)
CopyToAsync(Stream, CancellationToken)

Asynchroon leest de bytes uit de huidige stream en schrijft deze naar een andere stream met behulp van een opgegeven annuleringstoken. Beide streamsposities worden geavanceerd door het aantal gekopieerde bytes.

(Overgenomen van Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Asynchroon leest de bytes uit de huidige stream en schrijft deze naar een andere stroom, met behulp van een opgegeven buffergrootte en annuleringstoken. Beide streamsposities worden geavanceerd door het aantal gekopieerde bytes.

(Overgenomen van Stream)
CopyToAsync(Stream, Int32)

Asynchroon leest de bytes uit de huidige stream en schrijft deze naar een andere stroom, met behulp van een opgegeven buffergrootte. Beide streamsposities worden geavanceerd door het aantal gekopieerde bytes.

(Overgenomen van Stream)
CopyToAsync(Stream)

Asynchroon leest de bytes uit de huidige stream en schrijft ze naar een andere stream. Beide streamsposities worden geavanceerd door het aantal gekopieerde bytes.

(Overgenomen van Stream)
CreateObjRef(Type)

Hiermee maakt u een object dat alle relevante informatie bevat die nodig is om een proxy te genereren die wordt gebruikt om te communiceren met een extern object.

(Overgenomen van MarshalByRefObject)
CreateWaitHandle()
Verouderd.

Wijst een WaitHandle object toe.

(Overgenomen van Stream)
Dispose()

Alle resources die worden gebruikt door de Stream.

(Overgenomen van Stream)
Dispose(Boolean)

Publiceert de niet-beheerde resources die door de PipeStream klasse worden gebruikt en brengt eventueel de beheerde resources vrij.

(Overgenomen van PipeStream)
DisposeAsync()

Geeft asynchroon de onbeheerde resources vrij die worden gebruikt door de Stream.

(Overgenomen van Stream)
EndRead(IAsyncResult)

Hiermee wordt een asynchrone leesaanvraag beëindigd.

(Overgenomen van PipeStream)
EndWrite(IAsyncResult)

Hiermee wordt een asynchrone schrijfaanvraag beëindigd.

(Overgenomen van PipeStream)
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
Finalize()

Publiceert onbeheerde resources en voert andere opschoonbewerkingen uit voordat het NamedPipeClientStream exemplaar wordt vrijgemaakt door garbagecollection.

Flush()

Wist de buffer voor de huidige stroom en zorgt ervoor dat gebufferde gegevens naar het onderliggende apparaat worden geschreven.

(Overgenomen van PipeStream)
FlushAsync()

Asynchroon wist alle buffers voor deze stroom en zorgt ervoor dat eventuele gebufferde gegevens naar het onderliggende apparaat worden geschreven.

(Overgenomen van Stream)
FlushAsync(CancellationToken)

Asynchroon wist alle buffers voor deze stroom, zorgt ervoor dat gebufferde gegevens naar het onderliggende apparaat worden geschreven en annuleringsaanvragen worden gecontroleerd.

(Overgenomen van Stream)
GetAccessControl()

Hiermee haalt u een PipeSecurity object op dat de toegangsbeheerlijstvermeldingen (ACL) inkapselt voor de pijp die wordt beschreven door het huidige PipeStream object.

(Overgenomen van PipeStream)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetLifetimeService()

Hiermee haalt u het huidige levensduurserviceobject op waarmee het levensduurbeleid voor dit exemplaar wordt beheerd.

(Overgenomen van MarshalByRefObject)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
InitializeHandle(SafePipeHandle, Boolean, Boolean)

Initialiseert een PipeStream object van het opgegeven SafePipeHandle object.

(Overgenomen van PipeStream)
InitializeLifetimeService()

Hiermee haalt u een levensduurserviceobject op om het levensduurbeleid voor dit exemplaar te beheren.

(Overgenomen van MarshalByRefObject)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
MemberwiseClone(Boolean)

Hiermee maakt u een ondiepe kopie van het huidige MarshalByRefObject object.

(Overgenomen van MarshalByRefObject)
ObjectInvariant()
Verouderd.

Biedt ondersteuning voor een Contract.

(Overgenomen van Stream)
Read(Byte[], Int32, Int32)

Leest een blok bytes uit een stream en schrijft de gegevens naar een opgegeven buffer vanaf een opgegeven positie voor een opgegeven lengte.

(Overgenomen van PipeStream)
Read(Span<Byte>)

Hiermee wordt een reeks bytes uit de huidige stroom gelezen, naar een bytematrix geschreven en wordt de positie binnen de stream verplaatst door het aantal gelezen bytes.

(Overgenomen van PipeStream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Asynchroon leest een reeks bytes van de huidige stroom naar een bytematrix die begint op een opgegeven positie voor een opgegeven aantal bytes, de positie binnen de stream door het aantal gelezen bytes en bewaakt annuleringsaanvragen.

(Overgenomen van PipeStream)
ReadAsync(Byte[], Int32, Int32)

Asynchroon leest een reeks bytes uit de huidige stroom en wordt de positie binnen de stream verplaatst door het aantal gelezen bytes.

(Overgenomen van Stream)
ReadAsync(Memory<Byte>, CancellationToken)

Asynchroon leest een reeks bytes uit de huidige stroom, schrijft deze naar een bytegeheugenbereik, verplaatst de positie in de stream door het aantal bytes lezen en bewaakt annuleringsaanvragen.

(Overgenomen van PipeStream)
ReadByte()

Leest een byte uit een pijp.

(Overgenomen van PipeStream)
Seek(Int64, SeekOrigin)

Hiermee stelt u de huidige positie van de huidige stroom in op de opgegeven waarde.

(Overgenomen van PipeStream)
SetAccessControl(PipeSecurity)

Hiermee past u de ACL-vermeldingen (Access Control List) toe die zijn opgegeven door een PipeSecurity object op de pijp die is opgegeven door het huidige PipeStream object.

(Overgenomen van PipeStream)
SetLength(Int64)

Hiermee stelt u de lengte van de huidige stroom in op de opgegeven waarde.

(Overgenomen van PipeStream)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)
WaitForPipeDrain()

Wacht tot het andere einde van de pijp alle verzonden bytes heeft gelezen.

(Overgenomen van PipeStream)
Write(Byte[], Int32, Int32)

Hiermee schrijft u een blok bytes naar de huidige stroom met behulp van gegevens uit een buffer.

(Overgenomen van PipeStream)
Write(ReadOnlySpan<Byte>)

Hiermee schrijft u een reeks bytes naar de huidige stroom en wordt de huidige positie binnen deze stroom verplaatst door het aantal geschreven bytes.

(Overgenomen van PipeStream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Asynchroon schrijft een opgegeven aantal bytes van een bytematrix vanaf een opgegeven positie, wordt de huidige positie binnen deze stroom vooruitgegaan door het aantal geschreven bytes en worden annuleringsaanvragen gecontroleerd.

(Overgenomen van PipeStream)
WriteAsync(Byte[], Int32, Int32)

Asynchroon schrijft een reeks bytes naar de huidige stroom en wordt de huidige positie binnen deze stroom verplaatst door het aantal geschreven bytes.

(Overgenomen van Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Asynchroon schrijft een reeks bytes naar de huidige stroom, verplaatst de huidige positie binnen deze stream door het aantal geschreven bytes en bewaakt annuleringsaanvragen.

(Overgenomen van PipeStream)
WriteByte(Byte)

Hiermee schrijft u een byte naar de huidige stream.

(Overgenomen van PipeStream)

Extensiemethoden

Name Description
ConfigureAwait(IAsyncDisposable, Boolean)

Hiermee configureert u hoe wacht op de taken die worden geretourneerd op basis van een asynchroon wegwerp, worden uitgevoerd.

Van toepassing op