Vmail x - client smtp pour l'envoi de mail + exe/activex !

Description

C'est une de mes grosses réalisations que je vous présente ici...
Tout est y est : Design, code bien gras, fonctionel, etc...

Ce programme est un client SMTP qui permet d'envoyer des mails, comme un tout bête anonymiseur en utilisant Winsock.

Mais il est joli (l'interface est adaptée de celle du site vbfrance, merci Nix, même si je ne t'ai pas demandé ton autorisation)... Et en plus, ce programme est UN EXECUTABLE ACTIVE X !

Un EXE/ActiveX ??? Pourquoi faire ? Et bien, en l'incluant dans les références de vos programmes VB/Access ou autre, vous pourrez utiliser les méthodes/propriétés du programme pour envoyer un mail, créer/lire un fichier ini, crypter/décrypter des fichiers, etc...

Il reste quelques bugs, comme la définition du type MIME d'un fichier... Qui sous NT, par exemple, renvoie toujours "Application Octet/Stream"... L'utilisation de l'ajout de destinataire sous forme de collection (bien que la collection existe, elle ne fonctionne pas encore !!!), le codage au format MIME qui est très lent (evitez les pieces jointes de plus de 500 Ko) et bien sur les bugs qui restent à éliminer...

Pour l'utilisation sous forme d'ActiveX, je joint le code ci dessous :

Source / Exemple :


' Après avoir ajouté la référence à vmailx.exe dans votre programme
' Voici le code à ajouter, par exemple sur clic d'un bouton

Sub cmdMail_OnClick()
    ' Utilisation de l'envoi de mail
    
    Dim MyMail As vMailX.SendMail
    Set MyMail = New vMailX.SendMail
    
    ' On vérifie la connection à Internet
    If MyMail.EstConnecte = True Then
    
        With MyMail
            .AdresseFrom = "monadresse@moncompte.fr" ' Nom du destinataire
            .AdresseFromName = "Mon Nom" ' Nom de l'emmeteur
            
            ' Ancienne méthode d'ajout de destinataire
            '.AdresseTo = "destinataire1@compte.fr;destinataire2@compte.fr" ' Destinataire
            ' Nouvelle méthode sous forme de collection
            .Destinataire.Add "d1", "destinataire1@compte.fr", MailTo
            .Destinataire.Add "d2", "destinataire2@compte.fr", MailCc
            
            .AttacherFichier.Add , "C:\autoexec.bat", "Fichier Autoexec" ' Ajout d'un fichier
            .DomainSource = "mon.ordinateur.fr" ' Nom du PC pour le HELO au serveur SMTP
            .MailObjet = "Objet du mail" ' Objet du mail
            .MailFormat = eTEXT ' Format du mail
            .MailContenu = "Corps du mail au format texte" ' Corps du mail
            .MailPriorite = eNormalPriority ' Priorité du Mail
            .MailServeur = "mail.serveursmtp.fr" ' Serveur de mail SMTP
            .TimeOut = 30 ' en secondes
            .xMailer = "MyMail Mailer" ' Nom du Mailer qui a envoyé le mail
            ' Si le time out est dépassé, on retente l'envoi
            .RéessayerEnvoi = True
            ' On affiche la fenêtre de progression
            .AfficherEnvoi = True
        End With
    
        MyMail.MailSend
        
        If MyMail.ErreurNumber = 0 Then
            MsgBox "Message correctement envoyé !"
        Else
            MsgBox MyMail.ErreurDescription
        End If
        
    End If
End Sub

Sub cmdSaveValue_Click()
    ' Utilisation des fichiers INI
    
    Dim MyIni As vMailX.Ini
    Set MyIni = New vMailX.Ini
    
    With MyIni
        .IniFile = "C:\myinifile.ini"
        .WriteIni "TEST", "CONFIG", "ceci est un test"
    End With
    
    MsgBox MyIni.ReadIni("TEST", "CONFIG", "Je sais pas ?")
End Sub

Sub cmdGetInfo_Click()
    ' Utilisation des infos systèmes
    
    Dim MyInfo As vMailX.LocalInfo
    Set MyInfo = New vMailX.LocalInfo
    
    With MyInfo
        MsgBox "Nom de l'ordinateur : " & .CurrentComputer
        MsgBox "Nom de l'utilisateur : " & .CurrentUser
        MsgBox "Version de Windows : " & .WindowsVersion
        ' etc...
    End With
End Sub

' Ne sont pas présent les démonstrations pour Cryptage et Codage...
' (c) Cyril PORTET, Janvier 2002 - Avril 2002
' vMail X version 0.1.60

Conclusion :


Note du 23/05/2002 :
Merci de me remonter les bugs, les problemes, les ameliorations a apporter... Et n'hesitez pas à vous en servir, pour l'instant, c'est du tout FREE !

Note du 27/05/2002 :
J'ai fait une mise à jour partielle du code.
Maintenant le destinataire du message se renseigne sous forme d'une collection comme pour les pieces jointes, j'ai corrigé 2 ou 3 petits bugs mineurs, et là j'attaque le format MIME et l'encodage en version plus rapide...

A+
Cyrilp

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.