MyBooks.club
Все категории

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

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Сергей Парижский - Delphi. Учимся на примерах. Жанр: Программирование издательство -,. Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
Delphi. Учимся на примерах
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
17 сентябрь 2019
Количество просмотров:
255
Читать онлайн
Сергей Парижский - Delphi. Учимся на примерах

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

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

Delphi. Учимся на примерах читать онлайн бесплатно

Delphi. Учимся на примерах - читать книгу онлайн бесплатно, автор Сергей Парижский

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_16Client, а файлы проекта и исполняемый файл серверной программы — в папке Chapter_16Server.

Глава 17

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

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

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

Разработка формы

Для того чтобы отправить SMS, необходимо знать номер телефона, на который мы будем отправлять сообщение, оператора этого номера и, естественно, — само отправляемое сообщение.

Создайте новый проект Delphi и присвойте форме заголовок SMS-sender (свойство Caption). Разместите на форме компонент Label категории Standard и присвойте его свойству Caption значение Оператор:. Справа от него разместите компонент ComboBox (раскрывающийся список) категории Standard и измените его свойства согласно табл. 17.1.

Примечание

Свойство ComboBox.Items — это список строк, редактируемый в специальном окне, которое открывается по двойному щелчку мышью в соответствующем поле инспектора объектов.

Таблица 17.1. Свойства компонента ComboBox

Свойство Значение Пояснение Name oper Новое имя компонента Text <Выберите оператора> Текст в поле Items Джинс(066) UMC(050) Киевстар(067) Перечень операторов, на которых мы будем отправлять SMS

Примечание

В данном примере используется перечень мобильных операторов, действующих на территории Украины. Если вы живете в другой стране, используйте собственный список операторов.

Под первой меткой разместите еще один компонент label, присвоив его свойству caption значение Номер:. Справа от него разместите компонент Edit категории Standard и назовите его tel (свойство Name).

Ниже этих двух компонентов разместите компонент Label с текстом Сообщение: (свойство Caption). Под ним разместите компонент Memo категории Standard, присвоив ему имя sms. Для него можно поставить ограничение на ввод 160 символов, поскольку мобильные операторы обычно разрешают отправлять с Web-сайта сообщения длиной не больше 160 символов. Для того чтобы установить это ограничение, присвойте свойству sms.MaxLength значение 160.

Для отображения количества символов, введенных в поле sms, разместите под memo-полем компонент Label и измените его свойства согласно табл. 17.2.

Таблица 17.2. Свойства компонента Label для отображения длины сообщения

Свойство Значение Пояснение Name kolvo Новое имя компонента Caption 0 Надпись метки Font.Color clRed Цвет надписи — красный Font.Size 18 Размер шрифта

В правом нижнем углу формы разместите кнопку (компонент Button категории Standard), присвоив ее свойству Caption значение Отправить.

Для отправки SMS нам понадобится компонент для передачи электронной почты через SMTP. Такой компонент есть на вкладке FastNet и называется он NMSMTP. Для того чтобы установить некоторые настройки, у вас должен быть собственный адрес электронной почты. Бесплатных почтовых серверов в Internet предостаточно, так что с этим проблем возникнуть не должно.

В рассматриваемом примере будет фигурировать адрес электронной почты автора ( [email protected]). При желании, все перечисленные ниже настройки, конечно же, можно заменить собственными.

В свойстве NMSMTP1.Host следует указать smtp-сервер. Для yandex.ru это свойство должно принять значение smtp.yandex.ru. В свойстве UserID необходимо указать логин отправителя — указываем heel-adm. Теперь разверните свойство PostMessage и измените значение вложенного свойства FromAddress на [email protected], a FromName — на heel-adm. Значение свойства Port измените на 25.

Полученная в результате форма должна соответствовать рис. 17.1.

Рис. 17.1. Форма программы для отправки SMS

Разработка программного кода

По нажатию кнопки Отправить будет выполняться следующий код:

procedure TForm1.Button1Click(sender: TObject);

var

 num: string; //адрес получателя

begin

 NMSMTP1.PostMessage.Body.Clear; //очищаем текст письма

 //помещаем SMS в текст письма

 NMSMTP1.PostMessage.Body.AddStrings(sms.Lines);

 //проверяем, какого оператора выбрал пользователь

 case oper.ItemIndex of

 0: num:= '38066'+tel.text+'@sms.jeans.com.ua'; //Джинc

 1: num:= '38050'+tel.Text+'@sms.umc.com.ua'; //UMC

 2: num:= '38067'+tel.Text+'@sms.kyivstar.net'; //Киевстар

 end;

 NMSMTP1.PostMessage.ToAddress.Add(num); //адрес получателя

 NMSMTP1.Connect; //соединяемся с сервером

 NMSMTP1.SendMail; //отправляем почту

 NMSMTP1.Disconnect; //отсоединяемся от сервера

 //выводим сообщение об успешной отправке

 ShowMessage('Сообщение отправлено!' + num);

end;

Сначала мы проверяем: какого оператора выбрал пользователь. Если "Джинc", то добавляем перед номером телефона "38066", если "UMC", то добавляем "38050", для "Киевстар" — "38067".

После того как мы узнали номер оператора, добавляем его к введенному номеру телефона и затем добавляем все это к адресу сервера оператора. Например, для отправки на номер "Джинc" 1565394, делаем связку "38066"+"1565394"+"@sms.jeans.com.ua".

После того как получен электронный адрес для отправки SMS, мы соединяемся с сервером, отправляем письмо и отсоединяемся. Если никаких ошибок не произошло, то мы получим сообщение об успешной отправке.

Для того чтобы пользователь видел, сколько символов он ввел, и мог контролировать длину SMS, реализуем подсчет символов при вводе сообщение. Для этого следует обработать событие sms. OnChange:

procedure TForm1.smsChange(Sender: TObject);

begin

 //количество введенных символов

 kolvo.Caption:= IntToStr(Length(sms.Text));

end;

Количество введенных символов отображается в метке kolvo. Программа отправки сообщений SMS в действии представлена на рис. 17.2.

Рис. 17.2. Программа отправки SMS через Internet в действии

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

Полный код модуля программы отправки SMS через Internet представлен в листинге 17.1.

Листинг 17.1. Модуль программы отправки SMS через Internet

unit Unit1;


interface


uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Psock, NMsmtp;


type TForm1 = class(TForm)

 oper: TComboBox;

 sms: TMemo;

 Label1: TLabel;

 Label2: TLabel;

 tel: TEdit;

 Label3: TLabel;

 Button1: TButton;

 NMSMTP1: TNMSMTP;

 kolvo: TLabel;

 procedure Button1Click(Sender: TObject);

 procedure smsChange(Sender: TObject);

private

 { Private declarations }

public

 { Public declarations }

end;


var

 Form1: TForm1;


implementation

{$R *.dfm}


procedure TForm1.Button1Click(sender: TObject);

var

 num: string; //адрес получателя

begin

 NMSMTP1.PostMessage.Body.Clear; //очищаем текст письма

 //помещаем SMS в текст письма

 NMSMTP1.PostMessage.Body.AddStrings(sms.Lines);

 //проверяем, какого оператора выбрал пользователь


Сергей Парижский читать все книги автора по порядку

Сергей Парижский - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mybooks.club.


Delphi. Учимся на примерах отзывы

Отзывы читателей о книге Delphi. Учимся на примерах, автор: Сергей Парижский. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.