/// <exception cref="System.IO.IOException"></exception>
		public override void Write(byte[] b, int off, int len)
		{
			if (len < 0)
			{
				len = 0;
			}
			if ((_pipe.PipeType & SmbNamedPipe.PipeTypeCall) == SmbNamedPipe.PipeTypeCall)
			{
				_pipe.Send(new TransWaitNamedPipe(_path), new TransWaitNamedPipeResponse());
				_pipe.Send(new TransCallNamedPipe(_path, b, off, len), new TransCallNamedPipeResponse
					(_pipe));
			}
			else
			{
				if ((_pipe.PipeType & SmbNamedPipe.PipeTypeTransact) == SmbNamedPipe.PipeTypeTransact)
				{
					EnsureOpen();
					TransTransactNamedPipe req = new TransTransactNamedPipe(_pipe.Fid, b, off, len);
					if (_dcePipe)
					{
						req.MaxDataCount = 1024;
					}
					_pipe.Send(req, new TransTransactNamedPipeResponse(_pipe));
				}
			}
		}
 /// <exception cref="System.IO.IOException"></exception>
 public override void Write(byte[] b, int off, int len)
 {
     if (len < 0)
     {
         len = 0;
     }
     if ((_pipe.PipeType & SmbNamedPipe.PipeTypeCall) == SmbNamedPipe.PipeTypeCall)
     {
         _pipe.Send(new TransWaitNamedPipe(_path),
                    new TransWaitNamedPipeResponse());
         _pipe.Send(new TransCallNamedPipe(_path, b, off, len),
                    new TransCallNamedPipeResponse(_pipe));
     }
     else
     {
         if ((_pipe.PipeType & SmbNamedPipe.PipeTypeTransact)
             == SmbNamedPipe.PipeTypeTransact)
         {
             EnsureOpen();
             TransTransactNamedPipe req
                 = new TransTransactNamedPipe(_pipe.Fid, b, off, len);
             if (_dcePipe)
             {
                 req.MaxDataCount = 1024;
             }
             _pipe.Send(req, new TransTransactNamedPipeResponse(_pipe));
         }
     }
 }