DELPHI +SQL SERVER2000编写一小软件,程序在关闭时出现如所示错误提示,
Debugger Exception Notification(注:标题)
Project mp.exe raised exception class EAccessViolation with message 'Access violation at address 0040489c in module 'mp.exe'.Read of address 00000018'.Process stopped .Use Step or Run to continue.点击确定后出下如下所示提示,
Error(注:标题)
Runtime error 216 at 004039C6.我怀疑是数据库有问题,因为如果我换上以前的数据库不会出现这种情况,昨天我导了一些数据进去就出现种错误提示,数据库连接我采用的是动态数据库连接,这应该不是情况所在,因为如我之前所述,程序没办,只是在导入一些数据进去就出现这种问题,请问怎么解决?
Debugger Exception Notification(注:标题)
Project mp.exe raised exception class EAccessViolation with message 'Access violation at address 0040489c in module 'mp.exe'.Read of address 00000018'.Process stopped .Use Step or Run to continue.点击确定后出下如下所示提示,
Error(注:标题)
Runtime error 216 at 004039C6.我怀疑是数据库有问题,因为如果我换上以前的数据库不会出现这种情况,昨天我导了一些数据进去就出现种错误提示,数据库连接我采用的是动态数据库连接,这应该不是情况所在,因为如我之前所述,程序没办,只是在导入一些数据进去就出现这种问题,请问怎么解决?
1: application.Terminate;
2: Action:=caNone;
end;你把退出的代码换成这样试一下。。
//---估计是你在DLL中退出释放内存地址出错或是在DLL中释放内存后,主程序再次操作不存在的资源造成的内存地址访问错.
你好好查查是不是DLL的APPLICATION与主程序中APPLICATION的控制句柄的转让的问题.
action := cafree;
main := nil;
procedure TMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action := cafree;
main := nil;
end;procedure TMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if main.Visible = false then
exit; if application.MessageBox('你确定要退出系统吗?','系统提示',MB_ICONQUESTION + MB_YESNO) = ID_NO then
CanClose := false
else
CanClose := true;
end;
begin
action := cafree;
end;
procedure TMain.Destory(Sender: TObject);
begin
main := nil;
end;
WParam, LParam)有异常请问是什么意思?