Delphi - e-mailek (2. rész)

Feladat. Empower mail ellenőrzőt, és adjuk hozzá a képessége, hogy ellenőrizze az e-mail, az SSL (Secure Sockets Layer - szintjének Secure Sockets Layer). Így határozza meg a feladatokat, amelyek bővül az e-mail szkennelő szoftver:

  1. Add SSL támogatja a biztonságos kapcsolatot.
  2. Ellenőrizze a működését a levelező at gmail.com (használ SSL) és ukr.net (titkosítás nélkül)

Toolkit. Delphi XE, alkatrészek INDY v10, libeay32.dll könyvtárak és ssleay32.dll
megoldás:
Előző rész:
E-mail szkennelés eszközök Delphi - 1. rész
Az első részben hoztunk létre egy program, amely ellenőrzi a leveleket közvetlenül támogatása nélkül titkosítást. Ebben a részben fogjuk integrálni támogatást titkosítást. Kezdjük végrehajtani.

Annak érdekében, hogy képes legyen használni az SSL-kapcsolat szükséges, a projekt mappát másolja a két fájlt és libeay32.dll ssleay32.dll. ők már végrehajtották a funkcionalitást, hogy szükségünk van. libeay32.dll és ssleay32.dll könyvtár letölthető itt.
Nyisson meg egy projekt jött létre az első rész. Nyissa meg a fő formája, és mozgassa rá IdSSLIOHandlerSocketOpenSSL alkatrész (1.). Szintén mozog formájában néhány további ellenőrzések és testre azokat a táblázat szerint. 1.

1. ábra kiválasztása komponens eszközpaletta

Állítsa be a következő lehetőségek közül:

Ennek eredményeként, kapjuk az alábbi formája 2. ábra, ábra. 3

Delphi - e-mailek (2. rész)

Delphi - e-mailek (2. rész)
Ábra. 2 elindított program

eljárás TfrmMain. SetupSSL;
kezdődik
ha chkUseSSL. Jelölve, akkor // ha a lehetőséget, hogy használja az SSL
kezdődik
IdPOP3. IOHandler. = SSLHandler; // állítsa az SSL Handler IdPOP3
IdPOP3. UseTLS. = UtUseImplicitTLS; // használni implicit TSL
// típusának beállítása SSL
ügy cbSSLType. ItemIndex a
0. SSLHandler. SSLOptions. Módszer. = SslvSSLv2;
1. SSLHandler. SSLOptions. Módszer. = SslvSSLv23;
2. SSLHandler. SSLOptions. Módszer. = SslvSSLv3;
3. SSLHandler. SSLOptions. Módszer. = SslvTLSv1;
más
emelni Kivétel. teremt # 40; „Válassza ki a SSL” # 41; ;
végén;
vég
más
kezdődik
IdPOP3. IOHandler. = Nil; // ha nem használ SSL - állítsa az összes alapértelmezett
IdPOP3. UseTLS. = UtNoTLSSupport;
végén;
végén;

magán
...
funkció CheckMail # 40; IP. TIdPOP3; Felhasználó. Pass. Host. string; Port. egész szám # 41;. string;
eljárás SetupSSL;
nyilvános

Hogy mi eljárás SetupSSL szerzett a meglévő kód - szükség van hozzá egy hívást, hogy CheckMail funkció, amit írt az első részben.

...
IP. Port. = Port; // port
SetupSSL; // SSL kapcsolat beállítása
IP. Kapcsolatba; // Csatlakozás
...

Aztán fut, és ellenőrizze a teljesítményt.
Mi ellenőrizze az e-mail at gmail.com az alábbi beállításokkal:

POP3: pop.gmail.com
Port: 995

Delphi - e-mailek (2. rész)

Ábra. 4 - E-mail szkennelés gmail.com

Delphi - e-mailek (2. rész)

Ábra. 5 - e-mailek ukr.net

PS. mail ellenőrzési programot a Delphi most dolgozik SSL támogatás. Van egy bizonytalanság. A program teljes számát mutatja a betűk, hanem a számát újakat. Ha időm engedi, bemutatják, hogyan lehet ellenőrizni a az új üzenetek száma.
libeay32.dll és ssleay32.dll könyvtár letölthető itt.
program forráskódját letölthető GitHub

Kapcsolódó témák:

Jó estét, kérem, mondja meg állandóan a hiba „Kapcsolódási hiba! Nem sikerült betölteni SSL könyvtár.” Hogyan tudom kijavítani?

Ne menj. Delphi esküszik a IdPOP3.UseTLS: = utUseImplicitTLS;
Mondja a be nem jelentett azonosítója: UseTLS. Mit kell tenni?
Két dll letöltött egy mappát a projekt.

Lehetséges használ egy másik változata kompoentov változata, keresse meg ott, hogy más alkalmas ingatlan.

Kapcsolódó cikkek