我要创建一个第2级的应用程序的任务如下:

MSSQL数据库< - >服务器< - >正客户端(n,用于许多)

客户端发送数据到服务器。服务器从数据库中选择的东西,然后将其发送回客户端。目前,我这样做,有记录和SendDataToSocket(网址是下文)。

我要使用TDBGrid中使用通过从服务器套接字接收的数据在客户端上目前,它是这样的:

服务器 DB - > ADOQuery - >的DataSetProvider - >的ClientDataSet - > SaveToStream(MemoryStream的)

<强>客户端: 的ClientDataSet - > LoadFromStream(MemoryStream的) - >数据源 - >的DBGrid

我使用 SendDataToSocket(插口:TCustomWinSocket;数据:指针;数据尺寸:整数;缓冲液:内存流):整数;

所以,我想要做的是发送数据流ClientDataSet的在服务器端创建到谁使用loadfromstream读取流客户端。是SendDataToSocket可行吗?

我希望你明白我的意思。

有帮助吗?

解决方案

是,只要在客户端准备接收数据。这将很好地工作,但是这取决于你可能需要将内存流发送之前压缩的数据的数量和类型。我已经完成在以前的项目类似的做法,但我用突触用于数据传输...但基本概念是相同的。

在zlib的单元(由CodeGear的包含)包含围绕其提供压缩和解压缩流的简单的包装。由于您的控制线两侧,压缩很可能会提高性能通过降低线的时间。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top