Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Код клиентской программы

unit mainform;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ScktComp, ExtCtrls, TeEngine, Series, TeeProcs, Chart;

type

TForm1 = class(TForm)

cServ: TButton;

dServ: TButton;

servPort: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

ClientSocket: TClientSocket;

logClient: TMemo;

ServerIP: TComboBox;

addIP: TButton;

Label6: TLabel;

T1_ob: TEdit;

Label7: TLabel;

T2_ob: TEdit;

Label8: TLabel;

K_ob: TEdit;

Label9: TLabel;

Button2: TButton;

Nastr: TEdit;

Label10: TLabel;

procedure FormCreate(Sender: TObject);

procedure addIPClick(Sender: TObject);

procedure cServClick(Sender: TObject);

procedure dServClick(Sender: TObject);

procedure ClientSocketError(Sender: TObject; Socket: TCustomWinSocket;

ErrorEvent: TErrorEvent; var ErrorCode: Integer);

procedure ClientSocketLookup(Sender: TObject;

Socket: TCustomWinSocket);

procedure ClientSocketConnecting(Sender: TObject;

Socket: TCustomWinSocket);

procedure ClientSocketConnect(Sender: TObject;

Socket: TCustomWinSocket);

procedure ClientSocketDisconnect(Sender: TObject;

Socket: TCustomWinSocket);

procedure ClientSocketRead(Sender: TObject;

Socket: TCustomWinSocket);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

 

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

dServ. Enabled:=false;

НЕ нашли? Не то? Что вы ищете?

cServ. Enabled:=true;

servPort. Enabled:=true;

serverIP. Enabled:=true;

Nastr. Enabled:=false;

ServerIP. Items. LoadFromFile('ipserv. cfg');

form1.Caption:='Client status [:: отключен ::]';

end;

procedure TForm1.addIPClick(Sender: TObject);

begin

if serverIP. Text <> '' then

begin

serverIP. Items. Add(serverIP. Text);

serverIP. Items. SaveToFile('ipserv. cfg');

end;

end;

procedure TForm1.cServClick(Sender: TObject);

begin

if serverIP. Text = '' then

begin

MessageBox(0,'Вы не ввели IP адрес сервера. Попробуйте еще раз.', 'Attention, please!',0);

exit;

end;

dServ. Enabled:= not dServ. Enabled;

cServ. Enabled:= not cServ. Enabled;

servPort. Enabled:= not servPort. Enabled;

serverIP. Enabled:= not serverIP. Enabled;

//--- Устанавливаем свойства Host и Port

if ClientSocket. Active then

ClientSocket. Close;

ClientSocket. Host := serverIP. Text;

ClientSocket. Port := StrToInt(servPort. text);

//--- Пытаемся соединиться

ClientSocket. Open;

end;

procedure TForm1.dServClick(Sender: TObject);

begin

dServ. Enabled:= not dServ. Enabled;

cServ. Enabled:= not cServ. Enabled;

servPort. Enabled:= not servPort. Enabled;

serverIP. Enabled:= not serverIP. Enabled;

//--- Закрываем соединение (если оно установлено)}

if ClientSocket. Active then

ClientSocket. Close;

end;

 

procedure TForm1.ClientSocketError(Sender: TObject;

Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;

var ErrorCode: Integer);

begin

//--- Если произошла ошибка, выводим ее код в logClient}

logClient. Lines. Add(TimeToStr(Time)+'<client> Socket error ('+IntToStr(ErrorCode)+')');

end;

procedure TForm1.ClientSocketLookup(Sender: TObject;

Socket: TCustomWinSocket);

begin

//--- Сообщаем о том, что идет поиск сервера

logClient. Lines. Add(TimeToStr(Time)+'<client> идет поиск сервера...');

end;

procedure TForm1.ClientSocketConnecting(Sender: TObject;

Socket: TCustomWinSocket);

begin

//--- соединяемся...

logClient. Lines. Add(TimeToStr(Time)+'<client> идет соединение с сервером...');

end;

procedure TForm1.ClientSocketConnect(Sender: TObject;

Socket: TCustomWinSocket);

begin

//--- соединились

form1.Caption:='Client status [:: подключен ::]';

logClient. Lines. Add(TimeToStr(Time)+'<client> соединение с сервером прошло успешно.');

end;

procedure TForm1.ClientSocketDisconnect(Sender: TObject;

Socket: TCustomWinSocket);

begin

//--- отсоединились

MessageBox(0,'Произошло отключение от сервера. Попытайте свои силы в другой раз.', 'Соединение потеряно...',0);

form1.Caption:='Client status [:: отключен ::]';

logClient. Lines. Add(TimeToStr(Time)+'<client> соединение с сервером разорвано...');

dServ. Enabled:=false;

cServ. Enabled:=true;

servPort. Enabled:=true;

serverIP. Enabled:=true;

end;

procedure TForm1.ClientSocketRead(Sender: TObject;

Socket: TCustomWinSocket);

