1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
| unit MainBackoffice;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, IPPeerClient,
IPPeerServer, System.Tether.Manager, System.Tether.AppProfile,
FMX.Controls.Presentation, FMX.StdCtrls, FireDAC.Stan.Intf,
FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf,
FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys,
FireDAC.Phys.SQLite, FireDAC.Phys.SQLiteDef, FireDAC.Stan.ExprFuncs,
FireDAC.Phys.SQLiteWrapper.Stat, FireDAC.FMXUI.Wait, Data.DB,
FireDAC.Comp.Client, FMX.Layouts, FMX.ListBox, FMX.Memo.Types, FMX.ScrollBox,
FMX.Memo;
type
TForm1 = class(TForm)
btnSend: TButton;
TetheringManager1: TTetheringManager;
TetheringAppProfile1: TTetheringAppProfile;
btnConnect: TButton;
FDConnection1: TFDConnection;
Memo1: TMemo;
procedure btnSendClick(Sender: TObject);
procedure btnConnectClick(Sender: TObject);
procedure TetheringManager1EndManagersDiscovery(const Sender: TObject;
const ARemoteManagers: TTetheringManagerInfoList);
procedure TetheringAppProfile1BeforeSendStream(const Sender: TObject;
const AInputStream, AOutputStream: TStream);
procedure TetheringAppProfile1AfterReceiveStream(const Sender: TObject;
const AInputStream, AOutputStream: TStream);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
procedure TForm1.btnConnectClick(Sender: TObject);
begin
TetheringManager1.DiscoverManagers(2000,'192.168.1.0');
end;
procedure TForm1.btnSendClick(Sender: TObject);
var
StreamToSend : TMemoryStream;
const
DBName = 'D:\serge\Documents\Embarcadero\Studio\Projets\Athenes\FMX\VERON\dbtest1.db';
begin
StreamToSend := TMemoryStream.Create;
try
StreamToSend.LoadFromFile(DBName);
StreamToSend.Position := 0;
TetheringAppProfile1.Resources.FindByName('SqliteDB').Value := StreamToSend;
finally
// Don't free StreamToSend ?
end;
end;
procedure TForm1.TetheringAppProfile1AfterReceiveStream(const Sender: TObject;
const AInputStream, AOutputStream: TStream);
begin
Memo1.Lines.Add('received '+AOutputStream.Size.ToString+' octets');
end;
procedure TForm1.TetheringAppProfile1BeforeSendStream(const Sender: TObject;
const AInputStream, AOutputStream: TStream);
begin
Memo1.Lines.Add('Sending '+AInputStream.Size.ToString+' octets');
end;
procedure TForm1.TetheringManager1EndManagersDiscovery(const Sender: TObject;
const ARemoteManagers: TTetheringManagerInfoList);
var i : integer;
begin
memo1.lines.add(ARemoteManagers.count.ToString);
for i:=0 to ARemoteManagers.count-1 do
begin
Memo1.Lines.Add(ARemoteManagers[i].ManagerAdapters);
end;
end;
end. |
Partager