NamedPipeMessage 3.2.1
dotnet add package NamedPipeMessage --version 3.2.1
NuGet\Install-Package NamedPipeMessage -Version 3.2.1
<PackageReference Include="NamedPipeMessage" Version="3.2.1" />
paket add NamedPipeMessage --version 3.2.1
#r "nuget: NamedPipeMessage, 3.2.1"
// Install NamedPipeMessage as a Cake Addin #addin nuget:?package=NamedPipeMessage&version=3.2.1 // Install NamedPipeMessage as a Cake Tool #tool nuget:?package=NamedPipeMessage&version=3.2.1
The easiest way to consume this library is to use NamedPipeClient
and NamedPipeServer
Pipe Message
is used to construct message chains between NamedPipeClientStream
and NamedPipeServerStream
Client Example
using NamedPipeClientStream pipeClient = new(".", "testpipe", PipeDirection.InOut);
if (new NamedPipeHandshakeClient(pipeClient).Client(sharedSecret))
{
return new NamedPipeMessage(pipeClient).WriteStringWaitForRead(dataForServer) == "Success";
}
Server Example
NamedPipeServerStream _pipeServer = new NamedPipeServerStream("testpipe", PipeDirection.InOut, 1, PipeTransmissionMode.Message, PipeOptions.WriteThrough);
NamedPipeHandshakeServer _pipeHandshake = new(_pipeServer);
string clientResponse = _pipeHandshake.Server(sharedSecret);
if (clientResponse != null)
{
new NamedPipeMessage(_pipeServer).WriteString("Success");
}
Named Pipe Message
Used Internally by NamedPipeClient
and NamedPipeServer
WaitForRead()
Wait for the other end of the pipe to send a message
This will timeout and return null
after 60 seconds
if the other end does not send anything
The timeout
can be changed with PipeApplicationGlobals.SetTimeoutMs(500);
new NamedPipeMessage(pipeServer).WaitForRead()
WriteStringWaitForRead(string data)
Send a message and wait for the other end of the pipe to send a message back
This will timeout and return null
after 60 seconds
if the other end does not send anything
The timeout
can be changed with PipeApplicationGlobals.SetTimeoutMs(500);
new NamedPipeMessage(pipeClient).WriteStringWaitForRead(sharedSecret + "/-\\" + pipeName)
TryReadString()
Try read a string from the underlying Stream
clientData = TryReadString()
WriteString(string data)
Write a data string to the underlying Stream
new NamedPipeMessage(pipeServer).WriteString("Success")
NamedPipeHandshakeClient
Used by the NamedPipeClient
to validate the shared secret from the NamedPipeServer
new NamedPipeHandshakeClient(pipeClient).Client(sharedSecret)
NamedPipeHandshakeServer
Used by the NamedPipeServer
to validate the shared secret from the NamedPipeClient
new NamedPipeHandshakeServer(pipeServer).Server(sharedSecret)
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- High_Resolution_Sleep (= 2.0.0.11)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|
-----------------
Please use the most recent version visible on Nuget, old versions are hidden but can still be downloaded indirectly