Delphi 2007内部错误

发布于 2024-09-06 08:23:22 字数 236 浏览 8 评论 0原文

我在 Delphi 2007 中收到以下错误。这是什么意思?

[DCC 错误] uMyUnit.pas(9614): F2084 内部错误: AV21B66E31-R0000000F-0

我做了一些最近添加的代码删除、行插入/删除、更改编译器选项,但没有任何效果。

我能够通过关闭“类型指针@操作”选项来解决这个问题。有趣的是,它在打开此选项的情况下工作。但是在我添加了一些甚至没有指针的代码后,它就崩溃了。

I got the following error in Delphi 2007. What does it mean?

[DCC Error] uMyUnit.pas(9614): F2084 Internal Error: AV21B66E31-R0000000F-0

I did some recently added code removing, line insertions/deletions, changing compiler options, but nothing worked.

I was able to solve this by switching the 'Typed pointer @ operation' option off. Interestingly, that it was working with this option switched on. But after I added some code which doesn't even had pointers it broke.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

萌酱 2024-09-13 08:23:22

这是任何 Delphi 开发人员都非常熟悉的错误的精简版本。如果您在 IDE 中看到它,它会显示如下内容:

位置 21B66E31 发生访问冲突:
读取地址 00000000。

这意味着您当前编写的代码已成功暴露了编译器中的错误。不幸的是,由于编译器的源代码不可用,对此唯一能做的就是继续做更多您已经尝试过但迄今为止尚未奏效的事情。

或者尝试更新到D2010,看看是否效果更好。他们修复了 Delphi 2010 中的许多内部编译器错误。(当然,其中很多是 Delphi 2009 中引入的新错误,但其中一些不是。)

It's a condensed-down version of an error that's pretty familiar to any Delphi developer. If you saw it in the IDE, it would say something like:

Access Violation at location 21B66E31:
Read of address 00000000.

It means that your code, as currently written, has managed to expose a bug in the compiler. Unfortunately, the only thing to do about it, since the source for the compiler isn't available, is keep doing more of what you've already tried that hasn't worked so far.

Or try updating to D2010 and see if it works better. They fixed a lot of internal compiler errors in Delphi 2010. (Granted, a lot of them were new errors introduced in Delphi 2009, but some of them weren't.)

夜光 2024-09-13 08:23:22

您是否尝试过:
- 删除所有 dcus 并重建
- 使用命令行编译器构建
- 打乱 use 子句中单位的顺序
- 用头撞墙(没有帮助,但至少你知道为什么会痛^=^)

Have you tried to:
- remove all the dcus and rebuild
- build with the command line compiler
- shuffle the order of the units in the uses clause
- bang your head on the wall (does not help, but at least you know why it hurts ^=^)

乄_柒ぐ汐 2024-09-13 08:23:22

尝试重新启动 IDE。它修复了许多内部错误。

如果重新启动后错误仍然出现,并且一切仍然正常,您可以忽略该错误。我怀疑我的一个项目由于某些资源编译器问题而出现内部错误,但两年后它仍然有效,即使经过多次修改和重建也是如此。

Try restarting the IDE. It fixes a lot of internal errors.

If the error keeps occurring after a restart, and everything is still working, you can ignore the error. One of my projects has an internal error due to some resource compiler issue, I suspect, however it still works two years later, even after many modifications and rebuilds.

小苏打饼 2024-09-13 08:23:22

仍然存在:F2084 内部错误 LA33

可能是此错误的原因:
使用新旧 Delphi-IDE 编译源代码
(例如 Delphi-6 和 Delphi-Sydney)
可能是*.res文件不向后兼容

解决方案:

  • 结束Delphi-IDE,
  • 删除*.res和*.dcu文件
    或恢复以前运行的 *.res 文件
  • 启动 Delphi-IDE 并重新编译程序

希望这有帮助,欢迎进一步提示...

Still alive: F2084 Internal Error LA33

probably reason of this error:
using old and new Delphi-IDE to compile sources
(e.g. Delphi-6 and Delphi-Sydney)
may be *.res file is not backward compatible

solution:

  • end Delphi-IDE,
  • delete *.res and *.dcu files
    or restore previously running *.res files
  • start Delphi-IDE and recompile progam

Hope this helps, further hints are welcome...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文