如何屏蔽 Socket Error 错误提示 ?

bgxbd 2019-09-29 04:44:20
我是主动关闭FTP链接的,然后链接时就提示 ‘socket error #10061’,这类错误信息如果才可以修改为自定义信息 ? 网上说捕获 Errorcode再通过 if 语句修改,但是不知道怎样才能够捕获 Errorcode。另外 IdFTP1.Connect(); 也不能够通过 try except end 做相应的判断机制。
...全文
132 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
老大i 2019-10-07
  • 打赏
  • 举报
回复
楼上的方法都可行
lao_yunger 2019-10-06
  • 打赏
  • 举报
回复
try idftp1.Connect; er:=getlasterror() except if er=10061 then begin showmessage('朋友好久见,联系不上') end else begin showmessage('尊敬的顾客,还有什么事可帮您') end end;
bgxbd 2019-10-06
  • 打赏
  • 举报
回复
引用 3 楼 BlueStorm 的回复:
可以使用Application.OnException事件 Application.OnException := ApplicationException; procedure TFormMain.ApplicationException(Sender: TObject; E:Exception); begin ...... end;
报如下这个错误 哦! [dcc32 Error] Main.pas(74): E2003 Undeclared identifier: 'ApplicationException'
BlueStorm 2019-10-06
  • 打赏
  • 举报
回复

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
  System.Classes, Vcl.Graphics,  Vcl.Controls, Vcl.Forms, Vcl.Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    procedure ApplicationException(Sender: TObject; E:Exception);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnException := ApplicationException;
end;

procedure TForm1.ApplicationException(Sender: TObject; E:Exception);
begin
  if (Pos('Socket Error # 10061', E.Message ) >= 1) then
  begin
    Application.MessageBox(
      PChar('连接已中断(' + E.Message + ')'),
      PChar('报错信息'), MB_OK + MB_ICONSTOP + MB_TOPMOST);
  end
  else
    Application.ShowException(E);
end;

end.
无聊的猪 2019-09-30
  • 打赏
  • 举报
回复

  try
    idftp1.Connect;
  except
    on e: EIdSocketError do
    begin
      ShowMessage(IntToStr(e.LastError));
    end;
  end;  
铖邑 2019-09-30
  • 打赏
  • 举报
回复
是抛出异常了吗?会不会是配置有什么问题呢?
BlueStorm 2019-09-30
  • 打赏
  • 举报
回复
可以使用Application.OnException事件 Application.OnException := ApplicationException; procedure TFormMain.ApplicationException(Sender: TObject; E:Exception); begin ...... end;

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