Indy 컴포넌트를 사용하여 간단한 채팅프로그램을 만들고자 합니다.
서버와 클라이언트가 있는데,
예를 들어 클라이언트에서 '서버종료' 라는 메세지를 입력하면,
서버에서 그 메세지를 받아서 서버를 종료 시키도록 하고 싶은데,
또 '메모장실행' 이렇게 하면 서버프로그램이 컴퓨터에 있는 메모장을 실행 시키도록 이렇게 하려고 하는데요.
제가 어쭙고 싶은것은. 서버 종료와 메모장실행이 아니라.
TCPServerExecute 에서 어떤식으로 메세지를 받아서 하는지 그것을 알고 싶습니다.
다른 방법으로 서버에 있는 메모장에 memo1.lines.add 로 받아서 하려고 하는데 이상하게 안되는것 같더군요.
인디 데모에 있는 파일들을 한번씩 보세요. 대강 인디가 어떻게 작동하는지 아는데 도움이 되실겁니다...
procedure TDBADataModule.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
Data := AThread.Connection.ReadXXXX;
end;
ReadXXXX는 클라이언트에서 보내는 방식에 따라서 바꾸어주시면 됩니다. 예를 들어 클라이언트에서 문자열을 보내면 ReadString,ReadLn등으로 읽으시면 되고, 숫자일땐 ReadInteger, ReadCardinal등으로 읽으시면 됩니다.
^^ 항상 즐코하세요...