在delphi中检查internet连接

在delphi中检查internet连接,delphi,indy,internet-connection,Delphi,Indy,Internet Connection,我制作了一个在ftp服务器上上传文件的程序,问题是每当我无法访问互联网时,就会出现一个错误,停止运行该程序,并说我没有连接到互联网 如何使程序在showmessage框中显示该消息,使其不会停止运行程序 例如: If internetconnection then begin end else showmessage ('You are not connected to the internet') 请尝试此链接中的代码 此外,您还可以尝试使用免费组件来实现到ftp服务器的测试连接 编辑:

我制作了一个在ftp服务器上上传文件的程序,问题是每当我无法访问互联网时,就会出现一个错误,停止运行该程序,并说我没有连接到互联网

如何使程序在showmessage框中显示该消息,使其不会停止运行程序

例如:

If internetconnection then
begin

end else showmessage ('You are not connected to the internet')
请尝试此链接中的代码

此外,您还可以尝试使用免费组件来实现到ftp服务器的测试连接

编辑:

由于发现作者使用IdFTP(Indy)组件在ftp服务器上上传文件,并且我的第一个答案不好,我将鼓起勇气编写正确的代码,以检查与ftp服务器的连接:

with IdFTP1 do begin
  Host := ..;
  Port := ..;
  Username := ..;
  Password := ..;
  if Connected then Disconnect;
  try
    Connect;
    ShowMessage('FTP IS Connected')
  except
    ShowMessage('FTP IS NOT Connected');
  end;
end;

尝试连接到该FTP服务器。这样做还将验证FTP服务器是否处于活动状态。请尝试使用哪些组件来执行FTP?您正在使用的组件(Indy、ICS或其他组件)在回答此问题的方式上会有所不同。“在ftp上上载文件”没有任何意义。@RRUZ:
InternetCheckConnection()
不可靠。虽然这可能会回答问题,但无法解决问题。考虑到OP应用程序的用户可能能够连接到Internet,但是将拒绝访问任何FTP连接。我仍然支持尝试连接到目标FTP服务器。请不要只发布链接答案。[此处无表决权]问题代码显示,作者希望检查互联网连接。至于我的帖子,如果作者希望详细了解这个问题,他可以去链接看看更详细的例子。对不起,我应该写评论而不是回答。谢谢大家。Tlama告诉我的方法有效:如果idftp1.conntected=true,那么….else showmessage(‘无法访问internet’);这里没有两个到非现场位置的链接。如果这些链接离线或在将来移动,整个答案就变得毫无意义。你的答案应该包含足够的信息来回答这里的问题。将网站外的链接用作其他参考资料,但不能作为大部分内容。(例外是指向MS等主要网站的链接,这些链接肯定会在那里停留很长时间。)仅仅因为组件未能连接到FTP站点并不一定意味着没有internet连接。例如,假设您的DNS服务器中有一个临时下降,这反过来又使组件无法连接。或者,假设FTP站点暂时关闭。或者,FTP服务器正在阻止您的连接。这些都不意味着你没有互联网连接。