我在DataModule窗体中定义了一个TADOQuery,一个TADOConnection,两个中间的Connection和ConnectionString都设置好了,在另一个继发承窗体中有一个TDataSource,将TDataSource的DataSet设置到ADOQuery,当编译时提示为:
Project Furnishings.exe raised exception class EAccessViolation with message Access Violation at address 004CBFD in module 'Furnishings.exe' Read of address 00000060, process stopped,use step or Run to continue.这样的提示是怎么回事,数据库的连接都没有错,为何编译时就出现这样的问题?如果将TADOQuery与DataSource放到同一窗体,并将TADOQuery的Connectionsting重新设置,编译又正常通过。就是不能设置到DataModule窗体中的TADOConnection,这是为什么?请指点!
Project Furnishings.exe raised exception class EAccessViolation with message Access Violation at address 004CBFD in module 'Furnishings.exe' Read of address 00000060, process stopped,use step or Run to continue.这样的提示是怎么回事,数据库的连接都没有错,为何编译时就出现这样的问题?如果将TADOQuery与DataSource放到同一窗体,并将TADOQuery的Connectionsting重新设置,编译又正常通过。就是不能设置到DataModule窗体中的TADOConnection,这是为什么?请指点!
解决方案 »
- 请问有没有可以设置不同的行以不同颜色显示的组件
- stringgrid问题
- BCB的工程中的form如何在 delphi 中使用?
- 有用smspdu.dll做短信开发的么?进来交流一下,高分相赠!!!
- 怎么才能对服务器的数据库文件打包?(如果不小心删除了数据库文件,可以通过打包文件恢复的) 我的意思不是做备份.
- 将一个表中的值,写回另一个表时,出现的错误信息
- 求简单SELECT 语句
- 怎样让ADOQuery发生posterror时,不跳出出错提示?
- 关于Edit控件输入的问题
- 我的程序大概框架是这样的 :在创建主窗口时,创建登录窗口,登录只是关闭登录窗口,接着往下运行
- RadioGroup组件控制部分选项的问题
- 请指教:ADOConnection如何使用?
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule1, DataModule1);
改为
Application.CreateForm(TDataModule2, DataModule2);
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule1, DataModule1);
改为
Application.CreateForm(TDataModule1, DataModule1);
Application.CreateForm(TForm1, Form1);
procedure TfrmBaseInfo.FormCreate(Sender: TObject);
begin
inherited;
if not dmClient.ADOFushing.Active then dmClient.ADOFushing.Open ;
end;
Application.CreateForm(TdmClient, dmClient);
if not dmClient.ADOFushing.Active then dmClient.ADOFushing.Open ;
错误提示为:Project Furnishings.exe raised exception class EAccessViolation with message ‘ADOFushing:Missing SQL property'.process stopped,use step or Run to continue.这是为什么?那里没写好.
dmClient.QCompanyInfo.Edit ;它就死机,画面不动,点退出都没反应,只能按ctrl+alt+del键,结束任务才能关闭,真麻烦,还得请高手把把脉
begin
inherited;
dmClient.ADOFushing.Edit;
end;
//我来给你写
//1构造器
constructor TfrmBaseInfo.create();
begin
inherited;
end;procedure TfrmBaseInfo.FormCreate(Sender: TObject);
begin
ADOFushing.open;
end;//模块放在窗体里?谁教你的。
begin
inherited;
end;根本就无法通过。我不明白,为何要一个构造器,是构造一个什么,就一句inherited;不明白,也试过,编译没通过,提示为Incompatible types,你所说的模块放在窗体里,我窗体里没有放模块,要放也是新建一个单元文件,然后放在单元文件中,
wizardqi(男巫) 说我继承自一个DataModule,DataModule来存放数据连接的窗体,我只能引用它里面控件,更本就没有继承,也许是我上面没说清,也许是你所说“不知是小弟的功底不够还是怎么地?”,不过还是很感谢两位给我的帮助和忠告。
procedure TDataModule1.DataModuleCreate(Sender: TObject);
begin
ADOConnection1.Connected := true;
end;procedure TDataModule1.DataModuleDestroy(Sender: TObject);
begin
ADOConnection1.Connected := false;
end;