한 개의 컴퓨터 내에서 두 개의 각기 다른 프로그램으로
소켓 프로그램을 실행해 보았더니, 11002 에러가 납니다.
에러분류를 보아도 잘 모르겠습니다.
원래 그냥 한 컴퓨터 내에서도 두 개의 CilentSock과 ServerSock을
띄우면 실행이 되는 건가요?
델파이에 있는 데모채팅 프로그램은 실행이 안 되던데요.........
그리고 가장 간단한 접속을 하기 위해 설정해야 하는 곳 좀 가르쳐 주세요....
고수님들의 답변을 부탁드립니다.
그럼 계속 수고하십시요.
관리자님 11606 게시판에 제가 잘못 썼는데 삭제가 안 되네요....
지워 주세요~~~~ ^^;
> 한 개의 컴퓨터 내에서 두 개의 각기 다른 프로그램으로
> 소켓 프로그램을 실행해 보았더니, 11002 에러가 납니다.
> 에러분류를 보아도 잘 모르겠습니다.
> 원래 그냥 한 컴퓨터 내에서도 두 개의 CilentSock과 ServerSock을
> 띄우면 실행이 되는 건가요?
- 띄워 놓고 해도 상관이 없습니다.
> 델파이에 있는 데모채팅 프로그램은 실행이 안 되던데요.........
- 가끔 보면 데모cd에서 불러와서 컴파일을 하는 경우가 있더라구요
- 혹시 이무나니님도 그러셨는지? 하드로 불러와서 읽기전용 해제하고 히~!
> 그리고 가장 간단한 접속을 하기 위해 설정해야 하는 곳 좀 가르쳐 주세요....
- 서버 프로그램에선 서버소켓만 있으면 되것지요
- 그래서 서버에다가는 서버 컴포넌트에다가 포트 6000, active를 true로
- 그래서 서버 컴포넌트의 클라이언트리드 이벤트에다가 이것을 적어줍니다.
- var
- txt : string;
- i : integer;
- begin
- txt := Socket.Receivetext;
- i := 0;
- while true do
- try
- SErver.Socket.Connection[i].Sendtext(txt);
- inc(i);
- except
- break;
- end;
- end;
- end;
- 클라이언트 프로그램에선 클라이언트소켓과 글을 볼수 있는 메모
- 그리고 글을 칠수 있는 edit 있으면 되것지요
- 그래서 클라이언트 컴포넌트에다가 포트 6000, active를 true로
- Address에다가는 127.0.0.1로(자기 자신의 컴퓨터 주소)
- 우선 클라이언트 컴포넌트의 클라이언트리드 이벤트에다가
- begin
- memo1.lines.add(socket.receivetext);
- end;
-
- 그리고 edit의 키다운 이벤트에다가는
- begin
- if key = vk_return then
- begin
- client.socket.sendtext(edit1.text);
- edit1.text := '';
- end;
- end;
- 이러고 해보면 채팅프로그램 완성........ 간단하지요!
- 서버 프로그램 한개 실행하고 클라이언트 프로그램 2~4개 정도 띄워놓고 해봐요
- 그럼 규추니 물러 갑니다.
> 고수님들의 답변을 부탁드립니다.
> 그럼 계속 수고하십시요.
>
> 관리자님 11606 게시판에 제가 잘못 썼는데 삭제가 안 되네요....
> 지워 주세요~~~~ ^^; - 관리자님이 요근래 바뻐서 버리....