IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Envoi de Mail par Delphi au travers d'Outlook


Sujet :

Delphi

  1. #1
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 124
    Points : 56
    Points
    56
    Par défaut Envoi de Mail par Delphi au travers d'Outlook
    Bonjour,

    Mon programme fabrique des fichiers pdf pour des clients, je désire suite à la création du pdf envoyer un message avec en pièce jointe le fichier. J'ai consulter la doc (forum) et voici le corps de mon programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    CoInitialize(nil);
    Outlook.Connect;
    EspaceDeNom := Outlook.GetNamespace('MAPI');
    EspaceDeNom.Logon('', '', False, False);
    // Crée un élément MailItem représentant un courrier électronique
    UnMail:=Outlook.CreateItem(olMailItem) as MailItem;
    // Ajoute un ou plusieurs destinataires
    UnMail.Recipients.Add(Adresse Client);
    UnMail.Subject := 'Mon Sujet';
    // Ajoute un retour chariot pour séparer le corps du message des piéces jointes
    UnMail.Body := 'Corps de mon message';
    //Ajoute une ou plusieurs pièces jointes
    UnMail.Attachments.Add(Monfichier, olByValue, EmptyParam, EmptyParam);
     // Place le mail dans la boîte d'envoi, mais ne l'envoi pas.
    UnMail.Send;
    EspaceDeNom.Logoff;
    Outlook.Quit;
    //CoUnInitialize;

    Comme vous voyez, je n'ai rien inventé ! J'ai quelques soucis tout de même :

    1 / Outlook m'envoie deux messages de sécurité. Le premier pour me demander combien de temps je veux permettre l'utilisation d'outlook et le second pour confirmer l'envoie du mail.
    Que faut-il faire pour ne pas avoir ces deux messages ?
    2 / Si Outlook est ouvert sur le poste de l'utilisateur, il est fermé automatiquement.
    Comment faire pour tester si outlook est déjà ouvert, afin de le fermer s'il n'était pas déjà ouvert ?
    3 / J'ai mis "CoUnInitialize" en commentaire car j'ai un message d'erreur sinon
    4 / En posant ce bout de code dans l'unité, il y a un problème de compilation sur cette unité lorsque j'écris :

    Except
    raise Exception.create('Prévenir la maintenance');
    End;

    Le message est "Type Objet ou Class requis".
    Problème que je n'ai pas dans mes autres forms ou unités (je n'y utilise pas la création de mail)

    Merci pour toutes vos précisions

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 190
    Points : 218
    Points
    218
    Par défaut
    bonjour

    plutot que d'utiliser outlook je te conseille les composants INDY (pour garder une trace de l'envoi il te suffira de te rajouter en copie caché)
    d'ailleurs il y a des informations sur l'envoi de mail dans la FAQ Delphi

  3. #3
    Membre averti Avatar de chtiot
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 385
    Points : 403
    Points
    403

  4. #4
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 124
    Points : 56
    Points
    56
    Par défaut
    Merci pour cette aide tChiot. Mais que peut-on en conclure ?

    Je bosse avec Delphi 6, interagit-il avec Outlook Pro (Version XP / 2003) ?

    J'ai besoin d'envoyer des mails en rafale à mes clients pour les avertir d'un contrôle de leur marchandise chez nous. Ce contrôle nous arrive sous forme de fichier texte d'une centaine de lignes. Aussi, je ne peux envoyer 100 mails si OutLook me colle 100 messages de sécurité !

  5. #5
    Membre averti Avatar de chtiot
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 385
    Points : 403
    Points
    403
    Par défaut
    sur le site Microsoft :

    Toutefois, vérifiez auprès du fournisseur de votre logiciel de synchronisation si des mises à jour récentes de son logiciel incluent l'interaction avec Outlook de manière fiable. Ce message ne s'affiche pas lorsque Outlook interagit avec des logiciels de synchronisation fiables.
    en fait il suffirait de savoir comment faire pour inclure l'interaction avec Outlook de manière fiable.

    Si quelqu'un sait, je suis preneur aussi.

  6. #6
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    tu peut utiliser le composant IdSmtp et IdMessage de Indy tous en restant indépendant d'outlook il te faut juste un serveur smtp.

  7. #7
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Pour Outlook une solution a été proposée il y a qq jours sur ce forum.
    Fonction rechercher : Outlook and sécurité.
    On ne l'a pas encore placé dans la FAQ...

  8. #8
    Membre averti Avatar de chtiot
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 385
    Points : 403
    Points
    403
    Par défaut
    Citation Envoyé par Laurent Dardenne
    Pour Outlook une solution a été proposée il y a qq jours sur ce forum.
    Fonction rechercher : Outlook and sécurité.
    On ne l'a pas encore placé dans la FAQ...
    merci à toi, je vais regarder...

Discussions similaires

  1. Problème d'envoie de mail par SMTP
    Par yass dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 12/09/2008, 16h45
  2. [SQL]Envoie de mail par une procedure
    Par yoyopi dans le forum DB2
    Réponses: 19
    Dernier message: 22/02/2008, 16h30
  3. [Mail] Envoi de mail par SMTP ?
    Par Borami dans le forum Langage
    Réponses: 1
    Dernier message: 03/01/2006, 12h26
  4. [Mail] newsletter, envoi de mail par lot
    Par jexl dans le forum Langage
    Réponses: 9
    Dernier message: 08/09/2005, 16h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo