![](/img/trans.png)
[英]keypad popup blocks view of application in delphi xe8 Firemonkey
[英]Delphi XE8 gracefully handle ETetheringException at application startup
从2020年到2039年,Delphi应用程序网络共享管理器将保留20个端口,以启动其通信线程。 我想找出在同一台计算机上启动21st应用程序时发生的情况。 事实证明,该应用程序只是挂起而无响应,直到被杀死为止,而我还没有找到一种优雅地终止它的方法。
要进行复制,只需将TTetheringManager和TTetheringProfile放在一个空的窗体上,将配置文件连接到Manager,进行编译,在IDE外部启动应用程序20次,最后在IDE中启动第21个实例。
到目前为止,这是我发现的:
在System.Tether.NetworkAdapter中:过程TTetheringNetworkManagerCommunicationThread.Execute ; 当无法启动TCP或UDP通信服务器时,引发ETetheringException.Create(SManagerNetworkCreation) 。 到目前为止,一切都很好。
此异常显示在调试器中。 当我继续并逐步执行以下代码时,该应用程序最终挂在System:函数AcquireExceptionObject上,并且永不返回。
由于在Application.Run期间引发了应用程序,因此我尝试通过以下方法捕获异常:
try
Application.Run;
except
ShowMessage('Something went terribly wrong!');
end;
但这没用。 关于如何捕获(或防止)此异常的任何建议?
由于这确实似乎是一个错误,因此我为此提交了质量报告: https : //quality.embarcadero.com/browse/RSP-11345
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.