|
잘은 모르지만 recv의 리턴값을 검사 하시어 더이상 자료가 있는지 없는 지 검사 하셔야합니다.
recv의 리터값이 0이 될때 더이상 상대편에서 보낸 자료가 없다는 뜻입니다.
님의 경우에는 제가 볼때 while에서 무한 루프를 돌고 있습니다.
TForm:Create...()
{
: connction();
: recvdata();
: }
: recvdata( )
{
: while(1)
{
: if (0 == recv())//아마 이렇게 고쳐야 할겁니다.
; break;
: }
: }
:
제 설명이 틀릴수도 있으니 메뉴얼을 보시기 바랍니다. 오래되서 기억이 잘 안납니다.
그럼
루퍼스 님이 쓰신 글 :
: 안녕하세요.. 왕초보입니다.
:
: 현재 소켓을 이용하여 서버로 부터 데이터를 받아 화면에 보여주는 프로그램을 작성중입니다.
:
: 그런데 딱 한번 데이터를 받도록 하면 폼이 로드가 되는데 while 문으로 무한루프를 돌리면
:
: 폼이 화면에 나타나질 않습니다. 무한루프때문인것 같은데 어떻게 해야 폼이 로드될까요..
:
: 간략 소스는
:
: MDI형태이며
:
: chile 폼이 create될때 create function에서 다음 코드를 부릅니다.
:
: TForm:Create...() {
: connction();
: recvdata();
: }
: recvdata( ) {
: while(1) {
: recv();
: }
: }
:
|