////////////////////////////////////////////////// // Created by Ivan Latunov - IvanWeb.com // //----------------------------------------------// // This program is free software. You can // // redistribute it and/or modify it as you wish // ////////////////////////////////////////////////// using System; using System.Runtime.Serialization; using sscs.communication.win.InterProcessComm; namespace sscs.communication.win.NamedPipes { #region Comments /// <summary> /// This exception is thrown by named pipes communication methods. /// </summary> #endregion public class NamedPipeIOException : InterProcessIOException { #region Comments /// <summary> /// Creates a NamedPipeIOException instance. /// </summary> /// <param name="text">The error message text.</param> #endregion public NamedPipeIOException(String text) : base(text) { } #region Comments /// <summary> /// Creates a NamedPipeIOException instance. /// </summary> /// <param name="text">The error message text.</param> /// <param name="errorCode">The native error code.</param> #endregion public NamedPipeIOException(String text, uint errorCode) : base(text) { this.ErrorCode = errorCode; if (errorCode == NamedPipeNative.ERROR_CANNOT_CONNECT_TO_PIPE) { this.IsServerAvailable = false; } } #region Comments /// <summary> /// Creates a NamedPipeIOException instance. /// </summary> /// <param name="info">The serialization information.</param> /// <param name="context">The streaming context.</param> #endregion protected NamedPipeIOException(SerializationInfo info, StreamingContext context) : base(info, context) { } } }