Emailing automation
Installation | Fonctions | Exemples | Téléchargements | Achat | FAQ
Emailing automation fournit des capacités d’emailing à tout langage compatible OLE Automation (Par exemple VBA – Visual basic pour application, VBSCRIPT, etc…) pour les outils bureautiques MICROSOFT® -Word®, Excel®, Access®, … ).
Installation
Pour activer les fonctions d’Emailing automation sur votre poste, il vous suffit de lancer le programme d’installation sur votre poste.
Télécharger la version limitée:
Fichier exe ici, Fichier zip ici.
La version limitée affiche un message d’avertissement à chaque envoi et ajoute la ligne ‘Envoyé par Emailing automation
Pour obtenir votre licence complète, procédez à l’achat en ligne.
Après installation vous disposez des fonctions d’emailing dans votre langage de développement.
Par défaut la DLL de l’application est installée dans le répertoire :
C:Program FilesCDSOFTAppMailer Automation
Pour dé-sinstaller la librairie lancer le programme Uninstall.exe du même répertoire.
Fonctions
| Fonctions………….. | Descriptifs | Défaut | Saisie obligatoire |
| InitMail | Initialise les paramètres par défaut | - | - |
| SendMail | Envoi Email | - | - |
| CloseMail | Ferme tous les canaux ouverts | - | - |
| GetSmtp | Renvoie le serveur SMTP Outlook par défaut | - | - |
| Paramètres | |||
| SendMode | Mode d’envoi : 0 – (Par défaut) smtp intégré, 1 – Utilise OUTLOOK comme vecteur | ||
| Recipients | Liste des emails destinataires séparés par un ; | - | Oui |
| RecipientsName (*) | Liste des noms des destinataires séparés par un ; | - | Non |
| From | Email de l’émetteur (De) | - | Non |
| FromName (*) | Alias de l’emetteur (De) | - | Non |
| ReplyTo (*) | Email de réponse | From | Non |
| ReplyToName (*) | Alias de réponse | FromName | Non |
| Sender (*) | Email Emetteur Et Adresse de retour en cas d’adresse de destinataire erronée | From | Non |
| SenderName (*) | Alias Emetteur Et Adresse de retour en cas d’adresse de destinataire erronée | FromName | Non |
| Cc | Liste des emails en Copie conforme | - | Non |
| CcName (*) | Liste des alias en copie conforme | - | Non |
| Bcc | Liste des emails en copie conforme invisible | - | Non |
| BccName (*) | Liste des alias en copie conforme invisible | - | Non |
| Subject | Objet de l’envoi | - | - |
| ContentTxt | Contenu en mode Texte | - | - |
| ContentHTML | Contenu en mode HTML | - | - |
| HTML | 0 = Envoi mode Texte, 1= Envoi Mode HTML | 0 | - |
| Attachment | Liste des fichiers attachés séparés par un ; | - | - |
| Priority | Niveau de priorité 0=Faible, 1=Normal, 2=Important | 1 | - |
| Ack (*) | Accusé de réception 0=Non par défaut 1= oui | ||
| AckTo (*) | Nom du destinataire de l’accusé de réception =From par défaut | ||
| MergeVar | Liste des variables de publipostage séparées par ; (Séparateur par défaut) | ||
| MergeData | Liste des valeurs associées aux variables séparées par ; | - | |
| VarPrefix | Caractère placé avant la variable dans le contenu ou le sujet $ par défaut | $ | |
| VarAfterFix | Caractère facultatif placé après la variable | ||
| VarSep | Séparateur de variables et des valeurs associées ; par défaut | ; | |
| Smtp (*) | Serveur SMTP | - | Oui |
| SmtpPort (*) | Port SMTP (25 par défaut) | 25 | Non |
| SmtpAnomymous (*) | Accès smtp anonyme (Oui= 1, Non=0) | 1 | - |
| SmtpUser (*) | Nom utilisateur si accès authentifié | - | - |
| SmtpPwd (*) | Mot de passe utilisateur si accès authentifié | - | - |
| SmtpTimeOut (*) | Durée d’attente avant message d’erreur (en secondes) | 10 | - |
| CharSet (*) | Type de caractères utilisé | ISO-8859-1 | - |
| MailAgent (*) | Identification du logiciel utilisé pour l’envoi du mail | AppMailer | - |
| HeloName (*) | Nom “Helo” | info.appmailer.com | - |
| MapiAutoSend (**) | Par défaut 0: Place dans la boite d’envoi d’OUTLOOK, 1:Envoi immédiat (Mode OUTLOOK uniquement) |
(*) : Utilisé uniquement pour le mode smtp (Mode envoi=0), inactif si envoi par OUTLOOK
(**) : Cette propriété est inactive si vous utilisez Outlook 2002-2003 avec un fichier PST, un protocole POP3/SMTP ou Outlook 2000 en mode internet uniquement.
Exemples
Langage VBA
Activation Emailing automation pour le langage Visual Basic pour Application (VBA, Visual Basic pour Application, VbScript, etc …) des logiciels Microsoft
Sélectionner l’option Visual Basic Editor (Alt F11)

