blob: 5e8d841087d7c36a07ecd56c788f58cb26b6054b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
using System;
using System.IO;
using System.IO.Pipes;
using System.Runtime.CompilerServices;
namespace Gestor.Application.Helpers
{
public class PipeClient
{
private string _pipeName;
private NamedPipeClientStream Pipe
{
get;
set;
}
public PipeClient(string pipeName)
{
this._pipeName = pipeName;
}
public bool Send(dynamic message)
{
bool flag;
try
{
this.Pipe = new NamedPipeClientStream(".", this._pipeName, PipeDirection.Out, PipeOptions.Asynchronous);
this.Pipe.Connect(1000);
if (this.Pipe.IsConnected)
{
using (StreamWriter streamWriter = new StreamWriter(this.Pipe))
{
streamWriter.AutoFlush = true;
streamWriter.WriteLine(JsonConvert.SerializeObject(message));
this.Pipe.WaitForPipeDrain();
}
return true;
}
else
{
flag = false;
}
}
catch (TimeoutException timeoutException)
{
flag = false;
}
return flag;
}
}
}
|