How to avoid AV error when developing Delphi database Application

王朝delphi·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

How to avoid AV error when developing database Application

--Bear

When developing delphi database application, sometimes you will meet AV error, for example:

1. Access Violation at address XXXXX in module *.exe, read of address XXXXX etc

2. Access violation at address XXXXX in Ole32.dll

3. Runtime error 216

And you are sure this AV error is not caused by your own code because there is no debug breakpoint.

OK, you can do as follows to avod the AV error,

1. Open the project source code : YourProject.dpr

2. Find the problem data module by comment. The problom datamodule is that data module when you comment it there will be no AV error

3. Check the datasets on the data module, do you change the database field define after you create the datamodule? For example, in the data module , there is a field : StudentCode:TStringField, but in your database, you change it as Integer, or changed its name.

Make sure all of the database can be set as Active at design time. Sometimes you need recreate the dataset on the client side and server side at the same time.

4. If you are sure there is no problem with the datasets, please change the position of the problem data module, for example change

Application.CreateForm(TSys_DM, Sys_DM);

Application.CreateForm(TCodeTable_DM, CodeTable_DM);

Application.CreateForm(TMain_Frm, Main_Frm);

to

Application.CreateForm(TMain_Frm, Main_Frm);

Application.CreateForm(TSys_DM, Sys_DM);

Application.CreateForm(TCodeTable_DM, CodeTable_DM);

or only create datamodule at runtime and free it manually.

5. You can change the data module create style as follows :

Main_DM := TMain_DM.Create(Main_Frm); // to avoid AV error

6. Make sure you have disconnected all of the ConnectionBocker, DCOMConnection,SocketConnection,WebConnection,SoapConnection at design time!

Nomally you will avoid the AV error by above steps.

You can also find code line by the address of the AV by enabling the debug DCU.

Good Luck !

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航