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:
- Add SSL támogatja a biztonságos kapcsolatot.
- 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
Ábra. 2 elindított programeljá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
Ábra. 4 - E-mail szkennelés gmail.com
Á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.