IndyTcpServer使用详解

embedded/2024/9/24 10:22:23/

1、IndyTCPserver的创建

IdTCPServer1.DefaultPort:= 8000;
IdTCPServer1.ListenQueue:= 1024; //同时处理请求队列数限制
IdTCPServer1.MaxConnections:= 1024;  //同时连接数量限制,为0不限制连接数
IdTCPServer1.ContextClass:= TNewIdServerContext; //设置为自定义TIdServerContext类,作用稍后说明
TIdServerContext.Active:= True;	//启动监听

2、Onconnect事件处理

procedure TMainForm.IdTCPServer1Connect(AContext: TIdContext);
beginvar Context:TNewIdServerContext; //Delphi 10.4.2 支持代码块定义变量Context:= TNewIdServerContext(AContext);if IdTCPServer1.Contexts.Count >= IdTCPServer1.ListenQueue thenbeginContext.Connection.Disconnect;Memo1.Lines.Add(Format('Socket连接已达到%d上限,%s:%d尝试连接被强制断开!', [IdTCPServer1.ListenQueue, Context.Binding.PeerIP, Context.Binding.PeerPort]));end;Context.mUserID:= 123456;  //演示访问用户ID
end;

3、OnExecute事件


http://www.ppmy.cn/embedded/37018.html

相关文章

Cargo - 构建 rust项目、管理依赖包

文章目录 关于 Cargo构建项目创建工程编译运行buildclean 管理依赖添加依赖updatecheck计时 manual rust 安装可参考:https://blog.csdn.net/lovechris00/article/details/124808034 关于 Cargo Cargo 官方文档 : https://doc.rust-lang.org/cargo/crat…

Docker 容器日志占用空间过大解决办法

1、vi /etc/docker/daemon.json {"log-driver":"json-file","log-opts": {"max-size":"200m", "max-file":"1"} } 2、重新加载守护进程配置文件 systemctl daemon-reload 3、重启docker systemctl…

Qt作业2

1、思维导图 2、练习:优化登录框,输入完用户名和密码后,点击登录,判断账户是否为 Admin 密码 为123456,如果判断成功,则输出登录成功,并关闭整个登录界面,如果登录失败,则…

Java面试题:解释volatile关键字的作用,以及它如何保证内存的可见性

在编程中,特别是在并发编程和多线程环境中,volatile 关键字是一个用于声明变量的特殊关键字,它主要有以下几个作用: 可见性:volatile 保证了在一个线程中对一个变量的修改对于其他线程是可见的。也就是说,当…

【数学】矩阵与矩阵乘法

矩阵 定义一个 n m n\times m nm 的矩阵如下: [ a 1 , 1 ⋯ a 1 , m ⋮ ⋱ ⋮ a n , 1 ⋯ a n , m ] \begin{bmatrix}a_{1,1}&\cdots&a_{1,m}\\\vdots&\ddots&\vdots\\a_{n,1}&\cdots&a_{n,m}\end{bmatrix} ​a1,1​⋮an,1​​⋯⋱⋯​…

Unity射击游戏开发教程:(10)创建主界面

主界面开发 玩游戏时,主菜单是事后才想到要做的。实际上几乎每个游戏都有一个主界面。如果你点击打开游戏并立即开始游戏,你会感到非常惊讶。本文将讨论如何创建带有启动新游戏的交互式按钮的主界面/主菜单。 主菜单将是一个全新的场景。我们将添加一个 UI 图像元素,并在图像…

Spring Task 定时任务没有定时执行是为什么?

目录 SpringBoot 定时任务的原理任务一直阻塞会怎么样?多个定时任务的执行具有相同表达式的定时任务,它们的执行顺序如何?Spring Task 和 Linux crontab 的 cron 语法区别?在 cron 语法中容易犯的错误Async 异步注解原理及作用并发…

JavaScript异步编程——03-Ajax传输json和XML

Ajax 传输 JSON JSON 的语法 JSON(JavaScript Object Notation):是 ECMAScript 的子集。作用是进行数据的交换。语法更为简洁,网络传输、机器解析都更为迅速。 语法规则: 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组…