![]()
LE CONTROLE dsSOCKET: CREER UNE
APPLICATION MAIL SMTP
Introduction
Interface Application Cliente
Connexion
Serveur Prêt
Envoi de l'e-mai!
Conclusion
Téléchargement
dsSocket est un contrôle Winsock (Windows Sockets) puissant
qui a été developpé par Dolphin Systems et permet de créer des
applications Internet (Client-Serveur).
dsSocket supporte la gestion de réseaux TCP et UDP. Nous verons
juste le côté TCP dans cet article.
Ok, ok... la même chanson du précédent article [Application IRC] :^)
Bien, nous allons voir comment créer une application MAIL SMTP, c-à-d qui envoie juste des messages e-mail. SMTP est mis pour Simple Mail Transfer Protocol.
Cetta application vous permet (uniquement) d'envoyer un email internet. Vous pouvez spécifier à qui envoyer le message, la provenance du message, le message lui-même... Le programme se connecte à un serveur mail, s'identifie et envoie le message. Certains qualifiront ce programme de mailer anonyme (en fait, le serveur ne vérifie pas l'origine du message, et se charge d'envoyer juste le mail :^)
Créez un nouveau projet vb, allez dans Composants (Ctrl+T), cliquez sur parcourir et allez dans le répertoire dans lequel vous avez dézipper vos fichiers .ocx [c'était le fichier dsSocket.zip ], sélectionnez dsSocket32.ocx et cliquez sur OK. De retour à la boîte de dialogue composants, vérifiez que la case "Dolphin Systems dsSocket TCP/IP control" est cochée et cliquez de nouveau sur OK.
Créer une feuille frmMail
L'initialisation de notre projet est terminé :^), On passe au code !
On travaille maintenant avec la feuille frmMail. Ajoutez y ces contrôles:
| Type | Nom | Description |
| TextBox | txHost | Contient l'adresse du serveur smtp |
| TextBox | txTo | L'e-mail du correspondant |
| TextBox | txFrom | L'e-mail d'origine (votre e-mail) |
| TextBox | txSubject | Zone où frapper le sujet du message |
| TextBox | txUser | Loggin - Pseudonyme... Pas important |
| TextBox | txPassword | Mot de passe... Pas important |
| CommandButton | btnSend | Bouton qui envoie le message au Serveur smtp |
| Label | txStatus | Affiche l'état de la connexion |
Les zones de texte txUser et txPassword ne sont pas importantes... le serveur n'en a pas besoin. C'est pour créer un effet de style que je les ai mis :^)
Votre application cliente doit maintenant ressemble à ceci:

Passons maintenant au code !
L'utilisateur vient de terminer le remplissage des textox, il clique sur Envoiyer:
Le serveur est prêt à recevoir les données, on met donc à jour la barre d'état.
| Private Sub dsSocket1_SendReady() 'La connection au serveur est prête pour 'le transfère de données txStatus = "Connecté au serveur Mail" End Sub |
Bien, bien... il faut maintenant envoyer l'e-mail. Pour
cela, le programme doit suivre un ordre de traitement de données spécifique. Cet ordre
est commun à tous les serveurs smtp du Net.
Rappelons que l'évènement dsSocket1_Connect() se déclenche lorsqu'un paquet
d'informations arrive en provenance du serveur.
Comme exemple de serveur smtp: smtp.ifrance.com
Afin de tester le programme, envoyez moi un mail, et je répondrai.
Assez "blablaté", au travail :^)
La connection au serveur doit respecter un ordre précis et
doit se faire en plusieurs étapes.
Voici le processus normal d'un échange:
0. Connexion au serveur
1. Reception du code 220
2. Envoi de l'instruction HELO
3. Reception du code 250
4. Envois et receptions pour les propriétés du message
5. Envoi de l'instruction DATA
6. Reception du code 354
7. Envoi de l'instruction SUBJECT
8. Reception du code 354
9. Envoi du corps du message
10. Envoi du signe . pour la fin du message
11. Reception du code 221
12. Envoi de l'instruction QUIT
13. Déconnection...
Et c tout ! Pas trop compliqué !
FONCTIONNEMENT
Le fonctionnement est trop simple, cherchez vous même :^)
TOUJOURS PLUS...
Ceci n'est qu'un exemple très simple, il y a encore beaucoup à faire pour qu'il devienne
une vraie application MAIL !! Ex. Vous devez ajouter la fonction POP, pour la reception de
mail (on verra comment, c'est sûr), Gérer les fichiers attachés, gérer le code HTML...
PROBLEME ?
S'il y a un bug, ou si vous rencontrez un problème, envoyez moi juste un mail.
C'est bien beau tout ça, mais où est le programme lui-même ? Il est là, du calme :^)
wsMail.zip - Téléchargez le zip qui contient l'application de Mail Smtp
N'oubliez pas de télécharger dsSocket.zip si vous ne l'avez pas encore fait:
dsSocket.zip - Téléchargez le zip qui contient l'ocx dsSocket (dsSocket32.ocx) [et l'ocx principal de Winsock (MsWinSck.ocx)].
Ensuite vous le dézippez soit dans c:\windows\system (de préférence) ou dans le repertoire de votre application et le tour est joué !
[Home]
[Actualités]
[Trucs
& Astuces]
[Astuces Windows]
[ActiveX-Ocx/Dll]
[Articles]
[Codes Sources]
[VB
Games]
[Fichiers Sons]
[Fichiers Icônes]
[Programmes & Sources]
[Mailing-List]
[Divers]
[A Propos]