1

我在 Delphi 7 上创建了一个应用程序。我的应用程序从昨天开始运行良好。我不知道昨天发生了什么导致我的应用程序在源代码中的 Application.Initialize 行停止,并且在我跟踪程序时不返回到下一行。当生成的文件确实在另一台机器上正确运行时,我无法从寡妇那里运行创建的可执行文件。这是编译器停止的代码:

程序 Info_Kiosk;

使用 SysUtils、Forms、...(其他一些单位);

{$R *.res}

开始
应用程序。初始化;

Application.CreateForm(Tfrm_Main, frm_Main);

任何帮助,将不胜感激

4

1 回答 1

6

的实现TApplication.Initialize看起来像这样:

procedure TApplication.Initialize;
begin
  if InitProc <> nil then TProcedure(InitProc);
end;

因此,请查看您的代码以查找任何分配给InitProc.

另一种方法是使用您的调试器来帮助您。启用调试 DCU。Application.Initialize然后在 .dpr 文件中的调用上设置一个断点。然后使用 进入该过程F7。然后进入调用InitProc并遵循它,直到你到达阻塞的代码。

如果您使用的是修订控制系统,您可以简单地检查项目的旧版本并使用二进制搜索来查找引入该行为的提交。如果您不使用修订控制,请立即开始使用。

于 2012-10-30T11:40:18.870 回答