Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Delphi. Учимся Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 25

Автор Π‘Π΅Ρ€Π³Π΅ΠΉ ΠŸΠ°Ρ€ΠΈΠΆΡΠΊΠΈΠΉ

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", "ДТинс", "ΠšΠΈΠ΅Π²ΡΡ‚Π°Ρ€"…)

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΠΎΡ€ΠΌΡ‹

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ 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);

 //провСряСм, ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π²Ρ‹Π±Ρ€Π°Π» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