【问题标题】:Sending Records Using INDY使用 INDY 发送记录
【发布时间】:2011-11-29 23:00:09
【问题描述】:

如何在 Indy TIDTCPServer(版本 10.5.8)中发送记录

以前版本的许多示例向我们展示了

AThread.connection.WriteBuffer(MyRec,SizeOf(MyRec),true); // myrec is a record

但是 indy 10.5.8 中的 equal 命令是什么

IdContext.Connection.IOHandler.?????

【问题讨论】:

    标签: delphi


    【解决方案1】:

    使用RawToBytes 函数将缓冲区转换为TIdBytes(这是接受Write 方法的类型)

    检查此示例。

    uses
      IdGlobal;
    
    var
     Buffer : TIdBytes;
     Myrec  : TMyrec;
    begin
      Buffer := RawToBytes(Myrec, SizeOf(TMyrec));
      AContext.Connection.IOHandler.Write(Buffer);
    end;
    

    【讨论】:

    • 另一种选择是将记录写入TMemoryStream,或者使用Indy的TIdMemBufferStream,然后将其传递给TIdIOHandler.Write(TStream)方法。
    • 我的意思是TIdMemoryBufferStream
    猜你喜欢
    • 1970-01-01
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 2015-10-24
    相关资源
    最近更新 更多