在Delphi中如何维护COM+的状态信息[4]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 cipherliu 的 blog

时,确实已经把dbname的值设为”db2”了,但是在执行

adoc.connectionstring:=connectstringa+'initial catalog='+dbname+';'+connectstringc;

时,dbname又成了空字符串,所以出错了。

为什么dbname的值会丢掉呢?原来在是因为在connectto中,调用了setcomplete方法,setcomplete方法认为这个com+已经完成了任务,会释放这个com+对象,所以连接数据库时,又创建了一个新的com+,它的dbname当然是空值了。

找到了原因,把setcomplete改成enablecommit; 编译,再运行客户端,终于运行成功,取回了db2数据库中的数据。

可是在客户端程序中,放入另一个clientdataset,在打开clientdataset1之后,打开clientdataset2,想继续访问db2中的数据,又报错了。把程序改成

 

dcomconnection1.appserver.connect('db2');

本文关键:COM+ 状态信息
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top