Сергей Парижский - Delphi. Учимся на примерах

Здесь есть возможность читать онлайн «Сергей Парижский - Delphi. Учимся на примерах» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Киев, Год выпуска: 2005, ISBN: 2005, Издательство: МК-Пресс, Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Delphi. Учимся на примерах: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Delphi. Учимся на примерах»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Данная книга — продолжение предыдущей книги автора, "Delphi. Только практика". Также как и в "Delphi. Только практика", в данном издании подробно рассмотрены программы для сетей, различные шуточные программы, простые игрушки, некоторые полезные приложения, разработка приложений в стиле Windows XP. В частности, здесь можно найти такие примеры как бесплатная отправка SMS, FTP-клиент, простое шифрование, CGI-сценарии и многое другое. Описаны методы работы с системным реестром Windows и INI-файлами, а также некоторые важные аспекты программирования на системном уровне с применением функций Windows API. Для облегчения понимания программ каждый пример содержит комментарии сложных строк кода.
Книга ориентирована как на тех, кто уже имеет опыт создания приложений в Delphi, так и на начинающих программистов. Для начинающих пользователей Delphi в конце книги добавлено приложение с описанием синтаксиса языка программирования Object Pascal.

Delphi. Учимся на примерах — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Delphi. Учимся на примерах», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

SetCursorPos(StrToInt(x), StrToInt(у));

end;

При получении текста мы считываем в отдельные переменные значение координат указателя по X и по Y. Затем изменяем координаты на те, которые только что получили от клиента.

Теперь программа полностью готова, и для того чтобы протестировать ее, необходимо иметь хотя бы два компьютера, объединенные в локальную сеть или подключенные к Internet.

Полный исходный код модулей

Полный код модуля серверной программы представлен в листинге 16.1.

Листинг 16.1. Модуль серверной программы

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ScktComp;

type TForm1 = class(TForm)

ServerSocket1: TServerSocket;

procedure FormDestroy(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure ServerSocketlClientRead(Sender: TObject; Socket: TCustomWinSocket);

procedure FormPaint(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormDestroy(Sender: TObject);

begin

ServerSocket1.Active:= False; //отключаем сервер

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

ServerSocket1.Active:= True; //активизировать сервер

end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket);

var

str, x, y: string; //полученный текст и координаты

//указателя по X и по Y

i, j: integer; //счетчики циклов

begin

//обнуляем координаты курсора

х := ' ';

у := ' ';

str:= Socket.ReceiveText; //полученный от клиента текст

for i:=1 to Length(str) do begin

if str[i] <> '_' then x:= x + str[i]; //координаты по х

if str[i] = '_' then Break; //разделитель между

//координатами указателя

end;

for j:= i+1 to Length(str) do у:= y+str[j]; //координаты по у

//устанавливаем новые координаты указателя

SetCursorPos(StrToInt(x), StrToInt(у));

end;

procedure TForm1.FormPaint(Sender: TObject);

begin

Form1.Hide;

end;

end.

Полный код модуля клиентской программы представлен в листинге 16.2.

Листинг 16.2. Модуль клиентской программы

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ScktComp, StdCtrls, ExtCtrls;

type TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

Client: TClientSocket;

Timer1: TTimer;

port: TEdit;

ip: TEdit;

Label1: TLabel;

Label2: TLabel;

procedure Button2Click(Sender: TObject);

procedure FormDestroy(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure ClientConnect(Sender: TObject; Socket: TCustomWinSocket);

procedure ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);

begin

Timer1.Enabled:= False;//выключаем таймер

Client.Close; //закрываем соединение

Client.Active:= False; //отключаемся от сервера

end;

procedure TForm1.FormDestroy(Sender: TObject);

begin

Client.Close; //закрываем соединение

Client.Active:=False; //отключаемся от сервера

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

Client.Port:= StrToInt(port.Text); //считываем порт

Сlient.Address:= ip.text; //считываем ip-адрес сервера

Client.Active:= True; //соединяемся

Timer1.Enabled:= True; //включаем таймер

end;

procedure TForm1.Timer1Timer(Sender: TObject);

var

cur:TPoint; //хранит координаты указателя мыши

begin

GetCursorPos(cur); //узнаем координаты указателя мыши

//отправляем данные на сервер

Client.Socket.SendText(IntToStr(cur.X) +'_' + IntToStr(cur.Y));

end;

procedure TForm1.ClientConnect(Sender: TObject; Socket: TCustomWinSocket);

begin

ShowMessage('Connected!'); //показать сообщение

end;

procedure TForml.ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket);

begin

ShowMessage('Disconnected!'); //сообщение при отсоединении

end;

end.

⊚ Все файлы проекта и исполняемый файл клиентской программы находятся на прилагаемом к книге компакт-диске в папке Chapter_16\Client, а файлы проекта и исполняемый файл серверной программы — в папке Chapter_16\Server.

Глава 17

Бесплатная отправка SMS через Internet

Постановка задачи

Разработать программу для бесплатной отправки SMS через Internet. Осуществлять отправку через сайты популярных украинских операторов ("UMC", "Джинс", "Киевстар"…)

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Delphi. Учимся на примерах»

Представляем Вашему вниманию похожие книги на «Delphi. Учимся на примерах» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Delphi. Учимся на примерах»

Обсуждение, отзывы о книге «Delphi. Учимся на примерах» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x