장성호 님이 쓰신 글 :
: 아래 컴포넌트를 이용해 보세요
:
:
http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=component&no=428
:
http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=component&no=516
:
: 그럼..
:
: Blu-ray™ 님이 쓰신 글 :
: : VC++에서 작성한 것인데, Universial 인터페이스로 제공하게 짜여져 있다고 합니다.
: :
: : 가만 생각해 보니, 똑같이 VC++에서 사용하면 되지만 VB에서도 Event 처리가 안되어서 직접 짰던 경험이 있었습니다.
: : 아무래도 RS-232를 직접 짜야할 것 같습니다...
: :
: : 지나간이 님이 쓰신 글 :
: : : RS232 용 ActiveX 컴포넌트 측에서 외부로 제공되는 외부 제공용 인터페이스에서 Event로 제공했는지 궁금합니다.
: : :
: : : 인터페이스에서 외부로 Event를 제공 하지 않으면 OnDataReceive는 정상 동작되지 않을 것입니다.
: : :
: : : Blu-ray™ 님이 쓰신 글 :
: : : : 저는 볼랜드 C 빌더는 완전 초짜입니다.
: : : :
: : : : 지금 기존 프로그램에 RS-232 통신 하는 Active-X를 추가하고 있습니다.
: : : : 다른 걸 Visual C++로 짤 때는 참 쉽게 만들었었는데...
: : : :
: : : : 결론적으로 Send는 잘 됩니다만...
: : : : Receive Event가 발생되지 않는데, 이유를 잘 모르겠습니다.
: : : :
: : : : 같은 형식으로 VC++로 만들었을 때는 잘 되었습니다.
: : : :
: : : : // Send Function
: : : : void __fastcall TmainForm::CommSend(short MAdr, short Adr, short Data1, short Data2)
: : : : {
: : : : WD[0] = MAdr;
: : : : WD[1] = Adr;
: : : : WD[2] = Data1;
: : : : WD[3] = Data2;
: : : :
: : : : char str[24];
: : : : sprintf(str, "Send : %02X, %02X, %02X, %02X", WD[0], WD[1], WD[2], WD[3]);
: : : : Application->MessageBoxA(str, MB_OK);
: : : :
: : : : // Read Data Initialize...
: : : : RD[0] = RD[1] = RD[2] = RD[3] = -1;
: : : :
: : : : m_Comm->SendData(WD[0], WD[1], WD[2], WD[3]);
: : : : }
: : : :
: : : :
: : : : // 이 함수는 첨부 그림과 같이 Events Tab에서 추가하였습니다.
: : : : // RS-232 Data Receive Event Function...
: : : : void __fastcall TmainForm::OnDataReceive(TObject *Sender, short MAdr,
: : : : short Adr, short DataL, short DataH)
: : : : {
: : : : RD[0] = MAdr;
: : : : RD[1] = Adr;
: : : : RD[2] = DataL;
: : : : RD[3] = DataH;
: : : :
: : : : char str[24];
: : : : sprintf(str, "Receive : %02X, %02X, %02X, %02X", RD[0], RD[1], RD[2], RD[3]);
: : : : Application->MessageBoxA(str, MB_OK);
: : : :
: : : : //// Timer over Error....
: : : : if(MAdr == -1){
: : : : Edit1->Text = "TimeOver!";
: : : : }
: : : : }
: : : :
: : : :
: : : : 뭔가 다른 설정이 필요할 까요???