有没有办法断开活动连接?我知道用OnConnect你可以拒绝连接...但那只是当连接德尔福IdMappedPortTCP问题
2
A
回答
2
是的,TidMappedPortTCP是一个TidTCPServer后裔,所以你基本上可以使用几种不同的方法来断开活动客户端。例如,如果你想断开OnExecute事件(基于一些武断的标准)内活动的客户端,你可以简单地做了事件处理中这个地方:
AContext.Connection.Disconnect;
如果您需要到别的地方断开活动连接在您的代码中(例如不在OnExecute事件处理程序中),方法将如下所示:
- 创建一个列表(TList或某个集合类),它将保存您的活动连接;
- 在OnConnect事件处理程序中,将任何新的客户端添加到此列表中;
- 在OnDisconnect事件处理程序中,从此列表中删除断开连接的客户端;
这样,您将始终拥有活动客户端的集合,这将使您能够找到特定的客户端,访问它的连接对象并在需要时调用Disconnect方法。
让我知道你是否需要更详细的代码示例。
+0
你不需要维护你自己的'TList'连接。 'TIdTCPerver'已经提供了它自己的一个 - Threads属性(Indy 9和更早)或者'Contexts'属性(Indy 10)。 – 2011-03-17 20:48:30
相关问题
- 1. 问题与德尔福XE
- 2. 问题与TdxComponentPrinter(德尔福)
- 3. 德尔福SEARCHTEXT问题
- 4. 德尔福到C#问题
- 5. 德尔福BDE问题$ 2501
- 6. 德尔福mswinsck.ocx问题
- 7. 德尔福7德尔福XE2 res文件问题
- 8. 访问德尔福
- 9. 德尔福v.Word - 如何从德尔福
- 10. 德尔福HID Delphi7和德尔福XE2
- 11. 德尔福TSplitter闪烁问题
- 12. 德尔福idhttp后相关的问题
- 13. 德尔福:框架的TList的问题
- 14. 德尔福:的OnClick断点问题
- 15. 德尔福计时器问题
- 16. 德尔福datasnap回调 - 广播问题
- 17. 德尔福2009年升级问题
- 18. 德尔福内存问题(FastMM4)
- 19. 德尔福2006 TClientDataSet索引问题
- 20. 德尔福3内存分配问题
- 21. 德尔福DFM继承的问题
- 22. 德尔福字符串共享问题
- 23. 德尔福XE和zlib的问题(II)
- 24. 问题与德尔福WSDL导入器
- 25. 德尔福快速报告COUNT问题
- 26. 德尔福7内存问题
- 27. 德尔福XE - 的DataSnap过滤问题
- 28. WSDL进口问题德尔福XE2
- 29. 德尔福偶奇的问题
- 30. 德尔福问题转换VirtualProtect的EAT挂钩程序从C到德尔福
我有点找到了一种方法来使用OnOutboundData来做这种有点贫民区 – Bryan 2011-03-17 12:05:27