public void SendMessage(string message) { if (_pipe.IsConnected) { Connected = true; var msg = new PipeMessage(message); _pipe.BeginWrite(msg.MessageBytes, 0, PipeMessage.MessageBufferSize, AsyncBeginWriteCallback, _pipe); } else { Connected = false; throw new Exception("No client connected to pipe."); } }
private void BeginRead() { _pipeMessage = new PipeMessage(); try { _pipe.BeginRead(_pipeMessage.MessageBytes, 0, PipeMessage.MessageBufferSize, AsyncReadMessageCallback, _pipe); } catch (IOException ioe) { Debug.WriteLine(ioe.Message); if (ioe.Message.Contains("Waiting for")) { Close(); Open(); } else { throw; } } }