我已经构建了一个简单的datasnap服务器和一个简单的datasnap客户端。 我已经用教程完成了它。 本教程展示了如何导出DataProviders,在TDSServerModule上设计TSQLConnection,TSQLDataSet和TDataSetProvider。 这样一切都运作良好。
在设计时放置TSQLConnection并在运行时创建TSQLDataSet和TDataSetProvider(在DSServerModuleCreate方法中)当我尝试从客户端连接时,没有任何作用:我总是有一个"远程错误:提供程序未导出"。 这是代码:
procedure TDSServerModuleAll.DSServerModuleCreate(Sender: TObject);
var
aDS : TSQLDataSet;
aDSP : TDataSetProvider;
begin
aDS := TSQLDataSet.Create(Self);
ADS.Name := 'ClientiTable';
aDS.CommandType := ctTable;
ADS.CommandText := 'Clienti';
aDS.DbxCommandType := 'Dbx.Table';
aDS.SQLConnection := TestConnection;
aDSP := TDataSetProvider.Create(Self);
ADS.Name := 'ClientiProvider';
aDSP.DataSet := aDS;
aDSP.Exported := True;
end;
我不明白为什么在运行时创建的TDataSetProvider未正确导出。