unit FirstSampleClientMain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uRORemoteService, uROClient, uROWinInetHttpChannel, uROBinMessage, StdCtrls, FirstSample_Intf; type TFirstSampleClientMainForm = class(TForm) ROBinMessage: TROBinMessage; ROWinInetHTTPChannel: TROWinInetHTTPChannel; RORemoteService: TRORemoteService; eNickname: TEdit; CheckButton: TButton; GroupBox1: TGroupBox; eFullname: TEdit; eFullname2: TEdit; eNickname2: TEdit; NamesBox: TListBox; GetButton: TButton; GroupBox2: TGroupBox; GroupBox3: TGroupBox; Label1: TLabel; Label3: TLabel; VerifyButton: TButton; procedure GetButtonClick(Sender: TObject); procedure CheckButtonClick(Sender: TObject); procedure VerifyButtonClick(Sender: TObject); private fFirstService: IFirstSampleService; public constructor Create(aOwner: TComponent); override; end; var FirstSampleClientMainForm: TFirstSampleClientMainForm; implementation uses Math, StrUtils; {$R *.dfm} constructor TFirstSampleClientMainForm.Create(aOwner: TComponent); begin inherited; fFirstService := (RORemoteService as IFirstSampleService); end; procedure TFirstSampleClientMainForm.GetButtonClick(Sender: TObject); begin NamesBox.Items.CommaText := fFirstService.Nicknames(eFullname.Text); end; procedure TFirstSampleClientMainForm.CheckButtonClick(Sender: TObject); var isFound: Boolean; fullname: string; begin isFound := fFirstService.CheckName(eNickname.Text); fullname := IfThen(isFound,''''+fFirstService.FullNames(eNickname.Text)+'''','not found!'); ShowMessage(Format('''%s'' is %s',[eNickname.Text,fullname])); end; procedure TFirstSampleClientMainForm.VerifyButtonClick(Sender: TObject); var isFound: Boolean; begin isFound := fFirstService.VerifyName(eNickname2.Text, eFullname2.Text); ShowMessage(IfThen(isFound, 'Verified!', 'Not verified!')); end; end.