假如建立了data module窗体,名为DM,加入了数据访问组件。
然后我在其它窗体中作调用:
如: DM.Query1.close;
等,系统就报错,为何?
报错内容:
‘access violation at adress 004a2803 in modules 'datamodule.exe'peocess stoped’
然后我在其它窗体中作调用:
如: DM.Query1.close;
等,系统就报错,为何?
报错内容:
‘access violation at adress 004a2803 in modules 'datamodule.exe'peocess stoped’
解决方案 »
- 小女子求助~求高手教delphi编一个小程序~~
- 如何定义公共的AccessConnectionString连接串?
- 关于cxLookupComboBox的一个很奇怪的问题。。。。
- 怎么给ISO镜像文件加一个密码(不刻成光盘,就在硬盘上用)?
- 动态配置ODBC的问题
- 一个菜鸟问的问题
- 怎么做类似outlook的面板(在左侧,象导航栏,在上面新建快捷方式)!!!!!
- ER/Studio是什么东西,谁用过?????????????
- 在delphi中如何调用别人的运用程序,及调用cmd命令!
- 誰有 1stclass3000 for delphi6 的注冊碼,小弟先謝了!!
- ASP+远程数据模块(RemoteDataModule)+SQL数据库为何浏览器长时间不响应?
- 两个不难的问题(急~~~~~~)
以下是完整的报错内容---------------------------
Project datamodules.exe raised exception class EAccessViolation with message 'Access violation at address 004A2803 in module 'datamodules.exe'. Read of address 0000005C'. Process stopped. Use Step or Run to continue.
---------------------------
另外,怎样检查是否create?谢谢!!
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule2, DataModule2);
Application.Run;
end.改成:
begin
Application.Initialize;
Application.CreateForm(TDataModule2, DataModule2);
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
注:也就是说,在一个工程中,尽量把datamodule的create放到第一个位置,因为只有这样,才会使写在如form1的create事件的DM.Query1.close;语句不会出错,否则的话,对象还没有创建,就去调用它,能不出错吗?