做个TClientDataSet调查!希望大家参与。该怎么解决

做个TClientDataSet调查!希望大家参与。
做调查原因: 近来写服务的时候使用到TClientDataSet 查询数据库,然后使用他的XMLData生成XML字符串,

这样一来就很方便传输到客户端。客户端的TClientDataSet也使用XMlData赋值就可以了。其实我就是使用TClientDataSet

的一个方法和一个属性,方法是:open来查询数据库的数据;属性是:XMLdata是用来生成XML字符串 ;可是在使用过程中

偶尔出现访问内存地址访出错的提示,错误提示来源就是Midas.dll。有时也出现什么灾难性故障。首先声明我把

TClientDataSet换为TAdoQuery后一切正常,就是写多一些代码,还有TAdoQuery生成的XML也比TClientDataSet大

了好多。我真的怀疑TClientDataSet存在以下的问题,最好是不间断的运行TClientDataSet进行查询数据库和使用

XMLdata取出数据来观察他。

调查现象如下:

1.偶尔出现灾难性故障;

2.使用XMLData的时候出现内存访问违规错误,提示来源Midas.dll

3.使用TClientDataSet存在内存泄露


希望大家积极参与对大家以后是否使用这个控件心里有个底!别走那么多弯路。

由于本人水平有限,上面几个问题是我在反复使用过程中遇到的问题。希望有高人

来点评指正。谢谢。






------解决方案--------------------
tclientdata被人诟病好久了
这里就有个帖子
http://hi.baidu.com/tinajames/blog/item/2dea0e0c6cef7c980b7b8282.html

------解决方案--------------------
ClientDataSet 我用过和 SocketConnection1控件链接数据库查询显示数据情况和数量
------解决方案--------------------
有没有可能是因为你在客户端与服务端没有注册Midas.dll这个dll文件造成的呢?
试下把Midas.dll这个文件复制到客户端和服务器端的C:\WINDOWS\system32下面,然后写个注册的bat文件,或者在开始-->运行里面输入以下两行命令:
c:\windows\system32\regsvr32 midas.dll
c:\windows\system32\regsvr32 midas.dll /u
------解决方案--------------------
我以前也跟楼主一样使用,也偶尔有类似问题,但是我脱离掉 midas.dll 后,就再也没有出现过了。

------解决方案--------------------
弃用 midas.dll 现在很流行DataSnap可尝试一下
------解决方案--------------------
注意你传输的XML是不是不完整,我用cdsN年了,没发现你说的问题