Q&A

  • TCP/IP 클라이언트 소켓 컴포넌트
ClientSocket Open시 ServerSocket시 실행 중이 아닐경우



Error Code : 100062

Asyncronous error Message 가 뜨는데



이것 대신 사용자 정의 메시지를 띄우고 클라이언트를 종료시킬수 있나요

4  COMMENTS
  • Profile
    TeamX 1999.11.11 21:35
    제가 잘은 모르지만 아래처럼하면 되지 않을까요?.



    ...



    try

    Clientsocket1.Open;

    except

    ShowMessage('서버가 꺼져있거나 에러입니다');

    end;



    통신초보 wrote:

    > ClientSocket Open시 ServerSocket시 실행 중이 아닐경우

    >

    > Error Code : 100062

    > Asyncronous error Message 가 뜨는데

    >

    > 이것 대신 사용자 정의 메시지를 띄우고 클라이언트를 종료시킬수 있나요

  • Profile
    통신초보 1999.11.11 22:55
    죄송하지만 해당 방법으로 해도 마찬가지로

    Asyncronous error Message 가 계속납니다.



    다른 방법을 알려주세요 ...:)



    TeamX wrote:

    > 제가 잘은 모르지만 아래처럼하면 되지 않을까요?.

    >

    > ...

    >

    > try

    > Clientsocket1.Open;

    > except

    > ShowMessage('서버가 꺼져있거나 에러입니다');

    > end;

    >

    > 통신초보 wrote:

    > > ClientSocket Open시 ServerSocket시 실행 중이 아닐경우

    > >

    > > Error Code : 100062

    > > Asyncronous error Message 가 뜨는데

    > >

    > > 이것 대신 사용자 정의 메시지를 띄우고 클라이언트를 종료시킬수 있나요

  • Profile
    TeamX 1999.11.11 23:45
    이런 죄송합니다. 제가 해보질 않고 머릿속에서 잔머리를 굴렸더니만.. 잔머리의 최후



    정말 죄송합니다. 아래에 확실한 답변을,.......... -.-;;



    unit Unit1;



    interface



    uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    ScktComp, StdCtrls;



    type

    TForm1 = class(TForm)

    ClientSocket1: TClientSocket;

    Button1: TButton;

    procedure FormCreate(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;

    ErrorEvent: TErrorEvent; var ErrorCode: Integer);

    private

    { Private declarations }

    public

    { Public declarations }

    end;



    var

    Form1: TForm1;



    implementation



    {$R *.DFM}



    procedure TForm1.FormCreate(Sender: TObject);

    begin

    ClientSocket1.Host := 'nilex.co.kr';

    ClientSocket1.Port := 8088;

    end;



    procedure TForm1.Button1Click(Sender: TObject);

    begin

    ClientSocket1.Open;

    end;



    procedure TForm1.ClientSocket1Error(Sender: TObject;

    Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;

    var ErrorCode: Integer);

    begin

    ErrorCode := 0; // 모든 에러를 잠재운다.



    if ErrorEvent = eeConnect then // 연결 관련 에러면...

    begin

    ShowMessage('서버연결에러');

    end;

    end;



    end.





    통신초보 wrote:

    > 죄송하지만 해당 방법으로 해도 마찬가지로

    > Asyncronous error Message 가 계속납니다.

    >

    > 다른 방법을 알려주세요 ...:)

    >

    > TeamX wrote:

    > > 제가 잘은 모르지만 아래처럼하면 되지 않을까요?.

    > >

    > > ...

    > >

    > > try

    > > Clientsocket1.Open;

    > > except

    > > ShowMessage('서버가 꺼져있거나 에러입니다');

    > > end;

    > >

    > > 통신초보 wrote:

    > > > ClientSocket Open시 ServerSocket시 실행 중이 아닐경우

    > > >

    > > > Error Code : 100062

    > > > Asyncronous error Message 가 뜨는데

    > > >

    > > > 이것 대신 사용자 정의 메시지를 띄우고 클라이언트를 종료시킬수 있나요

  • Profile
    통신초보 1999.11.12 00:30
    TeamX님께

    많이 감사합니다. 아주 잘 됩니다. 종종 조언 부탁드립니다.

    꾸벅 !!!



    TeamX wrote:

    > 이런 죄송합니다. 제가 해보질 않고 머릿속에서 잔머리를 굴렸더니만.. 잔머리의 최후

    >

    > 정말 죄송합니다. 아래에 확실한 답변을,.......... -.-;;

    >

    > unit Unit1;

    >

    > interface

    >

    > uses

    > Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    > ScktComp, StdCtrls;

    >

    > type

    > TForm1 = class(TForm)

    > ClientSocket1: TClientSocket;

    > Button1: TButton;

    > procedure FormCreate(Sender: TObject);

    > procedure Button1Click(Sender: TObject);

    > procedure ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;

    > ErrorEvent: TErrorEvent; var ErrorCode: Integer);

    > private

    > { Private declarations }

    > public

    > { Public declarations }

    > end;

    >

    > var

    > Form1: TForm1;

    >

    > implementation

    >

    > {$R *.DFM}

    >

    > procedure TForm1.FormCreate(Sender: TObject);

    > begin

    > ClientSocket1.Host := 'nilex.co.kr';

    > ClientSocket1.Port := 8088;

    > end;

    >

    > procedure TForm1.Button1Click(Sender: TObject);

    > begin

    > ClientSocket1.Open;

    > end;

    >

    > procedure TForm1.ClientSocket1Error(Sender: TObject;

    > Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;

    > var ErrorCode: Integer);

    > begin

    > ErrorCode := 0; // 모든 에러를 잠재운다.

    >

    > if ErrorEvent = eeConnect then // 연결 관련 에러면...

    > begin

    > ShowMessage('서버연결에러');

    > end;

    > end;

    >

    > end.

    >

    >

    > 통신초보 wrote:

    > > 죄송하지만 해당 방법으로 해도 마찬가지로

    > > Asyncronous error Message 가 계속납니다.

    > >

    > > 다른 방법을 알려주세요 ...:)

    > >

    > > TeamX wrote:

    > > > 제가 잘은 모르지만 아래처럼하면 되지 않을까요?.

    > > >

    > > > ...

    > > >

    > > > try

    > > > Clientsocket1.Open;

    > > > except

    > > > ShowMessage('서버가 꺼져있거나 에러입니다');

    > > > end;

    > > >

    > > > 통신초보 wrote:

    > > > > ClientSocket Open시 ServerSocket시 실행 중이 아닐경우

    > > > >

    > > > > Error Code : 100062

    > > > > Asyncronous error Message 가 뜨는데

    > > > >

    > > > > 이것 대신 사용자 정의 메시지를 띄우고 클라이언트를 종료시킬수 있나요