C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[13847] Re:소켓통신에서 클라이언트가 끊어졌을때 인덱스 에러가 납니다.(질문)ㅠ.ㅠ
홍지곤 [] 1004 읽음    2001-12-21 18:50
고영문 님이 쓰신 글 :
: 타이머로 계속해서 클라이언트로 값을 보내는데 클라이언트를 죽이면 인덱스 에러가 나오네요. 아마두 클라
:
: 이언트가 죽었을때 보내지 말라는 명령을 해야 할거 같은데 어떻게 클라이언트가 죽는걸 알수 있죠?
:
:
: *****Server*******
: __fastcall TForm1::TForm1(TComponent* Owner)
:    : TForm(Owner)
: {
:   temp=0;
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,
:       TCustomWinSocket *Socket)
: {
:     receivePacket = Socket->ReceiveText();
:     Edit2->Text = receivePacket;
:     Socket->SendText(Edit2->Text);
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:    Timer1->Enabled = true;
: }
: //---------------------------------------------------------------------------
: void __fastcall TForm1::Timer1Timer(TObject *Sender)
: {
:    temp++;         // Time Interval = 200;
:    Edit1->Text = temp;//sendPacket;
:    ServerSocket1->Socket->Connections[0]->SendText(temp);//sendPacket);
: }
: //---------------------------------------------------------------------------
:
:
: *********Client*****************
: void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
:       TCustomWinSocket *Socket)
: {
:    AnsiString str1;
:    str1 = Socket->ReceiveText();
:
:    Edit2->Text = str1;
: }
:

//-------------------------------------------------------------------------------
안녕하세요! Magic.홍지곤 입니다.

그냥 참고만 하세요!

Clinet 를 죽일때 Server쪽으로 죽었다는 Packet을 날리면 될 것 같은데요..

Server쪽에서는 이 Packet을 받아 Clinet쪽으로 보내지 않으면 될 것 같습니다.

정상적으로 Client를 죽였을때 입니다.

Client에서 Server야 나죽었다 이러면 Server에서는 너 죽었냐..그럼 데이터 보내지

않을께....이런식이 아닐까 생각합니다..

강제로 Clinet를 죽였을시에는 Server쪽에서 일정시간이나 머 이런것으로 Clinet가

죽었는지 죽지 않았는지 체크하는 수밖에는 없을 것 같구요.. 이건 제 생각이니

참고만 하세여~~

아참! 위에 소스를 잠깐 보니까 일반 소켓 컴포넌트를 이용한 것 같은데..

이걸로 하면 소켓 에러쪽에서 체크 할 수 있는 것 아닌가요?

조금이라도 도움이 되었으면 하네요^^*

초보라서 답변하기 좀 그러네여~~~

그럼..즐프하세요~

+ -

관련 글 리스트
13846 소켓통신에서 클라이언트가 끊어졌을때 인덱스 에러가 납니다.(질문)ㅠ.ㅠ 고영문 888 2001/12/21
13851     Re:소켓통신에서 클라이언트가 끊어졌을때 인덱스 에러가 납니다.(질문)ㅠ.ㅠ 수야 1179 2001/12/22
13847     Re:소켓통신에서 클라이언트가 끊어졌을때 인덱스 에러가 납니다.(질문)ㅠ.ㅠ 홍지곤 1004 2001/12/21
13920         Re:Re:소켓통신에서 클라이언트가 끊어졌을때 인덱스 에러가 납니다.(질문)ㅠ.ㅠ 고영문 1256 2001/12/25
13942             [참고]그냥 참고만 하세요! 홍지곤 1324 2001/12/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.