这必须是Delphi的bug …
我有一个单位,这是我的持久性框架的基础.在该单元中,我有一个用于所有域对象的基类,一个列表类和一个通用列表类.
就在最近我注意到,当我在调试时进入单元时,执行将跳转到文件中的某个位置,而不是它应该……可能是四行或五行.重新排序文件没有区别.代码也会生成访问冲突,但只有在我调试它时.
我试图找到原因…我想到了几件事情,比如一些代码注入拧紧调试器(例如this logitec webcam driver bug),或调试信息与我的单位源不同步(例如dcu正在从一些旧的来源拉出来).
最后,我用一个干净的Windows Delphi安装启动了一个虚拟机,只抓住了测试单元所需的东西,然后我创建了一个小的DUnit项目来测试它.同样的问题.
然后我开始一次从设备中取出东西直到它工作.唯一不同的是我删除了通用列表类.
有没有人见过这个问题?有谁知道如何绕过它?
提前致谢,
N – [
更新:将通用添加回单元会使问题回来,因此这不是陈旧DCU的问题.