问题-delphi 调试(F8)错行处理
在delphi 7中(其他版本也可能碰到该问题),编译后,代码左边显示蓝色小点,表示哪句代 码是被编译了的,可今天我的一些代码不能显示那些蓝点了,这样也就不能在上面设断点了,而且用F8跟踪发现执行的顺序不对.同时,编译中发现有错误的行,也没有指到对应的行上,可能在错误行的下一行,甚至有时候会执行到注释行或者空行上。造成该问题的原因是Dos换行和Unix换行的差异造成的错误。 Dos换行是2个字符,一个回车符+一个换行符。 Unix换行只有一个自符,好像是换行符。这样在Delphi编辑器内显示时候没有问题,跟踪执行,定位代码行的时候就不准确了。
一般不会有Unix换行进入的,但是,QQ的聊天窗口使用Unix换行的,拷贝粘贴的时候,就会弄成Unix换行。要解决该问题,可以用UltraEdit打开有问题的.Pas文件,然后菜单中档案-->转换-->UNIX/MAC 转DOS.转换后后保存,再用delphi打开就好了.////////////////// 解决办法,用UltraEdit打开有问题的Pas文件然后保存为Dos换行样式就好了。
================================================================
delphi编译时调试错行的问题现象,原因和处理
注:先做好备份,然后再处理。
问题现象:
现象1:鼠标移到变量上无提示。
现象2:编译后,左边的调试蓝点,有可能出现在变量声明那行上。(据观察,正常情况下调试蓝点,不会出现在变量声明的行上)。
现象3:编译后,应能调试的那个语句所在行,无调试蓝点,给那行加调试断点,运行程序后,断点显示一个×
现象4:过程或函数的最外面的begin 或 end的那行 有可能出现无调试蓝点。(正常来说应当出现)
现象5:程序有可能能编译通过,能正常运行。(我遇到过这种情况)
现象6:用UtrlEdit打开出现提示是否转换为dos格式。(注意要先备份,可以转,但不要着急保存)
问题原因:
是Dos换行和Unix换行的差异造成的错误。Dos换行是2个字符,一个回车符+一个换行符。Unix换行只有一个自符,好像是换行符。这样在Delphi编辑器内显示时候没有问题,跟踪执行,定位代码行的时候就不准确了。 一般不会有Unix换行进入的,但是,QQ的聊天窗口使用Unix换行的,拷贝粘贴的时候,就会弄成Unix换行。(BlueTrees 回复说)
参考: http://topic.csdn.net/t/20060505/13/4731278.html
问题处理:
千万不要直接照上面的参考连接中的“解决办法”处理 ,除非你的代码和注释都是英文的,否则你的中文都为变为\u开头的英文文字。
正确的处理方法:用UltraEdit打开有问题的Pas文件,按提示转换为dos格式,然后全选复制,粘贴全覆盖原来的代码(当然你要delphi打开你的代码)
环境:win2003sp2,delphi7,UltraEidt v15
你觉得不放心,还可以这么做:把每行代码的换行全部重做,然后保存,这个格式肯定是对的
问题现象:在F8跟踪时,每次定位的行都不是真正的行号。
问题原因:在本机上存在多个同名单位,而且同时被DELPHI引用。这时也会出现跟踪错行。
问题处理:在delphi中关闭错误的单元选择页,或是去掉错误的引用都可以。
问题-delphi 调试(F8)错行处理的更多相关文章
- delphi调试需要管理员权限程序报错“Unable to create process:请求的操作需要提升”
delphi调试启动需要UAC权限的程序的时候会报错“Unable to create process:请求的操作需要提升”.这是因为delphi没有以管理员身份启动,这样delphi createp ...
- [vscode] os.getcwd(),调试和命令行运行的结果不一致
问题描述: 调试和命令行运行的时候工作目录不一致 这会导致一个问题,我想从上级目录导入模块的话,F5调试就会找不到模块,而命令行则没问题 那么我该如何调试呢? 目录结构: top └ folder_ ...
- Xcode真机调试报错(证书的签发者无效)
Xcode真机调试时报错: dyld: Library not loaded: @rpath/libswiftAVFoundation.dylib Referenced from: /var/mobi ...
- 使用 GDB 调试需要命令行参数的程序
使用 gdb 命令提供的 --args 选项可以调试需要命令行参数的程序,如下: gdb --args a.out arg1 arg2 arg3
- 真机调试报错error ==Error Domain=NSURLErrorDomain Code=-1009 "似乎已断开与互联网的连接。"
真机调试报错error ==Error Domain=NSURLErrorDomain Code=-1009 "似乎已断开与互联网的连接." 请注意,错误代码是-1009,网上关于 ...
- chrome谷歌浏览器用这种方式清除缓存比较方便了,必须是调试模式才行
chrome谷歌浏览器用这种方式清除缓存比较方便了 PS:必须是调试模式才行,可以不是手机模式 ,有些低版本浏览器可能没有这个功能. ----------------------------- ...
- 今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2
今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2 查官方文档 解决方法 在 PowerShell中运行以下内容, 然后重启服务器 # Enab ...
- tmux上用vim时显示错行
环境:tmux-master,xshell4,vim7.4,CentOS6.9 tmux在某些版本会出现很奇怪的显示错乱问题,特别是在做替换的时候,只要页面翻动,显示就会乱,命令行会错位显示到状态行, ...
- element-ui 表格错行
//表格错行 .el-table th.gutter { display: table-cell !important }
随机推荐
- DB天气app冲刺第六天
更改计划 以前是准备完全自己写一个天气App 而且加上自己已经成功的做了一个安卓开发的小例子了,就感觉可以做的出来了.结果这五天证明自己一开始的思路就错了.所以上次跟别的同学问了一下.看了一下他们的方 ...
- Android手势监听
public class MainActivity extends Activity { /* * 要实现手指在屏幕上左右滑动的事件需要实例化对象GestureDetector,new * Gestu ...
- 线上问题:如何定位解决CPU高占有率
(原文转自:http://www.blogjava.net/hankchen) 以我们最近出现的一个实际故障为例,介绍怎么定位和解决这类问题. 根据top命令,发现PID为28555的Java进程占用 ...
- call()和apply()的区别
var a = function(a,b){ console.log(a+b); }, b = { c:5, d:3 }; a.call(b,1,2); a.apply(b,[1,2]); a.cal ...
- [BZOJ 4033] [HAOI2015] T1 【树形DP】
题目链接:BZOJ - 4033 题目分析 使用树形DP,用 f[i][j] 表示在以 i 为根的子树,有 j 个黑点的最大权值. 这个权值指的是,这个子树内部的点对间距离的贡献,以及 i 和 Fat ...
- WebKit Web Inspector增加覆盖率分析和类型推断功能
WebKit中的Web Inspector(Web检查器)主要用于查看页面源代码.实时DOM层次结构.脚本调试.数据收集等,日前增加了两个十分有用的新功能:覆盖率分析和类型推断.覆盖率分析工具能够可视 ...
- 过生日,也要学学哈,这次是SHELL的GETOPTS
今天是WEBSOCKET,, 先完成一个SHELL的GETOPS,周一就用得着. #!/bin/bash echo "usage: ./$0 -t (prism|opscripts)&quo ...
- 实现SELECT的全选,反选,AB选的JAVASCRIPT代码
参考网上,用原生JS粗糙实现. 我发现用UIKIT的BUTTON会自动刷新我那核心的模态窗口,只好用另外的LABEL或CODE标签了. $(".btn-select-all").c ...
- VC常用数据类型使用转换
我们先定义一些常见类型变量借以说明 int i = 100; long l = 2001; float f=300.2; double d=12345.119; char username[]=&qu ...
- new[]上面居然有一个内存计数,怪不得delete[]从来不出错
开眼界了,留个爪,以后再仔细看几遍: http://www.cnblogs.com/hazir/p/new_and_delete.html