Q&A

  • socket 통신이 잘 안되네요... -_-
TIdHTTP, TIdHTTPServer 콤포넌트나
TClientSocket, TServerSocket 콤포넌트를 이용해서
데이타 전송 프로그램을 만들려고 합니다.
근데... 데이타 전송이 잘 안되네요... 쩝... -_-

IdHTTPClient.Write( 'aaaaa' ) ;
ClientSocket.Socket.SendText( 'bbbbb' ) ;

이렇게 보내는게 맞는지요...
서버측에서 어떻게 받는지... 통 모르겠습니다.
꼭 가르쳐 주십시오.
가능하다면 샘플 프로그램을 주신다면...
공부하는데 많은 도움 될 것 같습니다.
부탁드립니다. 감사합니다.
4  COMMENTS
  • Profile
    최용일 2002.06.29 00:19
    안녕하세요. 최용일입니다.

    데이터 전송하실려면 HTTP대신에 TCP(TIdTCPServer, TIdTCPClient)컴포넌트를 쓰시는 것이 더 나을 겁니다.

    클라이언트 컴포넌트(TIdTcpClient)에서

    idTcpClient.WriteLn
    idTcpClient.WriteBuffer
    idTcpClient.WriteInteger

    등을 이용해서 데이터를 보내시고

    서버컴포넌트(TIdTcpServer)의 OnExecute에서 AThread파라매터로 데이터를 받으시면 됩니다.

    procedure TForm1.idTcpServer1(AThread: TIdPeerThread);
    begin
      Str := AThread.Connection.ReadLn;
      AThread.Connection.ReadBuffer(Buf, SizeOf(Buf));
      Int := AThread.Connection.ReadInteger;

    등을 이용해서 받으시면 됩니다...

    end;

    델파이 소켓컴포넌트도 방식은 비슷하구요...

    인디 데모폴더와 델파이 데모폴더에 보시면 예제들 있습니다. 참조하세요...

    ^^ 항상 즐코하세요...

  • Profile
    신용탁 2002.06.29 01:00
    님... 답변 너무너무 감사합니다.
    좀 더 자세히 설명 부탁드립니다.
    Client나 Server에 들어가는 property 값이라던가...
    events의 설명...
    다시 한번 부탁드립니다.
    감사합니다.
  • Profile
    최용일 2002.06.29 01:25
    뭐 자세히 설명할것두 없는데... 쩝~

    서버쪽에 Active속성 Ture로 하시고 Port설정하세요.

    클라이언트쪽에 Host는 서버쪽 아이피로 맞추시고 Port는 서버와 똑같이...

    OnConnect(ed) - 연결될때
    OnDisconnect(ed) - 연결끊길때
    OnExecute - 데이터가 들어올때

    더 자세한 것은 인디 도움말과 데모프로그램 보세요...

    ^^ 항상 즐코하세요...

  • Profile
    신용탁 2002.06.29 02:09
    답변 감사합니다.
    • 김준우
    • 2002.06.29 02:28
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 미소나눔
      2002.06.29 02:47
      일반 개발에 있어 저장, 수정, 조회, 삭제 중에 저장과 수정과 조회는 같치 움직인다고 보시면됩니다. ...
    • 남자
    • 2002.06.29 02:03
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 장태원
      2002.06.29 02:53
      for 문 안쓸려면 저같으면..TStrings 를 사용하겠습니다. var Str : TStrings;    &nbs...
    • 남자
      2002.06.29 20:20
      좋은 방법을 가르쳐 주셔서 감사드립니다.^^ 많은 도움 되었습니다.
    • 이민성
    • 2002.06.29 01:27
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 백록화
      2002.07.03 04:22
      yo` 안녕하세요!! 백록화 입니다. :) http://www.delmadang.com/rocka 에서 DMZ 로 검색하시면 ...
    • 홍동훈
    • 2002.06.29 01:07
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 백록화
      2002.07.03 04:17
      yo` 안녕하세요!! 백록화 입니다. :) http://www.delmadang.com/rocka 에서 DMZ로 검색하시면 ...
    • 이민성
    • 2002.06.29 00:58
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 장태원
      2002.06.29 02:57
      여러 방법이 있죠. 1) 컴퍼넌트 유닛을 인스톨시..    Component -> Install Componet...
    • 권정원
    • 2002.06.29 00:36
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 신용탁
    • 2002.06.28 23:56
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.06.29 00:19
      안녕하세요. 최용일입니다. 데이터 전송하실려면 HTTP대신에 TCP(TIdTCPServer, TIdTCPClient)컴포넌트...
    • 신용탁
      2002.06.29 01:00
      님... 답변 너무너무 감사합니다. 좀 더 자세히 설명 부탁드립니다. Client나 Server에 들어가는 propert...
    • 최용일
      2002.06.29 01:25
      뭐 자세히 설명할것두 없는데... 쩝~ 서버쪽에 Active속성 Ture로 하시고 Port설정하세요. 클라이언...
    • 신용탁
      2002.06.29 02:09
      답변 감사합니다.
    • 박동호
    • 2002.06.28 22:44
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 블랙썬
      2002.06.28 23:28
      Interface부분의 uses절은 보다 넓은 범위에서 다른 유닛의 Interface부분에 선언된 유닛을 사용할수 있...
    • 장태원
      2002.06.29 03:01
      Interface 부분의 uses 절은 Class 또는 Componet 등 라이브러리를 가져 온다고 보시면 되고, implement...
    • 짱아
    • 2002.06.28 21:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.06.28 22:48
      hsr/////////////////////////////////////////////////////// ShowScrollBar 함수를 써보세요. 폼쑈나 ...
    • 박준열
      2002.06.28 22:14
      체크사항1. XP의 모든 PC가 다 그런가요 ? 체크사항2. XP는 기본 Memory(RAM)이 256으로 알고 있슴니다 &...
    • 버섯
      2002.06.28 21:31
      제가볼때 네트워크 오류지 프로그램 오류는 아닙니다. 통신 컴퍼넌트를 쓴것도 아니고.. ODBC를 이용해...
    • 이종택
    • 2002.06.28 20:33
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 이현철
      2002.06.28 20:57
    • 이종택
      2002.06.28 21:05
    • 이현철
      2002.06.28 22:40
    • 이종택
      2002.06.28 22:56
    • 이현철
      2002.06.28 23:15
    • 블랙썬
      2002.06.28 23:31
      상속받아서 사용하였을 경우 삭제시 다음 메시지가 뜹니다 예를들자면 Form1 에 Panel 이 하나있는데 ...
    • 델파이사랑
      2002.06.29 05:27
      감사합니다. (냉무)
    • 김도형
    • 2002.06.28 20:07
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 장태원
      2002.06.29 03:05
      TQRLabel 인 경우 보통 wordwrap 에서 true 하시고 autosize 를 true 하시면 될듯.. 하지만 band 자체의...
    • 안두식
    • 2002.06.28 19:59
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 단현석
      2002.06.28 20:31
      Keypress 이벤트서 다음과 같이 코딩하면 됩니다. 참고로 OnEnter 이벤트는 포커스가 들어갈 때 발생합...
    • 안두식
      2002.06.28 22:06
      답변 감사드립니다..^^ 그런데 edit2  event에서 OnKeyPess를 누루고 님이 알련준 대로 코딩을...
    • 단현석
      2002.06.28 22:50
      에고 지송요.. keydown 이벤트네요. keypress 이벤트서 처리하려면 Key= #13으로 처리해야 합니다. ...
    • 이현철
      2002.06.28 22:45
      아래와 같이 해보세요.. 그리구 VK_RETURN 은 키보드 엔터 값인데, 델파이에서 정의된 상수 입니다. ...
    • 김준우
    • 2002.06.28 19:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 블랙썬
      2002.06.28 23:23
      DBGrid란게 Query랑 연결이 되있는거라 어렵습니다 그리고 일반적으로도 추가,삭제후  조회 다...
    • 방기남
    • 2002.06.28 19:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 장태원
      2002.07.03 20:56
      오라클에 명령을 보내는게 좋을듯 하네요..kill process 같은...
    • 유영호
    • 2002.06.28 19:45
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 단현석
      2002.06.28 20:35
      Database1 는 데이터 베이스 컴포넌트 이름입니다. DataAccess 팔레트에 보면 데이터베이스 컴포넌트가 ...
    • 유영호
      2002.06.28 23:43
      제가 진쫘 초보라 그런지..이해가 잘..... 다시한번 부탁드립니다. 일단...DataAccess 팔레트에 데이터베...
    • TestMan
      2002.06.30 03:03
      질문의 요지가 핑을 어떻게 날리고.. 어떻게 확인을 하느냐는거 같은데.. 답변들이 한결같이 "핑을 날려보...
    • 이현철
      2002.06.28 20:13
      tip란인가? 에서 인터넷에 연결되어 있는지를 확인하는 소스가 공개된것을 본적이 있습니다. 한번 검색...
    • 이선경
      2002.06.28 19:35
      잘은 모르지만 ping날리면 되지 않을까여...
    • 어린왕자A
      2002.06.28 19:53
      네.. 저의 질문이..핑을 어떻게 날려서 확인하는 겁니까? 핑 말고도 익스플러로를 쓰는 방법도 있는 거...
    • 이현철
      2002.06.28 22:50
      가장 확실하고 간단한 방법은 프로그램 내부에서 유명 사이트에 ping 을 해보는 것입니다. empas.co....
    • 이재진
    • 2002.06.28 11:20
    • 0 COMMENTS
    • /
    • 0 LIKES