可否给一个具体的例子?
AppServer端var
  ADOQuery1: TADOQuery;
  dspBookType: TDataSetProvider;
  mStr: string;
begin
  try
    ADOQuery1:= TADOQuery.Create(self);
    dspBookType:= TDataSetProvider.Create(self);
    dspBookType.DataSet:= ADOQuery1;
    ADOQuery1.ConnectionString:= GetConStr;
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    mStr:= 'select * from usertype';
    ADOQuery1.SQL.Add(mStr);
    ADOQuery1.Open;
    if not ADOQuery1.Eof then
      vResult:= dspBookType.Data;(返回给client端的clientDataSet)
  except
    ADOQuery1.Close;
  end;
Client端:var
  vResult: OleVariant;
  cdsUserQuery: TClientDataSet;
begin
  Book.userQuery(vResult);  (调用服务端,返回一个variant*)
  cdsUserQuery:= TClientDataSet.Create(self);
  cdsUserQuery.Data:= vResult(服务端的DataSetProvider的记录集);
end;