更改TIdTCPClient.Connect中的错误消息



我使用的是TIdTCPClient。这似乎是一件简单的事情,但当我执行tcpClient->Connect();时,我找不到更改错误消息"Already connected"的方法

所以我设置了HostPortConnectTimeout,然后我调用了Connect()

我试图使用WriteLn()来更改错误消息,也许这就是解决方案,但我可能用错了方法。

我只想向客户端显示(可能在ShowMessage()TLabel中(,而不一定要向服务器显示。

如果客户端已经连接到服务器,则不能调用TIdTCPClient::Connect()(TIdTCPClient::Connected()返回true(,必须先调用TIdTCPClient::Disconnect()

如果您询问如何更改错误消息文本本身,它是一个本地化字符串(IdResourceStringsCore单元中的RSAlreadyConnected(,因此只需根据需要本地化您的应用程序即可。

否则,您可以简单地使用try..catch来捕获引发的EIdAlreadyConnected异常,然后显示您想要的任何文本,例如:

try {
tcpClient->Connect();;
}
const (const EIdAlreadyConnected &) {
ShowMessage("Already connected! Please disconnect first.");
}
catch (const Exception &) {
ShowMessage("Error Connecting!");
}

相关内容

最新更新