|
리치 님이 쓰신 글 :
: 금목암 님이 쓰신 글 :
: : 리치 님이 쓰신 글 :
: : : 빌더 5 이고요 CPort 2.64 인 상태에서
: : : 컴포넌트를 10 개 정도 놓고 Open 하고 나서 다시 바로 Close하면 프로그램이 다운 되는 현상이 발생 합니다.
: : : Win2000 에서는 이런 현상이 발생 하지 않는데 WinXP 에서 이러한 현상이 발생 합니다.
: : : 어떻게 해결하는 방법이 없겠습니까 ?
: : : 첨부된 파일은 제가 테스트 했던 프로그램 입니다.
: : ----------------------------------------------------
: : [답변]
: :
: : 일단 빌더5는 안써봤는데 (빌더6 사용) 프로그램에 문제가 좀 있어보이네요
: :
: : 통신포트 여실때나 닫으실때 제대로 열렸는지 닫혔는지 검사해야 하고
: :
: : 시간적 여유를 주어야 합니다 .
: :
: : 그리고 포트를 열수 잇는지 검사도 해야 합니다 , 에러시 처리도 해야하고
: : [열때]
: : ComPort1->ShowSetupDialog();
: : if (ComPort1->Connected)
: : {
: : ComPort1->Close();
: : }
: : ComPort1->Open();
: : [닫을때]
: : if (ComPort1->Connected)
: : {
: : ComPort1->Close();
: : }
: : 요렇게 해보시고 그래도 에러나면 try 루틴으로 에러시 에러메세지 나오고 중단 하고 나오게 하세요
:
: 답변 감사합니다.
: 통신포트의 setup 상태는 컴포넌트에서 모두 맞춰져 있는 상태이고 Connected 상태를 체크하고 try 루틴에 넣고 중간에 Sleep으로 100~2000까지 줘도 보았습니다. Close 할때 죽어서 try .. catch에 들어 가지도 않고 Close문에서 멈춰 있습니다.
[답변]
사용하신게 comport 라이브러리 3.0인데 이게 10개 까지 지원하는지 모르겠네요?
보통 8개까지는 별도의 드라이버로 가능하지마 10개는 어려운걸로 알고 있습니다
시스템베이스나 특수한 통신포트 업체는 더 많은 포트도 사용하지만 물리적으로 8개 를
넘으면 라이브러리 지원을 확인해야 하니
우선 1개씩 1번포트 열었다가 닫았다 이상없으면 2번 열고 닫기 이런식으로 이상 포트를 찿아보세요
|