AnonymousPipeClientStream Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase AnonymousPipeClientStream.
Sobrecargas
AnonymousPipeClientStream(String) |
Inicializa una nueva instancia de la clase AnonymousPipeClientStream con la representación de cadena especificada para el identificador de canalización. |
AnonymousPipeClientStream(PipeDirection, SafePipeHandle) |
Inicializa una nueva instancia de la clase AnonymousPipeClientStream a partir del identificador especificado. |
AnonymousPipeClientStream(PipeDirection, String) |
Inicializa una nueva instancia de la clase AnonymousPipeClientStream con la dirección de canalización especificada y una representación de cadena del identificador de canalización. |
AnonymousPipeClientStream(String)
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
Inicializa una nueva instancia de la clase AnonymousPipeClientStream con la representación de cadena especificada para el identificador de canalización.
public:
AnonymousPipeClientStream(System::String ^ pipeHandleAsString);
public AnonymousPipeClientStream (string pipeHandleAsString);
new System.IO.Pipes.AnonymousPipeClientStream : string -> System.IO.Pipes.AnonymousPipeClientStream
Public Sub New (pipeHandleAsString As String)
Parámetros
- pipeHandleAsString
- String
Una cadena que representa el identificador de canalización.
Excepciones
El valor de pipeHandleAsString
no es un identificador de canalización válido.
Ejemplos
En el ejemplo siguiente se muestra una manera de enviar una cadena desde un proceso primario a un proceso secundario mediante canalizaciones anónimas. En este ejemplo, se crea un AnonymousPipeClientStream objeto en un proceso secundario.
using System;
using System.IO;
using System.IO.Pipes;
class PipeClient
{
static void Main(string[] args)
{
if (args.Length > 0)
{
using (PipeStream pipeClient =
new AnonymousPipeClientStream(args[0]))
{
Console.WriteLine("Current TransmissionMode: {0}.",
pipeClient.TransmissionMode);
// Anonymous Pipes do not support Message mode.
try
{
Console.WriteLine("Setting ReadMode to \"Message\".");
pipeClient.ReadMode = PipeTransmissionMode.Message;
}
catch (NotSupportedException e)
{
Console.WriteLine("EXCEPTION: {0}", e.Message);
}
using (StreamReader sr = new StreamReader(pipeClient))
{
// Display the read text to the console
string temp;
while ((temp = sr.ReadLine()) != null)
{
Console.WriteLine(temp);
}
}
}
}
Console.Write("Press Enter to continue...");
Console.ReadLine();
}
}
Imports System.IO
Imports System.IO.Pipes
Class PipeClient
Shared Sub Main(ByVal args As String())
If (args.Length > 0) Then
Using pipeClient As New AnonymousPipeClientStream(args(0))
Console.WriteLine("Current TransmissionMode: {0}.", _
pipeClient.TransmissionMode)
' Anonymous Pipes do not support Message mode.
Try
Console.WriteLine("Setting ReadMode to 'Message'.")
pipeClient.ReadMode = PipeTransmissionMode.Message
Catch e As NotSupportedException
Console.WriteLine("EXCEPTION: {0}", e.Message)
End Try
Using sr As New StreamReader(pipeClient)
' Display the read text to the console
Dim temp As String
temp = sr.ReadLine()
While Not temp = Nothing
Console.WriteLine(temp)
temp = sr.ReadLine()
End While
End Using
End Using
End If
Console.Write("Press Enter to continue...")
Console.ReadLine()
End Sub
End Class
Comentarios
En el caso de los constructores sin un PipeDirection parámetro, la dirección predeterminada es In.
Se aplica a
AnonymousPipeClientStream(PipeDirection, SafePipeHandle)
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
Inicializa una nueva instancia de la clase AnonymousPipeClientStream a partir del identificador especificado.
public:
AnonymousPipeClientStream(System::IO::Pipes::PipeDirection direction, Microsoft::Win32::SafeHandles::SafePipeHandle ^ safePipeHandle);
public AnonymousPipeClientStream (System.IO.Pipes.PipeDirection direction, Microsoft.Win32.SafeHandles.SafePipeHandle safePipeHandle);
[System.Security.SecurityCritical]
public AnonymousPipeClientStream (System.IO.Pipes.PipeDirection direction, Microsoft.Win32.SafeHandles.SafePipeHandle safePipeHandle);
new System.IO.Pipes.AnonymousPipeClientStream : System.IO.Pipes.PipeDirection * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.AnonymousPipeClientStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeClientStream : System.IO.Pipes.PipeDirection * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.AnonymousPipeClientStream
Public Sub New (direction As PipeDirection, safePipeHandle As SafePipeHandle)
Parámetros
- direction
- PipeDirection
Uno de los valores de enumeración que determina la dirección de la canalización.
Las canalizaciones anónimas solo pueden ser en una dirección, por lo que direction
no se puede establecer en InOut.
- safePipeHandle
- SafePipeHandle
Controlador seguro para la canalización que este objeto AnonymousPipeClientStream encapsulará.
- Atributos
Excepciones
safePipeHandle
no es un controlador válido.
safePipeHandle
es null
.
El valor de direction
está establecido en InOut.
Se ha producido un error de E/S, como un error de disco.
o bien
Se ha cerrado la secuencia.
Ejemplos
En el ejemplo siguiente se muestra una manera de enviar una cadena desde un proceso primario a un proceso secundario mediante canalizaciones anónimas. En este ejemplo, se crea un AnonymousPipeClientStream objeto en un proceso secundario con un PipeDirection valor de In.
using System;
using System.IO;
using System.IO.Pipes;
class PipeClient
{
static void Main(string[] args)
{
if (args.Length > 0)
{
using (PipeStream pipeClient =
new AnonymousPipeClientStream(args[0]))
{
Console.WriteLine("Current TransmissionMode: {0}.",
pipeClient.TransmissionMode);
// Anonymous Pipes do not support Message mode.
try
{
Console.WriteLine("Setting ReadMode to \"Message\".");
pipeClient.ReadMode = PipeTransmissionMode.Message;
}
catch (NotSupportedException e)
{
Console.WriteLine("EXCEPTION: {0}", e.Message);
}
using (StreamReader sr = new StreamReader(pipeClient))
{
// Display the read text to the console
string temp;
while ((temp = sr.ReadLine()) != null)
{
Console.WriteLine(temp);
}
}
}
}
Console.Write("Press Enter to continue...");
Console.ReadLine();
}
}
Imports System.IO
Imports System.IO.Pipes
Class PipeClient
Shared Sub Main(ByVal args As String())
If (args.Length > 0) Then
Using pipeClient As New AnonymousPipeClientStream(args(0))
Console.WriteLine("Current TransmissionMode: {0}.", _
pipeClient.TransmissionMode)
' Anonymous Pipes do not support Message mode.
Try
Console.WriteLine("Setting ReadMode to 'Message'.")
pipeClient.ReadMode = PipeTransmissionMode.Message
Catch e As NotSupportedException
Console.WriteLine("EXCEPTION: {0}", e.Message)
End Try
Using sr As New StreamReader(pipeClient)
' Display the read text to the console
Dim temp As String
temp = sr.ReadLine()
While Not temp = Nothing
Console.WriteLine(temp)
temp = sr.ReadLine()
End While
End Using
End Using
End If
Console.Write("Press Enter to continue...")
Console.ReadLine()
End Sub
End Class
Comentarios
No se admite un PipeDirection valor de InOut porque las canalizaciones anónimas se definen como unidireccionales.
Se aplica a
AnonymousPipeClientStream(PipeDirection, String)
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
Inicializa una nueva instancia de la clase AnonymousPipeClientStream con la dirección de canalización especificada y una representación de cadena del identificador de canalización.
public:
AnonymousPipeClientStream(System::IO::Pipes::PipeDirection direction, System::String ^ pipeHandleAsString);
public AnonymousPipeClientStream (System.IO.Pipes.PipeDirection direction, string pipeHandleAsString);
[System.Security.SecurityCritical]
public AnonymousPipeClientStream (System.IO.Pipes.PipeDirection direction, string pipeHandleAsString);
new System.IO.Pipes.AnonymousPipeClientStream : System.IO.Pipes.PipeDirection * string -> System.IO.Pipes.AnonymousPipeClientStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeClientStream : System.IO.Pipes.PipeDirection * string -> System.IO.Pipes.AnonymousPipeClientStream
Public Sub New (direction As PipeDirection, pipeHandleAsString As String)
Parámetros
- direction
- PipeDirection
Uno de los valores de enumeración que determina la dirección de la canalización.
Las canalizaciones anónimas solo pueden ser en una dirección, por lo que direction
no se puede establecer en InOut.
- pipeHandleAsString
- String
Una cadena que representa el identificador de canalización.
- Atributos
Excepciones
pipeHandleAsString
es un controlador no válido.
pipeHandleAsString
es null
.
El valor de direction
está establecido en InOut.
Ejemplos
En el ejemplo siguiente se muestra una manera de enviar una cadena desde un proceso primario a un proceso secundario mediante canalizaciones anónimas. En este ejemplo, se crea un AnonymousPipeClientStream objeto en un proceso secundario con un PipeDirection valor de In.
//<snippet01>
#using <System.Core.dll>
using namespace System;
using namespace System::IO;
using namespace System::IO::Pipes;
ref class PipeClient
{
public:
static void Main(array<String^>^ args)
{
if (args->Length > 1)
{
PipeStream^ pipeClient = gcnew AnonymousPipeClientStream(PipeDirection::In, args[1]);
Console::WriteLine("[CLIENT] Current TransmissionMode: {0}.",
pipeClient->TransmissionMode);
StreamReader^ sr = gcnew StreamReader(pipeClient);
// Display the read text to the console
String^ temp;
// Wait for 'sync message' from the server.
do
{
Console::WriteLine("[CLIENT] Wait for sync...");
temp = sr->ReadLine();
}
while (!temp->StartsWith("SYNC"));
// Read the server data and echo to the console.
while ((temp = sr->ReadLine()) != nullptr)
{
Console::WriteLine("[CLIENT] Echo: " + temp);
}
sr->Close();
pipeClient->Close();
}
Console::Write("[CLIENT] Press Enter to continue...");
Console::ReadLine();
}
};
int main()
{
array<String^>^ args = Environment::GetCommandLineArgs();
PipeClient::Main(args);
}
//</snippet01>
//<snippet01>
using System;
using System.IO;
using System.IO.Pipes;
class PipeClient
{
static void Main(string[] args)
{
if (args.Length > 0)
{
using (PipeStream pipeClient =
new AnonymousPipeClientStream(PipeDirection.In, args[0]))
{
Console.WriteLine("[CLIENT] Current TransmissionMode: {0}.",
pipeClient.TransmissionMode);
using (StreamReader sr = new StreamReader(pipeClient))
{
// Display the read text to the console
string temp;
// Wait for 'sync message' from the server.
do
{
Console.WriteLine("[CLIENT] Wait for sync...");
temp = sr.ReadLine();
}
while (!temp.StartsWith("SYNC"));
// Read the server data and echo to the console.
while ((temp = sr.ReadLine()) != null)
{
Console.WriteLine("[CLIENT] Echo: " + temp);
}
}
}
}
Console.Write("[CLIENT] Press Enter to continue...");
Console.ReadLine();
}
}
//</snippet01>
'<snippet01>
Imports System.IO
Imports System.IO.Pipes
Class PipeClient
Shared Sub Main(args() as String)
If args.Length > 0 Then
Using pipeClient As New AnonymousPipeClientStream(PipeDirection.In, args(0))
Console.WriteLine("[CLIENT] Current TransmissionMode: {0}.", _
pipeClient.TransmissionMode)
Using sr As New StreamReader(pipeClient)
' Display the read text to the console
Dim temp As String
' Wait for 'sync message' from the server.
Do
Console.WriteLine("[CLIENT] Wait for sync...")
temp = sr.ReadLine()
Loop While temp.StartsWith("SYNC") = False
' Read the server data and echo to the console.
temp = sr.ReadLine()
While Not temp = Nothing
Console.WriteLine("[CLIENT] Echo: " + temp)
temp = sr.ReadLine()
End While
End Using
End Using
End If
Console.Write("[CLIENT] Press Enter to continue...")
Console.ReadLine()
End Sub
End Class
'</snippet01>
Comentarios
No se admite un PipeDirection valor de InOut porque las canalizaciones anónimas se definen como unidireccionales.