截获程序异常状态并继续运行

易语言 2020-08-24 17:55:49

截获程序异常状态并继续运行

.计次循环首 (取数组成员数 (co.FloatSave.RegisterArea), 循环)
临时文本 = 临时文本 + 到文本 (循环) + “ | ” + 到文本 (co.FloatSave.RegisterArea [循环]) + #换行符
.计次循环尾 ()
临时文本 = 临时文本 + 取重复文本 (20, “=”) + #换行符
临时文本 = 临时文本 + “CONTEXT ExtendedRegisters” + #换行符
临时文本 = 临时文本 + “CONTEXT ExtendedRegisters:” + 到文本 (co.ExtendedRegisters) + #换行符
.计次循环首 (取数组成员数 (co.ExtendedRegisters), 循环)
临时文本 = 临时文本 + 到文本 (循环) + “ | ” + 到文本 (co.ExtendedRegisters [循环]) + #换行符
.计次循环尾 ()
置入代码 ({ 255, 116, 36, 8, 100, 255, 53, 0, 0, 0, 0, 100, 137, 37, 0, 0, 0, 0 })
写到文件 (取运行目录 () + “\Error.log”, 到字节集 (临时文本))
写到内存 (取子程序地址 (&信息框_), ex.ContextRecord + 184, 4)
信息框 (“异常位置:” + 取十六进制文本 (co.Eip) + “ 异常代码:” + 取十六进制文本 (ec.ExceptionCode) + “ 标志:” + 取十六进制文本 (ec.ExceptionFlags), 0, )