Ajouter la référence à APPMAILER AutoLibrary

Une fois la librairie activée, toutes les fonctions sont disponibles

Puis faire un clic droit sur VBAProject, Microsoft Excel Objects, insertion et module,
coller le code exemple en VBA puis l’adapter.
Activer ensuite l’interface développeur : Menu bouton office, options Excel

La macro “EnvoiMail” sera accessible directement dans le produit OFFICE concerné (EXCEL,WORD, … etc)
Exemple VBA(Visual Basic For Application)
Important : Afin d’activer le lancement des macros, donner votre accord lors de l’alerte de sécurité (Option activer le contenu)
Envoi d’un email à 2 destinataires en mode texte
Télécharger le fichier ZIP cliquez ici
Sub EnvoiMail()Dim oSendMail As AppMailerAuto.AppMailer_auto
‘ Initialise l’envoi
Set oSendMail = CreateObject(“AppMailerAuto.AppMailer_auto”)
oSendMail.InitMail
‘Accusé de réception demandé (Enlever le commentaire)
‘oSendMail.ack=1
‘Définition du serveur SMTP (Interne ou FAI)
‘oSendMail.Smtp = “smtp.orange.fr”
‘Emetteur
oSendMail.From = “monadresse@cd-soft.com”
‘Destinataires séparés par un ;
oSendMail.Recipients = “info@cd-soft.com;webmaster@cd-soft.com”
‘Alias des destinataires
oSendMail.RecipientsName = “info;webmaster”
‘Sujet du mail
oSendMail.Subject = “Test email APPMAILER”
‘Contenu du Mail au format Texte
oSendMail.ContentTxt = “Ceci est un mail envoyé par APPMAILER”
‘Envoi du mail
oSendMail.SendMail
‘Ferme tous les canaux ouverts
oSendMail.CloseMail
Set oSendMail = Nothing
End Sub
Envoi d’un email en mode HTML avec un équivalent texte et fonction publipostage
Télécharger le fichier ZIP cliquez ici
Sub EnvoiMail()Dim oSendMail As AppMailerAuto.AppMailer_auto
‘ Initialise l’envoi
Set oSendMail = CreateObject(“AppMailerAuto.AppMailer_auto”)
oSendMail.InitMail
‘Fonction publipostage
OsendMail.MergeVar = “Nom;Prenom”
OsendMail.MergeData = “Dupond;Alain”
‘Fin
‘Définition du serveur SMTP (Interne ou FAI)
oSendMail.Smtp = “smtp.orange.fr”
‘Emetteur
oSendMail.From = “monadresse@cd-soft.com”
‘Priorité
oSendMail.Priority = 2
‘Destinataires séparés par un ;
oSendMail.Recipients = “info@cd-soft.com”
‘Alias des destinataires
oSendMail.RecipientsName = “info”
‘Sujet du mail
oSendMail.Subject = “Test email APPMAILER destiné à $nom $prenom”
‘Mode HTML
oSendMail.HTML = 1
‘Contenu du Mail au format Texte
oSendMail.ContentTxt = “Ceci est un mail envoyé à $nom $prenom par APPMAILER”
‘Contenu du mail en mode HTML
oSendMail.ContentHTML = “<HTML><body><strong>Ceci</strong> est un mail envoyé par APPMAILER à $nom $prenom</body><HTML>”
‘Envoi du mail
oSendMail.SendMail
‘Ferme tous les canaux ouverts
oSendMail.CloseMail
Set oSendMail = Nothing
End Sub
Exemple EXCEL
Saisir vos données sous forme tabulaire.
Télécharger le fichier EXCEL cliquez ici
Télécharger le code vba cliquez ici
Sub EnvoiMail() Dim oSendMail As AppMailerAuto.AppMailer_auto, email As String, nom As String, prenom As String, contenu As String ‘ Initialise l’envoi Set oSendMail = CreateObject(“AppMailerAuto.AppMailer_auto”) oSendMail.InitMail ‘Accusé de réception demandé (Enlever le commentaire) ‘oSendMail.ack = 1 ‘Définition du serveur SMTP (Interne ou FAI) oSendMail.Smtp = “smtp.orange.fr” ‘Emetteur oSendMail.From = “monadresse@cd-soft.com” ‘Boucle d’envoi qui parcoure la feuille EXCEL For i = 2 To 3 ‘ Lignes des données à utiliser email = Worksheets(1).Cells(i, 1).Value nom = Worksheets(1).Cells(i, 2).Value prenom = Worksheets(1).Cells(i, 3).Value contenu = Worksheets(1).Cells(i, 4).Value oSendMail.Recipients = email oSendMail.RecipientsName = nom oSendMail.Subject = “Test email APPMAILER” oSendMail.MergeVar = “Nom;Prenom;contenu” oSendMail.MergeData = nom + “;” + prenom + “;” + contenu oSendMail.ContentTxt = “Ceci est un mail envoyé par APPMAILER pour $prenom $nom. Le contenu du message est $contenu” oSendMail.SendMail Next ‘Ferme tous les canaux ouverts oSendMail.CloseMail Set oSendMail = Nothing End SubExemple en VBSCRIPT
Télécharger le fichier ZIP cliquez ici
Option ExplicitFunction Main()
Dim oSendMail
‘ Initialise l’envoi
Set oSendMail = CreateObject(“AppMailerAuto.AppMailer_auto”)
oSendMail.InitMail
‘Définition du serveur SMTP (Interne ou FAI)
oSendMail.Smtp = “smtp.orange.fr”
‘Emetteur
oSendMail.From = “info@cd-soft.com”
‘Priorité
oSendMail.Priority =3
‘Destinataires séparés par un ;
oSendMail.Recipients = “info@cd-soft.com”
‘Alias des destinataires
oSendMail.RecipientsName = “info”
‘Sujet du mail
oSendMail.Subject = “Test email APPMAILER”
‘Mode HTML
oSendMail.HTML = 1
‘Contenu du Mail au format Texte
oSendMail.ContentTxt = “Ceci est un mail envoyé par APPMAILER”
‘Contenu du mail en mode HTML
oSendMail.ContentHTML = “<HTML><body><strong>Ceci</strong> est un mail envoyé par APPMAILER</body><HTML>”
‘Envoi du mail
oSendMail.SendMail
‘Ferme tous les canaux ouverts
oSendMail.CloseMail
Set oSendMail = Nothing
End Function
Exemple code DELPHI (PASCAL)
Télécharger le fichier ZIP cliquez ici
procedure TForm1.B_GoClick(Sender: TObject);var
Obj: variant;
begin
Obj := CreateOleObject(‘AppMailerAuto.AppMailer_auto’);
Obj.InitMail;
Obj.Recipients := ‘webmaster@cd-soft.com’;
Obj.Smtp := ‘smtp.orange.fr’;
Obj.From := ‘info@cd-soft.com’;
Obj.ContentTxt := ‘Test AppMailer’;
Obj.ContentHTML := ‘<HTML><boby><B>Test AppMailer</B></Body></HTML>’;
Obj.HTML := 1;
Obj.Subject := ‘Test’;
Obj.SendMail;
Obj.CloseMail;
end;
Mise en place d’un suivi d’ouverture de mail (Tracking)
Télécharger le fichier ZIP cliquez ici
La version 5 permet de mettre en place un suivi d’ouverture (en mode HTML uniquement).
Le code généré affiche une image “invisible” de dimension 1×1
Cette fonction n’est utilisable qu’avec un script coté serveur (php, aspx).
La propriété marker doit être à 1
La propriété markervalue doit correspondre au script du serveur WEB.
Exemple : http://votresiteweb/track/upd_log.php?value=$key”
En VBA :
Sub Test()Dim OsendMail As AppMailerAuto.AppMailer_auto
Set OsendMail = CreateObject(“AppMailerAuto.AppMailer_auto”)
OsendMail.InitMail
‘ Marqueur
OsendMail.Marker = 1
OsendMail.MarkerValue = “http://votresiteweb/track/upd_log.php?value=$key”
‘Fin marqueur
OsendMail.MergeVar = “Nom;Prenom;key”
OsendMail.MergeData = “Dupond;Alain;1″
OsendMail.From = “info@cd-soft.com”
OsendMail.Recipients = “jserpoul@cd-soft.com”
OsendMail.Smtp = “smtp.orange.fr”
OsendMail.Subject = “AppMailer demo envoyé à $prenom $nom”
OsendMail.HTML = 1
OsendMail.ContentTxt = “Test pour Appmailer pour $nom $prenom”
OsendMail.ContentHTML = “<HTML><body><strong>Ceci</strong> est un mail envoyé à $nom $prenom par APPMAILER</body><HTML>”
OsendMail.SendMail
OsendMail.MergeData = “Durand;Jean;2″
OsendMail.SendMail
OsendMail.CloseMail
Set OsendMail = Nothing
End Sub
Le code suivant est automatiquement ajouté à l’email :
<br><img src=”http://votresiteweb/track/upd_log.php?value=1 width=”1″ height=”1″><br>
le programme upd_log.php ressemble à celui-ci
Télécharger le fichier ZIP cliquez ici
<?// Traitement des informations – exemple
$ip=getenv(REMOTE_ADDR);
$agent=getenv(HTTP_USER_AGENT);
{
$c_date=GetDate(time());
$x_day=$c_date["mday"];
$x_month=$c_date["mon"];
if ($c_date["mday"]*1<10)
{
$x_day=”0″.$c_date["mday"];
}
if ($c_date["mon"]*1<10)
{
$x_month=”0″.$c_date["mon"];
}
$mydate=$c_date["year"].$x_month.$x_day;
$filelog=”../file_logs/$mydate.log”;
$liste_valeurs = date(“Y/m/d H:i”).”~~”;
$liste_valeurs .= $value.”~~”;
$liste_valeurs .= $ip.”~~”;
$liste_valeurs .= gethostbyaddr( $ip );
$fic=fopen(“$filelog”, “a”);
if ($fic)
{
fputs($fic, $liste_valeurs . “n”);
fclose($fic);
}
}
// Plus simple que ci-dessus==> Envoi d’email accusé de réception
// Sendmail …. etc
// Obligatoire création d’une image de 1×1
Header(“Content-type: image/gif”);
$im = imagecreate(1,1);
imagegif($im);
imagedestroy($im);
?>
Le programme récupére value puis résoud l’adresse IP du destinataire.
Le fichier généré est de la forme anneemoisjour.log et les lignes sont de la forme : AnneeMoisJour Heure~~value~~ip~~addresse résolue. Une analyse simple des fichiers logs donne toutes les informations nécessaires.
Les 4 dernières lignes ne doivent pas être modifiées. Par contre, le traitement est au choix du développeur.
Code en C# ASPX
Télécharger le fichier ZIP cliquez ici
<%@ Page Language=”C#” ContentType=”image/gif” %>< %@ import Namespace=”System.Web” %>
< %@ import Namespace=”System.IO” %>
< %@ import Namespace=”System.Drawing” %>
< %@ import Namespace=”System.Drawing.Imaging” %>
< script runat=”server”>
void Page_Load(Object sender, EventArgs e)
{
string Line;
string Lnk;
string No;
string UserId;
string GoURL;
string CurrentMonth;
string CurrentDay;
string CurrentYear;
string Root;
string Ip;
string IpAddr;
string FileName;
string CurrentHour;
string CurrentMn;
int iCurrentDay;
int iCurrentMonth;
int iCurrentYear;
int iCurrentHour;
int iCurrentMn;
FileInfo DataFile;
StreamWriter TextStream;
DateTime CurrentDate;
Root=Request.MapPath(“..file_logs/”);
Lnk=Request.QueryString.Get(“value”);
Ip=Request.UserHostAddress;
IpAddr=Request.UserHostName;
CurrentDate=DateTime.Now;
iCurrentMonth=CurrentDate.Month;
if (iCurrentMonth<10)
{
CurrentMonth=”0″+iCurrentMonth.ToString();
}
else
{
CurrentMonth=iCurrentMonth.ToString();
}
iCurrentDay=CurrentDate.Day;
if (iCurrentDay<10)
{
CurrentDay=”0″+iCurrentDay.ToString();
}
else
{
CurrentDay=iCurrentDay.ToString();
}
iCurrentYear=CurrentDate.Year;
CurrentYear=iCurrentYear.ToString();
iCurrentHour=CurrentDate.Hour;
CurrentHour=iCurrentHour.ToString();
iCurrentMn=CurrentDate.Minute;
CurrentMn=iCurrentMn.ToString();
FileName=Root+CurrentYear+CurrentMonth+CurrentDay+”.log”;
Line=CurrentYear+”/”+CurrentMonth+”/”+CurrentDay+” “+CurrentHour+”:”+CurrentMn+”~~”+Lnk+”~~”+Ip+”~~”+IpAddr;
//Response.Write(FileName);
if (File.Exists(FileName))
{
TextStream = File.AppendText(FileName);
}
else
{
TextStream = File.CreateText(FileName);
}
TextStream.WriteLine (Line);
TextStream.Close();
Bitmap objBitmap;
Graphics objGraphics;
objBitmap = new Bitmap(1, 1);
objGraphics = Graphics.FromImage(objBitmap);
objBitmap.Save( Response.OutputStream, ImageFormat.Gif);
}
< /script>
< html>
< head>
< /head>
< body>
<form runat=”server”>
<!– Insert content here –>
</form>
< /body>
< /html>
Téléchargements
Fichier exe ici
Fichier zip ici.
Achats
Emailing automation 99 EUROS HT soit 118.40 EUROS TTC (TVA 19,40 EUROS)
Dès validation de votre commande, nous vous enverrons par email la clé d’activation.
Votre enregistrement vous donne droit à :
- Une mise à jour gratuite et illimitée pour les évolutions de la version en cours.
- un support technique par email.
Il est possible d’effectuer votre réglement par chèque à notre adresse postale.
FAQ
Question : Puis-je utiliser Emailing Automation dans mon language ?
Réponse : Pratiquement tous les langages sont capables d’utiliser OLE Automation.
Question : Puis-je envoyer des messages au format HTML
Réponse : Oui, en utilisant la propriété HTML.
Question : OUTLOOK doit-il être installé si je fais mes envois en utilisant le protocole SMTP ?
Réponse : Non, l’option OUTLOOK ne doit être utilisé que si vous souhaitez sauvegarder vos messages dans la boîte aux lettres associée.
Question : Dois-je préférer l’envoi par SMTP à l’envoi par OUTLOOK ?
Réponse : Oui, car les possibilités sont beaucoup plus étendues.
Question : Puis-je envoyer des pièces jointes ?
Réponse : Oui, grâce à la propriété Attachment vous pouvez envoyer plusieurs pièces jointes.
Question (Envoi SMTP) : L’accusé de lecture est-il géré ?
Réponse ; Oui, grâce à la propriété ack. De plus la propriété ackto vous permets de définir le destinataire de l’accusé de réception qui peut-être différent de l’émetteur du message.
Question : Le publipostage est-il facile avec Emailing Automation ?
Réponse : Le publipostage est facilité grâce aux propriétés mergevar et mergedata.





