public void StartPipe(string pipeName, ConnectionMode mode)
        {
            mPipeName = pipeName;
            mMode     = mode;

            Close();
            ConnectionMode = Mode.PipeMode;

            mNamedPipe = new NamedPipe();
            mNamedPipe.ClientConnectedEvent    += new EventHandler(NamedPipe_ClientConnectedEvent);
            mNamedPipe.ClientDisconnectedEvent += new EventHandler(NamedPipe_ClientDisconectedEvent);
            mNamedPipe.PipeReceiveEvent        += new PipeReceiveEventHandler(PipeReceiveEvent);
            mNamedPipe.PipeErrorEvent          += new PipeErrorEventHandler(MediumErrorEvent);

            mNamedPipe.CreatePipe(pipeName, mode);
        }
 void NamedPipe_ClientDisconectedEvent(object sender, EventArgs e)
 {
     Running = false;
     mNamedPipe.Close();
     mNamedPipe.CreatePipe(mPipeName, mMode);
 }