Exemplo n.º 1
0
        /// <summary>
        /// EXCEPTION_EXECUTE_HANDLER == 1 表示我已经处理了异常,可以优雅地结束了
        /// EXCEPTION_CONTINUE_SEARCH == 0 表示我不处理,其他人来吧,于是windows调用默认的处理程序显示一个错误框,并结束
        /// EXCEPTION_CONTINUE_EXECUTION e== -1 表示错误已经被修复,请从异常发生处继续执行。
        /// </summary>
        /// <param name="a"></param>
        /// <returns></returns>
        private static Int32 最后处理异常(ref long a)
        {
            var __文件名 = "未处理异常";

            if (!_获取是否DotNet异常())
            {
                H调试.记录致命("!!!跨平台(P/INVOKE)调用异常 !!!");
                __文件名 = "跨平台调用异常";
            }
            __文件名 += DateTime.Now.ToString("yyyy年MM月dd日 HH时mm分ss秒");
            记录(string.Format("{0}\\{1}.dmp", H调试.日志目录, __文件名));
            H调试.截屏(__文件名);
            return(1);
        }