【发布时间】:2020-06-01 11:28:50
【问题描述】:
最近我从 Delphi 2007 升级到 10.3.3 。使用 10.3.3 编译的同一个应用程序会在启动时崩溃,但仅在某些机器上;在我的环境中,我无法模拟这个问题,但我的一些客户遇到了这个问题。如果我在 D2007 中编译相同的应用程序,则不会发生错误,因此我认为与新的 Delphi 版本有关。
错误消息如下所示,之后,应用程序将关闭。该消息过于笼统,我该怎么做才能至少尝试确定导致崩溃的原因?
这是我尝试过的:在我的应用程序的主窗体中,我进入了 FormCreate 事件并在第一行放置了 showmessage('stop');,但之前发生了崩溃这个。
我知道这是一个很难回答的问题,但我正在寻求建议以至少朝某个方向看,所以请帮忙!
提前致谢。
更新:这是 Eureka 日志跟踪:
【问题讨论】:
-
嗯,读取地址 00000000 意味着它正在尝试从零指针读取。
-
如果崩溃发生在你的主窗体创建之前,那么它很可能发生在某个单元的
initialization部分,这是@$$ 跟踪和调试的痛苦。 -
我会选择 madExcept。它将帮助您确定异常的确切位置。
-
您需要一个堆栈跟踪,MadExcept 或 Eurekalog 应该对您的情况有所帮助
-
@delphirules:如果您无法在系统上重现它;总有可能做remote debugging