示例#1
0
        static public ERR_RESULT SetErrResult_UserMessage(Exception err, Int16?InnerErr = null, String msg = null)
        {
            ERR_RESULT result = new ERR_RESULT();

            String[] ErrTrace = new String[255];

            ExtractErrTrace(err.StackTrace, ref ErrTrace);
            int        pos = ErrTrace.Length;
            ErrProcess ep  = err as ErrProcess;           //에러코드와 그에 따른 메세지를 받기위해

            if (ep == null)                               //예상외의 오류
            {
                ep = new ErrProcess(-10);                 // 재정의
                result.funcName      = ErrTrace[pos - 2]; // 호출된 함수 Name
                result.errTrace      = ErrTrace[pos - 1]; // 에러 위치
                result.message       = msg;
                result.Inner_errCode = InnerErr;
                result.errCode       = ep.ErrCode;
            }

            else // 정의되어있는 오류
            {
                result.funcName      = ErrTrace[pos - 2]; // 호출된 함수 Name
                result.errTrace      = ErrTrace[pos - 1]; // 에러 위치
                result.message       = msg;
                result.Inner_errCode = InnerErr;
                result.errCode       = ep.ErrCode;
            }
            return(result);
        }
示例#2
0
        /*
         * public void SetErrCall(Int16 errCode)
         * {
         *  m_ErrCode = ErrCode;
         *
         *  ERR_RESULT result = new ERR_RESULT();
         *  result.errCode = errCode;
         *  result.message = GetErrMessage();
         *
         *  if (ActionCallback == null)
         *      return;
         *
         *  ActionCallback(result);
         * }*/
        public void SetErrCall(ERR_RESULT err)
        {
            if (ActionCallback == null)
            {
                return;
            }

            ActionCallback(err);
        }