前段时间在做一个项目时使用了COM+,即COM+在一个专用的服务器上,客户端通过DCOM连接到COM+,然后通过COM+操作数据库并返回数据。在读取数据时,原来是通过TADOCommand将数据读取到TADODataSet后再通过TClientDataSet返回数据,但在系统运行时在访问量比较大的时候会发生"Access volidate address in module "midas.dll"的错误。经过检查调试后,发现是因为在多用户读取数据时会将数据写入到TADODataSet时,该控件不是线程安全的,数据访问量较大时容易发生错误,所以将读取数据写入到TDataSetProvider中,会解决此问题。经测试此种方式确实可行。
解决"Access volidate address in module "midas.dll"
最新推荐文章于 2022-04-28 18:07:14 发布