Zpět na hlavní stránku
English version Produkty Novinky Software Podpora Ceník Mapa serveru

Delphi Charon 1 - Příklad komunikace a NVT

Příklad jednoduché komunikace s obecným TCP/IP zařízením v Borland Delphi 5 demonstruje jednoduchý klientský terminál vybavený základními příkazy NVT (Network Virtual Terminal) a rozšířením pro I/O funkce.

Jedná se o velmi jednoduchou aplikaci, která má pouze demonstrativní účely a lze ji plně využít pro tvorbu vašich vlastních aplikací. Pozornost je zaměřena hlavně na korektní řešení síťové části, včetně detekce uzavření spojení ze strany serveru.


Chcete-li ve vaší aplikaci ovládat I/O piny pomocí NVT (v příkladu použito jako ovládání LED a zpětné čtení "svítí" / "nesvítí"), oceníte tento příklad, protože nebudete muset podrobně studovat NVT dokumentaci!

Popis metod zdrojového kódu

  • procedure ConnectBtnClick(Sender: TObject);
    (* Tato rutina je volána tlačítkem Connect/Disconnect a otevírá, příp. uzavírá TCP/IP spojení s Charonem. *)
  • procedure ClientSocketConnect(Sender: TObject; Socket: TCustomWinSocket);
    (* Rutina je tzv. call-back, je volána programem po navázání úspěšného spojení. Povoluje některá tlačítka, např. Send text a posílá Charonu příkaz <AYT>. *)
  • procedure ClientSocketError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer);
    (* Call-back rutina, která loguje na obrazovku chyby v TCP/IP spojení. *)
  • procedure AYTBtnClick(Sender: TObject);
    (* Metoda, posílající do Charonu příkaz <AYT>. *)
  • procedure ClientSocketRead(Sender: TObject; Socket: TCustomWinSocket);
    (* Rutina obsluhující data přijatá z Charonu. Zpracovává NVT odpovědi, loguje přijatý text na obrazovku apod. *)
  • procedure WriteLEDBtnClick(Sender: TObject);
    (* Metoda volaná při změně některého z checkboxů (zaškrtávátek) I/O, posílá tyto změny do Charonu. *)
  • procedure FormClose(Sender: TObject; var Action: TCloseAction);
    (* Call-back metoda volaná při ukončení aplikace. Stará se o uzavření TCP/IP spojení a "závěrečný úklid". *)
  • procedure ClearBtnClick(Sender: TObject);
    (* Tato metoda smaže okno záznamníku (log window). *)
  • procedure ReadLEDBtnClick(Sender: TObject);
    (* Metoda žádající Charon o zaslání stavu vstupů (reakcí je zobrazení stavu vstupů osmi LED diodami v okně programu). *)
  • procedure SendBtnClick(Sender: TObject);
    (* Metoda posílá text ze vstupního řádku na sériový výstup Charonu. *)
  • procedure FormCreate(Sender: TObject);
    (* Call-back metoda inicializující okno aplikace při jejím startu. *)
  • procedure FormDestroy(Sender: TObject);
    (* Call-back metoda volaná při ukončení aplikace. Ruší hlavní okno programu. *)
  • procedure CloseBtnClick(Sender: TObject);
    (* Metoda reagující na tlačítko Close (ukončit program). *)
  • procedure Label4Click(Sender: TObject);
    procedure Label6Click(Sender: TObject);
    procedure Label7Click(Sender: TObject);

    (* Tyto tři metody reagují otevřením okna WWW browseru na stránkách HW Group. *)
  • procedure ClientSocketDisconnect(Sender: TObject; Socket: TCustomWinSocket);
    (* Call-back rutina, která je volána při uzavření spojení. Zakazuje některá tlačítka apod. *)
  • procedure HandleButtons( Active : boolean );
    (* Pomocná rutina, starající se o povolení tlačítek dle stavu, v němž se program nachází. *)

 

Download zdrojových kódů a spustitelného programu

  • dphi_ch1com_example.zip
       \MainForm.pas, MainForm.dfm, Charon.dpr a ostatní zdrojové soubory
       \Program\Charon.exe, Charon.ini


  Main page Products Support & Download Pricelist Contacts SiteMap  


HW group - Prague - Czech republic - Europe