Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

Vous n'avez pas encore de compte Developpez.com ? L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Developpez.com

C++

Choisissez la catégorie, puis la rubrique :

logo
Sommaire > MS Office > Outlook
11.4.1. Gestion de l'application (5)
                Comment ouvrir Outlook ?
                Comment fermer Outlook ?
                Comment ouvrir la page envoyer un mail OleOutlook ?
                Comment afficher un message que l'on a recu ?
                Comment envoyer un message OleOutlook ?
        Comment ouvrir Outlook ?
        Comment fermer Outlook ?
        Comment ouvrir la page envoyer un mail OleOutlook ?
        Comment afficher un message que l'on a recu ?
        Comment envoyer un message OleOutlook ?



Comment ouvrir Outlook ?
Créé le 10/12/2007[haut]
auteurs : blondelle, Laurent Dardenne

Cette procédure permet d'ouvrir Outlook

    Variant vMSOutlook, vEspaceDeNom, vDossierReception, olFolderInbox;
        try
    {
    vMSOutlook = Variant::GetActiveObject("Outlook.Application");
    }
        catch(...)
    {  
    vMSOutlook = Variant::CreateObject("Outlook.Application");
    }
    vEspaceDeNom = vMSOutlook.OleFunction("GetNameSpace", "MAPI");    

Logon "myProfile", "myPassword", True, True

Profile Argument de type Variant facultatif. Nom du profil, en tant que valeur String, à utiliser pour la session.
Password Argument de type Variant facultatif. Mot de passe (le cas échéant), en tant que valeur String, associé au profil.
ShowDialog Argument de type Variant facultatif. Affectez-lui la valeur True pour afficher la boîte de dialogue d'ouverture de session MAPI.
NewSession Argument de type Variant facultatif. Affectez-lui la valeur True pour créer une session (n'utilise pas une session existante). Vous ne pouvez pas créer plusieurs sessions dans Outlook.

La méthode Logon connecte l'utilisateur à MAPI, et ouvre une session MAPI.

  // Ici on utilise le profil par défaut
  vEspaceDeNom.OleFunction("Logon", "", "", true, true);

Arguments qu'il est possible de passer a la fonction suivante en fonction des dossiers que l'on ouvrir
3 = éléments supprimés
4 = boite d'envoi
5 = éléments envoyés
6 = boite de réception
9 = calendrier
10 = contacts
11 = boite de dialogue activer journal suivi messages
12 = notes
13 = taches
14 = rappels
15 = rappels
16 = brouillons

    vDossierReception = vEspaceDeNom.OlePropertyGet("GetDefaultFolder", 6);
    vDossierReception.OleFunction("Display");

Comment fermer Outlook ?
Créé le 10/12/2007[haut]
auteurs : blondelle, Laurent Dardenne

Cette procédure permet de fermer outlook

    vEspaceDeNom.OleFunction("Logoff");
    vMSOutlook.OleFunction("Quit");

Comment ouvrir la page envoyer un mail OleOutlook ?
Créé le 10/12/2007[haut]
auteur : blondelle

Cette procédure permet d'ouvrir la page d'envoi de nouveau message

    Variant vmyItem;
 
    vmyItem = vMSOutlook.OleFunction("CreateItem", 0);
    vmyItem.OleFunction("Display");

Comment afficher un message que l'on a recu ?
Créé le 10/12/2007[haut]
auteur : blondelle

Cette procédure permet d'afficher un des messages que l'on a reçu

    Variant vEspaceDeNom, vDossierReception, vmyItem;
 
    vEspaceDeNom = vMSOutlook.OleFunction("GetNameSpace", "MAPI");
    vDossierReception = vEspaceDeNom.OlePropertyGet("GetDefaultFolder", 6);
    vDossierReception.OleFunction("Display");
    vmyItem = vDossierReception.OlePropertyGet("Items", 2);// ici on affiche le deuxieme message recu
    // sortie ecran
    vmyItem.OleFunction("Display");

Cette procédure permet l'impression dans la foulée du message reçu

    // tempo de stabilisation affichage
    Sleep(1000);
    // impression
    vmyItem.OleFunction("PrintOut");

Comment envoyer un message OleOutlook ?
Créé le 10/12/2007[haut]
auteur : blondelle

Cette procédure permet d'envoyer un message

    Variant vEspaceDeNom, vobjNewMail, chemin;
    vEspaceDeNom = vMSOutlook.OleFunction("GetNameSpace", "MAPI");
    vobjNewMail = vMSOutlook.OleFunction("CreateItem", 0);
    vobjNewMail.OleFunction("Display");
    vobjNewMail.OlePropertySet("Body", "This e-mail message was created automatically on ");
    vobjNewMail.OlePropertySet("Subject", "essai");
    vobjNewMail.OlePropertySet("To", dupont@monfournisseur.fr.);

Cette procédure permet d'attacher une pièce jointe au message

    // piece jointe
    chemin = "C:\\Classeur1.xls";
    vobjNewMail.OlePropertyGet("Attachments").OleFunction("Add", chemin);
    vobjNewMail.OleFunction("Send");


Consultez les autres F.A.Q.


Valid XHTML 1.0 TransitionalValid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2009 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Contacter le responsable de la rubrique C++

Partenaire : Hébergement Web