汇编语言ErrorHandler过程:获取错误信息


过程 ErrorHandler 是可选的,如果在注册和创建程序主窗口的过程中系统报错,则调用该过程。

比如,如果成功注册程序主窗口,则函数 RegisterClass 返回非零值。但是,如果该函数返回值为零,那么就调用 ErrorHandler( 显示一条消息 ) 并退出程序:

INVOKE RegisterClass, ADDR MainWin
.IF eax == 0
    call ErrorHandler
    jmp Exit_Program
.ENDIF

过程 ErrorHandler 需要执行几个重要任务:
  • 调用 GetLastError 取得系统错误号。
  • 调用 FormatMessage 取得合适的系统格式化的错误消息字符串。
  • 调用 MessageBox 显示包含错误消息字符串的弹出消息框。
  • 调用 LocalFree 释放错误消息字符串使用的内存空间。