Delphi 7 在编译环境下无法正常捕获异常
因为突然有个上位机的项目要接手,但他原来使用的语言是delphi,所以接手之后要稍微熟悉一下delphi语言,看了一天,感觉delphi程序的大体运行方式跟C#程序差不多,可是刚刚我在写捕获异常demo的时候遇到一个问题。通过查询找到了解决方案,这里记录一下。
问题
Delphi在调试捕获异常(try except)程序时,发现程序并没有有效地捕获异常而去执行except后面的程序,而是仍然发生程序错误而导致程序先弹出异常信息提示框后程序崩溃。
解决方案
-
脱离Delphi环境执行编译好的程序。
-
如非要在Delphi环境中运行也可以,在Tools->Debuger Options->Language Exceptions面板中把“Stop On Delphi Exceptions”的勾去掉就行了!
Delphi 7 使用快捷键
- F9 → debug
- F11→ 控件属性表
- F12 → 切换设计框和代码编辑框
- Ctrl + Shift + U → 整块代码左移
- Ctrl + Shift + I → 整块代码右移
- Ctrl + Y → 删除整行代码
- Ctrl + J → 代码块快捷提示
- Ctrl + Shift + ↑ → 光标在函数体内时,将光标快速移至当前函数声明处
- Ctrl + Shift +↓ → 光标在函数声明行时,将光标快速移至函数定义处
- F5 → 添加断点
- F4 → 将程序运行到光标处
- F7 → 跟踪运行
- F8 → 单步运行
- Shift + F8 → 运行到函数或者过程的结束处
- 【Run】/【Program Reset】(Ctrl + F2) → 结束debug
- 光标移动到变量处 + Ctrl + F5 → 把变量添加到监视器中
- 直接双击错误信息 → 跳转错误代码位置
- 【View】/【Alignment Palette】 → 调整控件排列顺序
- 在 implementation 后加入 {$APPTYPE CONSOLE} 使用 Write() 打印输出