var s: string;

begin

 

s := Socket. ReceiveText;

Nastr. Text:=s;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

if (K_ob. Text = '') or (T1_ob. Text = '') or (T2_ob. Text = '') then

MessageBox(0,'Вы не ввели апараметры объекта', 'Attention, please!',0)

else

ClientSocket. Socket. SendText(K_ob. Text+';'+T1_ob. Text+';'+T2_ob. Text+';');

end;

end.

Код серверной программы

unit mainform;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ScktComp, Sockets, ExtCtrls;

type

TForm1 = class(TForm)

ServerStart: TButton;

ServerStop: TButton;

LogList: TMemo;

ServerSocket: TServerSocket;

ServerPort: TEdit;

Label1: TLabel;

ClientsList: TMemo;

procedure FormCreate(Sender: TObject);

procedure ServerStartClick(Sender: TObject);

procedure ServerStopClick(Sender: TObject);

procedure ServerSocketClientConnect(Sender: TObject;

Socket: TCustomWinSocket);

procedure ServerSocketClientRead(Sender: TObject;

Socket: TCustomWinSocket);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

socketraddr: array [0..666] of string;

client_num: integer;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

ServerStart. Enabled:=true;

ServerStop. Enabled:=false;

ServerPort. Enabled:=true;

end;

procedure TForm1.ServerStartClick(Sender: TObject);

begin

//--- Устанавливаем порт

if ServerPort. Text = '' then

begin

MessageBox(0,'Вы не ввели порт сервера. Попробуйте еще раз.', 'Attention, please!',0);

exit;

end;

ServerSocket. Port := StrToInt(serverPort. Text);

ServerStart. Enabled:= not ServerStart. Enabled;

ServerStop. Enabled:= not ServerStop. Enabled;

ServerPort. Enabled:= not ServerPort. Enabled;

 

Form1.Caption:='Server status [:: запущен ::]';

Loglist. Lines. clear;

Loglist. Lines. Add(TimeToStr(Time)+'<server> сервер запущен');

//--- Запускаем сервер

ServerSocket. Open;

end;

procedure TForm1.ServerStopClick(Sender: TObject);

begin

ServerStart. Enabled:= not ServerStart. Enabled;

ServerStop. Enabled:= not ServerStop. Enabled;

ServerPort. Enabled:= not ServerPort. Enabled;

if ServerSocket. Active then

ServerSocket. Close;

//--- Записываем результаты работы в файл

Form1.Caption:='Server status [:: остановлен ::]';

Loglist. Lines. Add(TimeToStr(Time)+'<server> сервер остановлен');

Loglist. Lines. SaveToFile('last_start. log');

Loglist. Lines. Add(TimeToStr(Time)+'<server> данные о последнем запуске записаны в файл last_start. log');

end;

procedure TForm1.ServerSocketClientConnect(Sender: TObject;

Socket: TCustomWinSocket);

begin

//--- Кто-то присоединился или отсоединился?

ClientsList. Lines. Clear;

if ServerSocket. Socket. ActiveConnections>=1 then

begin

for client_num := 0 to ServerSocket. Socket. ActiveConnections-1 do

begin

socketraddr[client_num]:=ServerSocket. Socket. Connections[client_num].RemoteAddress;

ClientsList. Lines. Add(TimeToStr(Time)+'<server> Произошло подключение с IP='+socketraddr[client_num]);

end;

end;

end;

procedure TForm1.ServerSocketClientRead(Sender: TObject;

Socket: TCustomWinSocket);

var s, clientIP: string;

K, T1, T2: Double;

begin

clientIP:=Socket. RemoteAddress;

s := Socket. ReceiveText;

for client_num := 0 to ServerSocket. Socket. ActiveConnections-1 do

if clientIP = socketraddr[client_num] then

begin

Loglist. Lines. Add(TimeToStr(Time)+'<server> Поступили следующие параметры передаточной функции объекта управления');

K:=StrToFloat(Copy(s,1,Pos(';',s)-1));

Delete(s,1,Pos(';',s));

Loglist. Lines. Add('K='+FloatToStr(K));

T1:=StrToFloat(Copy(s,1,Pos(';',s)-1));

Delete(s,1,Pos(';',s));

Loglist. Lines. Add('T1='+FloatToStr(T1));

T2:=StrToFloat(Copy(s,1,Pos(';',s)-1));

Delete(s,1,Pos(';',s));

Loglist. Lines. Add('T2='+FloatToStr(T2));

if (K = 0) or (T2 = 0) then

ServerSocket. Socket. Connections[client_num].SendText('K и T2 должны быть отличны от нуля')

else if T1=0 then

ServerSocket. Socket. Connections[client_num].SendText('T1=0 нет смысла')

else

ServerSocket. Socket. Connections[client_num].SendText('Kp='+FloatToStr(T1/(2*K*T2))+' Ti='+FloatToStr(T1));

end;

end;

end.