delphi 7关闭主窗体出现 access violation at address 00456965问题。
代码如下:procedureTMainForm.FormShow(Sender:TObject);varLogin:TLogin;begintryLogin:=TLogi...
代码如下:
procedure TMainForm.FormShow(Sender: TObject);
var
Login:TLogin;
begin
try
Login:=TLogin.Create(Self);
Login.ShowModal;
if Login.ModalResult = mrCancel then
begin
if assigned(Login) then
freeandnil(Login);
Close;
exit;
end;
except
Login.Free;
end;
end;
如将这段代码取消就不会出现上述问题。 展开
procedure TMainForm.FormShow(Sender: TObject);
var
Login:TLogin;
begin
try
Login:=TLogin.Create(Self);
Login.ShowModal;
if Login.ModalResult = mrCancel then
begin
if assigned(Login) then
freeandnil(Login);
Close;
exit;
end;
except
Login.Free;
end;
end;
如将这段代码取消就不会出现上述问题。 展开
1个回答
展开全部
.硬件原因 在启动或关闭Delphi IDE以及编译一个Delphi工程时容易出现设计期的Access Violation。在你的计算机运行中出现Access Violation信息可能由各种各样的原因引起,包括系统BIOS、操作系统或者是硬件驱动线,有些声卡、显卡、网卡实际上也会导致这种错误。为什么这么说?计算机里的每一块卡都有它的设备驱动程序。对于不同的制造商、不同版本的Windows或者不同版本的Delphi都可能会遇到不同的问题。如下的几个步骤可能有助于你解决遇到的这些问题: 1. 按照必要的步骤来证实你安装的驱动程序之间没有冲突。 2. 有时降低显示分辨率可能会使某些古怪的显卡驱动程序稳定一些。 3. 如果使用双处理器的主板,则保证对每个处理器的修改步骤一样。 4. 对于计算机上的所有硬件注意使用最新的驱动程序。 2.软件原因 尽管Intel的计算机中Windows是最流行的操作系统,由于Windows系统天生的脆弱性和BUG,应用程序的误操作可能导致操作系统的迅速瘫痪(有时操作系统本身也会莫名其妙的瘫痪)。选择一个更稳定的程序开发环境是解决之道,如下几个步骤可以帮助你防止某些Access Violation的发生: (1)尽管Windows 9X相当流行,Windows NT/2000还是从多方面被证实是一个稳定得多的环境,几乎对于所有的Windows代码平台而言都是这样。 (2) 确保对于Windows NT/2000已经安装了最新的service pack。每次安装完新版的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询