关于TIDTCPServer第二次激活后,没有OnConnect事件发生。(50分)

  • 主题发起人 主题发起人 aKnightChen
  • 开始时间 开始时间
A

aKnightChen

Unregistered / Unconfirmed
GUEST, unregistred user!
我是这样做

IDTCPServer1.Active:=True;
....
IDTCPClient1.Connect; //此时Server.OnConnection事件发生
....
IDTCPClient1.DisConnect; //此时Server.OnDisConnection事件发生
....
IDTCPServer1.Active:=False;
...

===以上是第一次做,下面再做一次,就发现很怪的情况,====

IDTCPServer1.Active:=True;
....
IDTCPClient1.Connect;
//我进入调试模式,看到IDTCPClient1.Connect;已正常执行了,
只是Server.OnConnection事件却没有发生,,,晕
....
[以上程序是简化写法,我只是做个测试程序,OnExecute事件非常简单。]
哪位大哥有遇到这种情况?
 
IDTCPServer1.Active:=False;
IDTCPServer.binding.clear;//加入看看?
IDTCPServer1.Active:=True;
 
谢谢zywcd
成功了!
 
哦,终于找到问题了,
是我程序中用到了 IDTCPServer.Threads.LockList
却没有UnLock.
所以,才会出现上面这种错误.
特此与大家分享.谢谢!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部