|
요약해서 답해드립니다.
김도훈 님이 쓰신 글 :
: 1.클래스를 새로 구현 할려고 하는 꼭 컴퍼넌트로 해야 하나요?
-> 아니요..
: 컴퍼넌트가 아닌 unit을 하나 새로 생성한 다음에 거기서 헤더 파일에 클래스 정의 하고 메인 폼에서 클래스를 불러 와서
: 사용하는데 새로 정의된 클래스내에 TClientSocket을 선언 햇는데 런 하면 에러는 안 나는데 버튼을 눌러서 소켓의 멤버 변수들을 불러주면 에러가 나는 군요...클래스를 새로 정의 할때 컴퍼넌트로 꼭 해야 하나요? 그렇지 않다면 컴퍼넌트로 만들었을때와 아닐때의 차이점을 알려 주시면 감사 하겠습니다.
-> 헤더에 ScktComp.hpp 를 포함하세요
TClientSocket은 ScktComp.hpp에 선언되어 있습니다.
클래스로 사용하던 컴포넌트로 사용하던 작성이 편한대로 하세요.. ^^;
:
: 2.컴퍼넌트로 만들지 않고 그냥 클래스를 생성 하였을 경우 이벤트들 OnConnect, OnError 등을 사용 하려면 어떻게 해야 하나요? 처음 공부할때 컴퍼넌트를 사용 하면 Object Inspector 에서 지정하면 되는데 직접 사용 하려니 방법을 모르겠습니다...
-> OnConnect는 가상함수로 선언되어 있습니다. 때문에 오버라이드 지정이 가능합니다.
대충 이런식으로 생성과 오버라이드 할 수 있습니다.
ClientSocket1= new TClientSocket(this); // 클라이언트 소켓 생성
ClientSocket1->OnConnect=OnConnect1; // OnConnect 함수 오버라이드
ClientSocket1->OnDisconnect=OnDisconnect; // OnDisConnect함수 오버라이드
ClientSocket1->OnError=OnError; // OnError함수 오버라이드
함수 선언은 클래스 내에
void __fastcall OnConnect1(TObject * Sender, TCustomWinSocket * Socket);
이렇게 하였습니다.
:
: 3.질문이 길어졌네요...^ㅡ^;;
: 빌더에 관한 강좌나 문서 또는 책중에 소켓에 관해서 조금 자세히 나온것은 없을까요? 유료여도 상관 없는데
: 가지고 잇으신 분이나 알고 잇으신 분은 알려 주시면 감사 합니다.....공유 해주시면 더 감사 하고요....
-> 저 같은 경우 빌더에 소켓에 대한 내용을 찾기가 어려워.. TCP/IP 통신이라는 책을 구해서 공부 했습니다.
어차피 윈도에서 winsock 기반의 통신이기 때문에 개념만 이해하면 접근이 훨씬 용이한것 같습니다.
그리고 빌더에서 Indy나 그외 소켓을 지원하는 콤포넌트가 많기 때문에 기본을 이해하시고 접근하는것이
좋은 방법 같습니다.;.... 아주 주관적으로 ..TT
:
: 4.포럼이 정리가 잘되있는데 여기 말고 또 이런 포럼이나...활성화된 카페나 블로드, 웹사이트 등을 알고 있으시면 좀 알려 주세요.....
-> 혹 누가 알려주면 저한테도 알려주세요.. 자료가 부족해요.. 빌더는... 영어를 아주 잘하면 좀더 많은 정보를
얻을 수도 있으련만...
:
:
: 마지막으로 BCB 가 먼가요? ㅋㅋㅋ
-> Borland C++ Builder ㅋㅋ 맞죠 여러분 ~~~!!
:
: 질문이 너무 길었네요...빠른 답변해 주시면 감사 합니다....
: 좋은 하루 되세요~~~~^^
|