RS232 w Builderze

0

Mam problem: potrzebuje nawiazac dwustronna komunikacje z urzadzenie dzialajacym na RS232 w C++ Builder. Prosze o pomoc. Bardzo mile widziany przykladowy fragment kodu, realizujacego taka transmisje. Z gory wielkie dzieki za pomoc.

0

Jak zwykle dróg jest kilka aby mieć dostęp do portu RS232 w Builderze. Ja korzystałem z dwóch. Pierwsza to kontrolka ActiveX MSCOMM32.ocx (produkt Microsoftu dostępne w pakiecie visual studio) można ją zainstalować w builderze bez problemu (opis instalacji poniżej). Druga metoda to skorzystanie z komponentu w pakiecie TMS Async32 (kiedyś był darmowy, nie wiem jak teraz), komponent nazywa się VaComm, na tej palecie komponentów dostępne są inne rewelacyjne komponenty min. gotowe protokoły XModem, YModem, ZModem i wiele innych. Z wykorzystaniem tej drugiej metody (VaComm+YModem) stworzyłem jakieś dwa lata temu usługę systemową do wymiany plików XML pomiędzy dwoma dużymi systemami informatycznymi, działa bez zarzutu radzi sobie nawet z bardzo dużymi plikami. MSCOMM32 to również sprawdzona metoda, jedyna wada to konieczność dystrybucji i rejestrowania tej kontrolki wraz z naszą aplikacją na komputerze klienta. Jeżeli chodzi o przykłady dot. obu metod to polecam google jest tego mnóstwo. Trzecia metoda to oczywiście WinApi, ale nie polecam jej bo to straszna rzeźnia.

Opis instalacji MSCOMM32.ocx (Win 2K/XP)

  1. zdobycie pliku (internet lub pakiet visual studio, mogę wysłać na emila)
  2. przegranie pliku do '{windows}/system32'
  3. w w/w katalogu wydajemy polecenie 'regsvr32 MSCOMM32.ocx'
  4. uruchamiamy buildera i menu górne: Component->Import ActiveX Control->Add i zaznaczamy plik w w/w lokalizacji następnie przycisk Install i po zabawie. W builderze na zakładce ActiveX pojawi się gotowy do użycia komponent.
0

Można jeszcze wykorzystać ZLPortIO

0

Lub komponent Cport3.0.

Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1