使用dcom连接时,使用ado.Recordset:=IUnknown(ole) as _Recordset可以,而使用socket连接却出错?(50分)

  • 主题发起人 主题发起人 lbd88488848
  • 开始时间 开始时间
L

lbd88488848

Unregistered / Unconfirmed
GUEST, unregistred user!
在使用socket连接时,系统提示:interface not support??
请高手帮忙!!!
 
可能是socket不支持静态绑定
 
那我该如何对从中间层传过来的olevariant对象(实际值为_recordset)进行处理呢?
 
改用clientdataset得到数据集,即clientdataset1.data=ole,现在又出新问题了
提示:invalid data packet
:ole类型为中间层函数传过来的数据集,类型为olevariant
 
你的ole是ADO的数据类型与cds不相容,
要传CDS的话用DatasetProvider.Data,
还有如果你想用_Recordset,就直接在中间层向客户端传_Recordset,不必用OleVariant
当然客户端必须有ADO驱动
 
我在中间层中使用的是adoquery,但在中间层回传数据类型中,好像没有_recordset或其相类似的类型
我使用DataSetProvider1.Data也出现相同的错误
function TmyRDM.getToday:OleVariant;
var d1:string;
begin
datetimetostring(d1,'yyyy-mm-dd',now);
with ADOQuery1do
begin
Close;
sql.Clear;
sql.Add('select * from table where ddate='''+d1+''' order by id desc');
open;
end;
result:=DataSetProvider1.Data;//原先的为adoquery1.recordset,使用这个在dcom中可以
end;
 
我也是,我只能用DCOM了
 
但DCOM在internet上不好使用呀,期待"亿万富翁"帮忙!!
 
如果用Midas就好办了
clientdataset.Data:=
socketConnecion.Appserver.getToday;
 
我这样试过了,不行?
 
再UP一下,好久前的贴子啦
 
来自:天空还下着沙, 时间:2003-10-16 17:27:00, ID:2234829 | 编辑
再UP一下,好久前的贴子啦
 
后退
顶部