C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[46571] Re:[질문] VCL 을 이용한 시리얼 포트 라이브러리 제작시 문제점
최상천 [kangnung] 1117 읽음    2006-09-19 13:07
ComPort1->OnRxChar = RxMonitor;

이렇게 쓰셔야 할 듯...




셀마 님이 쓰신 글 :
: 안녕하세요, 셀마 입니다. 처음 질문을 올려 봅니다. 엔간한 문제는 잘 찾아 해결하고 있구요, 답변해
: 주시는 많은 분들께 맘속으로 많이 고맙게 생각하고 있습니다. 저도 도움이 되는 답변을 올려 봤으면
: 좋겠네요, ^.^

:  현재 cport-3.10.zip 파일을 볼랜드 포럼에서 다운받아 TComPort 라는 시리얼 포트 제어 컴포넌트를
: 잘 사용하고 있습니다. 사용하는데는 문제가 없는데요, 라이브러리(DLL)로 만들어 사용하는데
: 한가지 문제가 발생했습니다.
:  문제는 다음과 같습니다.
:
: 1.cport-3.10 을 이용한 라이브러리 제작상의 문제
:
:  TComPort의 컴포넌트에는 'OnRxChar'라는 이벤트 핸들러 함수 있는데요, 라이브러리 제작시에는 이것을
: 수작업으로 "ComPort1->OnRxChar = *(TRxCharEvent*)(&RxMonitor); " 이렇게 이벤트 핸들러를 등록을
: 하고 있습니다. 그런데 라이브러리가 생성이 되고 시리얼 포트를 통해 데이터를 보내는 것에도 이상이 없는데요,
: 이벤트 함수인 'RxMonitor(...)' 가 작동을 하지 않고있습니다. 혹 이런 경험을 해 보신분 있으시면 조언
: 부탁드립니다.
:
: 2. 그리고 이건 다른 문제 인데요, 일반 시리얼 포트 제어 클래스를 구해서 사용하는데 컴포트가 10번 이상인
: 경우는 포트의 핸들을 구하는 "handlePort = CreatFile(...)" 에서 핸들을 구해오지 못하는 현상이 있습니다.
: 이런 현상도 경험해보신 분 있으시면 조언 부탁 드리겠습니다.
:
:
: 아래 두 문제와 관련된 코드 일부를 올려놓겠습니다.
:
:
: /////////////////////
: 1번 관련 코드
:     void __fastcall RxMonitor(TObject* Sender,int Count){
:         ... SendMessage(hTargetWnd,WM_RXEVENT,(WPARAM)Data,0);   
:         //이벤트가 발생해도 동작하지 않음 - breakpoint를 걸어도 걸리지 않음.
:        ...
:                }
:
:     long __declspec(dllexport) __stdcall  Open(String sPort, int nBaudRate, HWND hWnd){
:         ...   
:         hTargetWnd = hWnd;    //이벤트 받을 곳의 핸들러 넘기는 곳
:         ComPort1->OnRxChar = *(TRxCharEvent*)(&RxMonitor);
:     // 이벤트 처리 함수가 등록되는것 같기는 하지만 동작은 하지않음
:         ...
:     }
:
: 2번 관련 코드   
:     bool Open(...){
:     ...
:       // 포트넘버가 10 이상일 경우엔 hComDev 에 핸들이 넘어오지 않음
:
:       hComDev = CreateFile(
:         device,                       
:         GENERIC_READ | GENERIC_WRITE,           
:         0,                       
:         NULL,                       
:         OPEN_EXISTING,                   
:         FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,   
:         NULL );                       
:
:     ....
:     }

+ -

관련 글 리스트
46563 [질문] VCL 을 이용한 시리얼 포트 라이브러리 제작시 문제점 셀마 1132 2006/09/18
46571     Re:[질문] VCL 을 이용한 시리얼 포트 라이브러리 제작시 문제점 최상천 1117 2006/09/19
46575         Re:Re:[질문] VCL 을 이용한 시리얼 포트 라이브러리 제작시 문제점 셀마 1040 2006/09/20
46578             Re:Re:Re:[질문] VCL 을 이용한 시리얼 포트 라이브러리 제작시 문제점 장성호 1393 2006/09/20
46690                 답변 감사합니다. 셀마 1021 2006/09/29
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.