TClientDataSet因消息而出现故障

时间:2011-01-21 22:45:53

标签: delphi tclientdataset

这里遇到了一个小情况,我直到最近才使用TClientDataSet(它需要midas.dll)所以现在我面临一个非常尴尬的错误,不是很具描述性:

调试器故障通知

项目E:\ Work \ XXX \ binary \ XXX.exe出现错误消息:'访问冲突位于0x00678827:写入地址0x00030a38'。流程已停止。使用步骤或运行继续。

只要我尝试在clientdataset中设置字段的值(我将其用作内存数据集),就会发生这种情况:

with ADataModule do begin
  cdsTest.Append;
  cdsTestAField.AsString := ATableField.AsString;
  // ...
end;

两个字段都是TStringField,cdsTestAField的大小为64,ATableField的大小为32

注意:我之前正在调用CreateDataSet方法,这只发生在字符串字段中,任何帮助都会受到高度赞赏。

感谢您的时间。

1 个答案:

答案 0 :(得分:3)

ATableField来自哪里?难道它是对已经释放的对象的无效引用吗?

此外,您可以在项目中包含midaslib.pas以消除使用外部midaslib.dll。但是,它会使你的项目稍微大一点,因为你基本上是在你的exe文件中编译dll。