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

API, COM et SDKs Delphi Discussion :

Delphi 2009 et Outlook - choisir compte d'envoi et ajout copie conforme


Sujet :

API, COM et SDKs Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de Hicks90
    Homme Profil pro
    Support technique en recherche
    Inscrit en
    Mai 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Support technique en recherche

    Informations forums :
    Inscription : Mai 2009
    Messages : 25
    Par défaut Delphi 2009 et Outlook - choisir compte d'envoi et ajout copie conforme
    Bonjour,
    Je suis a bricoler une petite application qui doit envoyer des statut d'utilisation par courriel.
    Mon programme de test fonctionne assez bien (j'ai pris une recette toute faite), voir ci-dessous, mais il me reste deux coquilles que je n'arrive pas a régler.

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    procedure TForm1.Button1Click(Sender: TObject);
    const
      olMailItem = 0;
    var
      Outlook: OleVariant;
      vMailItem: variant;
    begin
      try
        Outlook := GetActiveOleObject('Outlook.Application');
      except
        Outlook := CreateOleObject('Outlook.Application');
      end;
      vMailItem := Outlook.CreateItem(olMailItem);
     
      // Destinataire du message
      vMailItem.Recipients.Add('stef.denis@test.ca');
     
      //*Sujet du courriel
      vMailItem.Subject := 'test email from test';
     
      // Message dans le courriel
      // Avec du HTML : Mailitem.htmlbody  (a revoir)
      vMailItem.Body := 'This is a test un autre avec accuse reception';
     
      // Pieces jointe
      vMailItem.Attachments.Add('C:\temp\sample.txt');
     
      // Demande accusé reception
      vMailItem.ReadReceiptRequested := True;
     
      // --- Envoie courriel ---
      vMailItem.Send;
     
      VarClear(Outlook);
     
    end;
    1- Mon logiciel client Outlook 2010 a plusieurs comptes (Gmail, Hotmail FAI etc). Je n'arrive pas a sélectionner le compte expédition du message, la ligne ci-dessous ne fonctionne pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vMailItem.sendUsingAccount('hicks90@hotmail.com');
    2- Je n'arrive pas a renseigner les champs CC et CCI pour y placer d'autre adresse.

    J'ai fouillé la FAQ http://delphi.developpez.com/faq/?pa...rmailoutlookv2 et ici : http://msdn.microsoft.com/en-us/libr...ice.15%29.aspx

    Merci à l'avance pour votre aide

    Stéphane Denis

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 938
    Billets dans le blog
    6
    Par défaut
    pour ta première question, pê une piste ici : vmailItem.sendUsingAccount := Outlook.session.accounts.item[2]; ou là : mailItem.sendUsingAccount := application.session.accounts.item( 'some account' ); ; et encore mieux, dans le msdn que tu cites : une fonction d'énumération qui renvoie le compte désigné par son nom en argument

    on y trouve aussi :
    Citation Envoyé par msdn
    (mailItem.)BCC : Returns a String representing the display list of blind carbon copy (BCC) names for a MailItem. Read/write.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre averti Avatar de Hicks90
    Homme Profil pro
    Support technique en recherche
    Inscrit en
    Mai 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Support technique en recherche

    Informations forums :
    Inscription : Mai 2009
    Messages : 25
    Par défaut
    Bonjour tourlourou,
    Merci pour ta réponse. J'ai fouillé dans le MSDN sans trop maitrisé...

    1- La solution donné pour l'envoi à partir d'un autre compte (hotmail par exemple) fonctionne. Les deux syntaxes proposés fonctionnent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    vmailItem.sendUsingAccount := Outlook.session.accounts.item[3];      // A la condition que le deuxième compte de courriel soit le compte Hotmail dans mon cas
     
    vmailItem.sendUsingAccount := Outlook.session.accounts.item( 'toto@hotmail.com' );
    Je faisais : vMailItem.sendUsingAccount('toto@hotmail.com');

    Il y a un mais... cela ne fonctionne pas avec des BALs partagées dans un environnement Microsoft Exchange (comme a mon boulot). Une image vaut 1000 mots, voir ci-dessous:
    Nom : bal.png
Affichages : 911
Taille : 13,1 Ko

    Les quatre premières BALs existent bien sur différent serveur et sont configurés dans mon client Outlook. Si je place dans : vmailItem.sendUsingAccount := Outlook.session.accounts.item[x]; x entre 1 et 4, l'expéditeur sera bien l'adresse choisis. Mais si j'essaie avec l'une des deux autres BAL cela ne fonctionne pas. J'ai un message d'erreur hors de la plage. On voit bien que ces BALs sont "graphiquement" séparées par un trait et sont donc "différentes".

    Je vais refaire des essais la semaine prochaine sur mon poste au boulot, là je fais des tests de la maison. On verras si cela change quelque chose.
    Mais j'aimerais vraiment pouvoir répondre avec les autres adresses que l'adresse à mon nom au boulotl.


    2- Pour l'utilisation de CC et de BCC, cela fonctionne aussi.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Avec un CC
    vMailItem.CC := ('titi@pixelistes.com');
     
    // Avec un BCC
    vMailItem.BCC := ('tata@hotmail.com');
    Merci encore pour votre aide,
    Si quelqu'un a une solution pour les BALs partagées dans Exchange, je suis preneur

  4. #4
    Membre averti Avatar de Hicks90
    Homme Profil pro
    Support technique en recherche
    Inscrit en
    Mai 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Support technique en recherche

    Informations forums :
    Inscription : Mai 2009
    Messages : 25
    Par défaut
    Bonjour,
    Je répond à ma dernière question moi-même

    Il faut utiliser l'instruction ci-dessous pour envoyé un courriel avec les BAL partagées en environnement Exchange.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vmailItem.SentOnBehalfOfName := 'info@boulot.ca';
    Voir ici : http://www.slipstick.com/developer/c...l-address-vba/

    Dossier régler.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/04/2007, 09h44
  2. [VBA-E] Liaison avec Outlook et Lookout pour envoi automatique
    Par comme de bien entendu dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/12/2006, 13h32
  3. Appli Delphi qui utilise Outlook
    Par slimjoe dans le forum Delphi
    Réponses: 3
    Dernier message: 27/11/2006, 19h27
  4. [Outlook 2003] Problème d'envoie de message.
    Par bilb0t dans le forum Outlook
    Réponses: 12
    Dernier message: 18/05/2006, 11h45
  5. Création de comptes pour envoi de newsletter
    Par Skullbox dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/08/2005, 11h30

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