`
cloud21
  • 浏览: 397526 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Indy10记录及其他类型的传送

阅读更多
idTcpClient及IdTcpServer传送记录时的方法:

先将记录转换成TBytes,

使用RawToBytes及BytesToRaw函数。这两个函数包含在IdGlobal单元中。
另外,在接收或发送的时候用到TIdContext类,这个类包含在IdConText单元中。
举例(TcpClient及TcpServer):

记录:
Type
    TMyData=record
      id:Integer;
      Name:Array[0..20] of Char;
      Sex:Array[0..10] of Char;
      Age:Byte;
      Address:Array[0..256] of Char;
      UpdateTime:double;
   end;
  客户端: 
procedure SendMsg;
var
SendData:TMyData;
begin


SendData.ID:=10;
StrPCopy(SendData.Name,'Wyatt');
StrPCopy(SendData.Sex,'男');

SendData.age:=25;
StrPCopy(SendData.Address,'江苏省');

SendData.InCom:=S.InSpeed;
SendData.UpdateTime:=Now;
   MClient.IOHandler.Write(RawToBytes(SendData,SizeOf(SendData)););
end;
服务端:
procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);;
var
ReadData:TMyData;

buf:TBytes;
begin

SetLength(buf, 0);
AContext.Connection.IOHandler.ReadBytes(buf, SizeOf(ReadData));
BytesToRaw(buf, ReadData, SizeOf(ReadData));
   with Memo1.line do

   begin

     Add('ID:'+Inttostr(ReadData.Id));

     Add(Name:'+StrPas(ReadData.Name));

     Add('Sex:'+Inttostr(ReadData.sex));

     Add('Age:'+Inttostr(ReadData.age));

     Add('UpdateTime:'+DateTimeToStr(ReadData.UpdateTime));

   end; 

end;
//以上在Uses中要增加以下两个单元
uses    IdContext,IdGlobal
分享到:
评论

相关推荐

    D7下删除indy9安装indy10的方法说明付indy10.rar

    在Delphi 7开发环境中,有时开发者需要更新或替换现有的网络通信组件,比如从Indy 9升级到Indy 10。Indy(Internet Direct)是一个强大的、开源的网络组件套件,提供了多种网络协议的支持,如TCP/IP、HTTP、FTP等。...

    Indy10帮助文档

    Indy10是一款广泛使用的网络通信库,尤其在Delphi编程环境中非常流行。它提供了丰富的组件和函数,用于实现各种网络协议,如TCP/IP、UDP、HTTP、SMTP、IMAP等。Indy10帮助文档是开发者在使用该库时的重要参考资料,...

    indy10 for delphi7

    Indy 10 是一个广泛使用的网络组件套件,尤其在Delphi开发环境中,它为开发者提供了构建网络应用的强大工具。对于Delphi 7这样的较旧版本,Indy 10 提供了更新的网络协议支持,如HTTP、FTP、SMTP、IMAP等,以及SSL/...

    Indy10 Delphi6

    3. **易用性**:Indy10的组件化设计使得它们易于集成到Delphi的VCL(Visual Component Library)中,可以像拖放其他控件一样,将网络组件拖放到表单上。 4. **性能优化**:Indy10经过长期的优化和测试,具有较高的...

    delphi indy 10 官方demo

    8. **错误处理和日志记录**:Indy提供了丰富的错误处理机制,同时通过TIdLog组件可以方便地记录网络活动,这对于调试和优化网络代码非常有帮助。 每个示例通常包括源代码、执行步骤和预期结果的描述,这使得开发者...

    indy10及SSL的两个DLL

    Indy10是一个流行的开源网络通信库,主要用于在Delphi和C++Builder等RAD Studio环境中开发TCP/IP应用程序。它提供了一套全面的组件,用于实现包括HTTP、FTP、SMTP、NNTP等多种网络协议。在涉及SSL(Secure Sockets ...

    indy10安装包.rar

    前段时间公司Delphi项目要调用Https接口,发现在Indy9下会有问题,需求网络上的方法都不行。 所以升级了Indy版本从9到...Delphi7下安装Indy10_6_2_5518,内含具体的安装方法,及其Indy10_6_2_5518配套的OpenSSL动态库。

    indy10 demo

    3. **异步编程**:Indy10组件通常支持异步操作,允许程序在等待网络响应的同时执行其他任务。这在编写高效、响应快的应用程序时非常关键。 4. **数据编码与解码**:网络通信中,数据通常需要进行编码和解码,如JSON...

    indy 10 for d7

    indy10 for delphi7,indy10 for delphi7

    indy10_demosindy10_demos

    它可能是一个临时文件、日志文件或者是与Indy 10 示例相关的其他资源。 总的来说,这个压缩包对于学习和理解Indy 10 库在网络编程中的应用是非常有价值的。通过分析和运行这些示例,开发者可以熟悉Indy组件的工作...

    indy10 ssl 发送邮件 dll

    用Indy10中的TIdSMTP发送邮件,按以下方法可以实现SSL安全连接: 1 把附件文件解压缩后的两个dll放到程序文件夹下 2 增加一个TIdSSLIOHandlerSocketOpenSSL控件 3 两个控件的关键属性设置如下: object IdSMTP1: ...

    Indy10 最新DEMO

    Indy10是一款广泛使用的网络通信库,尤其在Delphi和C++Builder开发环境中非常流行。这个"Indy10 最新DEMO"提供了一个示例程序,由外籍开发者编写,目的是为了展示如何利用Indy10库进行网络编程。在深入探讨这个DEMO...

    indy10 最新官方例子

    6. `Other`:这个目录可能包含了与Indy10相关的其他辅助工具、配置文件或者不归属于上述类别的文件。 7. `Lib`:这个目录很可能存放着Indy10的库文件,如编译好的动态链接库(DLLs)或静态库(LIBs),这些是Indy10...

    Delphi indy10说明帮助文档(pdf格式)

    本帮助文档详细介绍了如何在Delphi项目中使用Indy10组件,以实现高效、可靠的网络功能。 首先,文档会从基础开始,解释Indy10的基本概念和架构,包括组件的组织方式、核心组件和辅助组件的区别,以及它们在Delphi ...

    Indy9 Demo 改为Indy10

    在本示例中,我们将讨论如何将基于Indy9的Demo项目升级到Indy10版本。 在“Indy9 Demo”中,BasicClientServer可能是一个包含了客户端和服务器端功能的示例程序,用于演示如何使用Indy9进行TCP通信。这个Demo可能...

    Indy10 New Demo

    Indy10是一个著名的网络通信库,用于在Delphi和C++Builder开发环境中构建网络应用程序。这个"Indy10 New Demo"似乎是一系列由不同开发者编写的独立DEMO,它们展示了Indy10库的各种功能,但并非由Indy官方出品。尽管...

    Indy10的文件传输

    Indy10,全称Internet Direct,是Delphi和C++Builder编程环境中广泛使用的网络通信组件库。这个组件集提供了一系列强大的工具,用于实现各种网络协议,如TCP/IP、UDP、HTTP、FTP、SMTP、POP3等,使得开发者能够轻松...

    indy10文档资料详解

    Indy10是Internet Direct的简称,它是一个开源的组件套件,专为开发者提供了一系列用于构建网络应用程序的工具。这个组件库广泛应用于Delphi和C++Builder等RAD(快速应用开发)环境中,使得开发者能够轻松地实现各种...

    indy10 安装方法

    在软件开发领域,尤其是网络编程与通信协议处理方面,Indy(Internet Direct)库以其丰富的功能、稳定的表现及广泛的兼容性,成为了许多开发者的选择。本文将详细介绍如何在C++Builder环境中正确安装与配置Indy10,...

    indy10 完全安装版 附带详细教程 D7~2010

    添加indy10\LIB路径下的System、Core、Protocols下的三个目录 添加indey10\D7 因为这个目录下有bpl和dcu文件 3.删除delphi7目录Bin下的indy*.BPL文件,这是官方旧版本的文件,放心删除。 4.删除delphi7目录下的 ...

Global site tag (gtag.js) - Google Analytics