delphi - 模块 'project.exe' 中地址 004EAE10 处的访问冲突写入地址 00000004'

标签 delphi

我的项目遇到问题。当我单击按钮关闭应用程序时,此代码是

procedure Tflogin.btnKeluarClick(Sender: TObject);
begin
  application.Terminate;
end;

将显示meg框错误“模块'project.exe'写入地址00000004中的地址004EAE10处发生访问冲突'”如何修复?

这是我的项目 dpr 中的代码 程序NEW_SPJK;

uses
  Forms,
  Controls,
  login in 'login.pas' {flogin},
  udm in 'header\udm.pas' {dm: TDataModule},
  umenu in 'header\umenu.pas' {fmenu},
  urelasi in 'header\urelasi.pas' {frelasi},
  ubagian in 'header\ubagian.pas' {fbagian},
  umetode in 'header\umetode.pas' {fmetode},
  utambahhasil in 'header\utambahhasil.pas' {ftambahhasil},
  utambahtanya in 'header\utambahtanya.pas' {ftambahtanya},
  udaftar in 'header\udaftar.pas' {fdaftar},
  ubiodata in 'header\ubiodata.pas' {fbiodata},
  ujawab in 'header\ujawab.pas' {Form2},
  uhasil in 'header\uhasil.pas' {fhasil},
  uinformasi in 'header\uinformasi.pas' {fdaftarsiswa},
  uabout in 'header\uabout.pas' {ftentang},
  upilihbagiaan in 'header\upilihbagiaan.pas' {fproses},
  umemo in 'header\umemo.pas' {fmemo};



{$R *.res}
var LoginOK: Boolean;
begin
  Application.Initialize;
  Application.CreateForm(Tdm, dm);
  Application.CreateForm(Tfmenu, fmenu);
  Application.CreateForm(Tflogin, flogin);
  Application.CreateForm(Tfproses, fproses);
  Application.CreateForm(TForm2, Form2);
  Application.CreateForm(Tfhasil, fhasil);
  Application.CreateForm(Tfbiodata, fbiodata);
  with Tflogin.Create(nil) do begin
    LoginOK:=(ShowModal=mrOK);
    Application.CreateForm(Tfmenu, fmenu);
    Free;
  end;
  if not LoginOK then Halt;
  Application.Run;
end.

最佳答案

您所展示的代码中最明显的错误是您执行了两次:

Application.CreateForm(Tfmenu, fmenu);

我相信您只想这样做一次。

作为一般建议,只需调用 Application.CreateForm 一次即可创建主表单。其余时间您可以调用表单的构造函数。我还建议您可能会受益于不使用全局变量和自动创建的表单。更好的做法是在需要时创建表单,并在关闭时销毁它们。

关于delphi - 模块 'project.exe' 中地址 004EAE10 处的访问冲突写入地址 00000004',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22653689/

相关文章:

delphi - 用于Delphi XE2的Windows和Mac XML库

delphi - 通过客户端-服务器断开连接管理 SQLConnection/Datasnap

delphi - 计算邻域距离

delphi - 防止 Delphi 10.2 自动向 TForm 添加属性

Delphi IRC 组件

delphi - 如何从我的 Delphi 服务调用另一个应用程序?

delphi - 为什么从 dll 调用函数并且使用记录时出现访问冲突?

delphi - 在 LoadLibrary 中动态加载 BPL 失败

delphi - 当我在自己的 OnClick 处理程序中销毁按钮时,为什么我的程序会崩溃?

.NET COM 互操作 -> 全局异常处理程序