我在Delphi 2007中遇到以下错误。这是什么意思?
[DCC错误] uMyUnit.pas(9614):F2084内部错误:AV21B66E31-R0000000F-0
我最近添加了一些代码删除,行插入/删除,更改编译器选项,但没有任何效果。
我可以通过关闭'Typed pointer @ operation'选项来解决这个问题。有趣的是,它正在使用此选项。但是在我添加了一些甚至没有指针的代码之后它就破了。
答案 0 :(得分:3)
这是任何Delphi开发人员都非常熟悉的错误缩减版本。如果你在IDE中看到它,它会说:
位置21B66E31的访问冲突: 读取地址00000000。
这意味着您的代码(如当前编写的那样)已设法在编译器中公开错误。不幸的是,由于编译器的源代码不可用,唯一要做的就是继续做更多你已经尝试过的迄今为止没有用过的东西。
或者尝试更新到D2010,看看它是否效果更好。他们修复了Delphi 2010中的许多内部编译器错误。(当然,其中很多是Delphi 2009中引入的新错误,但其中一些并非如此。)
答案 1 :(得分:3)
你有没有尝试过:
- 删除所有dcus并重建
- 使用命令行编译器构建
- 改变使用条款中单位的顺序
- 把你的头撞在墙上(没有帮助,但至少你知道它为什么会伤害^ = ^)
答案 2 :(得分:1)
尝试重新启动IDE。它解决了很多内部错误。
如果重启后错误仍然存在,并且一切仍然有效,则可以忽略该错误。我怀疑,由于某些资源编译器问题,我的一个项目存在内部错误,但是在两年后它仍然有效,即使在经过多次修改和重建之后也是如此。