Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
Named pipes are a powerful feature in Windows for inter-process communication (IPC). They allow for efficient data exchange between processes running on the same machine or across a network. The NamedPipeClientStream
class in .NET provides a managed implementation for connecting to and communicating with a named pipe server. This article explains how to create and use NamedPipeClientStream
in a Windows environment, highlighting its importance for developers who need to implement IPC in their applications.
Examples:
1. Creating a Named Pipe Server:
First, let's create a simple named pipe server using C#. This server will wait for a client to connect and then read a message from the client.
using System;
using System.IO.Pipes;
using System.Text;
class NamedPipeServer
{
static void Main()
{
using (NamedPipeServerStream pipeServer = new NamedPipeServerStream("testpipe", PipeDirection.In))
{
Console.WriteLine("Named Pipe Server is waiting for a connection...");
pipeServer.WaitForConnection();
Console.WriteLine("Client connected.");
using (StreamReader reader = new StreamReader(pipeServer))
{
string message = reader.ReadToEnd();
Console.WriteLine("Received from client: " + message);
}
}
}
}
2. Creating a Named Pipe Client:
Now, let's create a named pipe client that connects to the server and sends a message.
using System;
using System.IO.Pipes;
using System.Text;
class NamedPipeClient
{
static void Main()
{
using (NamedPipeClientStream pipeClient = new NamedPipeClientStream(".", "testpipe", PipeDirection.Out))
{
Console.WriteLine("Connecting to server...");
pipeClient.Connect();
Console.WriteLine("Connected to server.");
using (StreamWriter writer = new StreamWriter(pipeClient))
{
writer.Write("Hello, Pipe Server!");
writer.Flush();
}
}
}
}
3. Running the Server and Client:
To test the communication, you need to run the server and client applications. Open two command prompt windows. In the first window, navigate to the directory containing the NamedPipeServer
executable and run it:
C:\Path\To\Executable> NamedPipeServer.exe
In the second window, navigate to the directory containing the NamedPipeClient
executable and run it:
C:\Path\To\Executable> NamedPipeClient.exe
You should see the server output indicating that it received a message from the client.