NameSpace. Logon, méthode (Outlook)

Connecte l’utilisateur à l’interface MAPI, ce qui ouvre une session MAPI.

Syntaxe

expression. Logon( _Profile_ , _Password_ , _ShowDialog_ , _NewSession_ )

expression Variable qui représente un objet NameSpace.

Paramètres

Nom Requis/Facultatif Type de données Description
Profil Facultatif Variant Nom du profil MAPI, en tant que valeur String, à utiliser pour la session. Spécifiez une chaîne vide pour utiliser le profil par défaut pour la session actuelle.
Password Facultatif Variant Mot de passe (le cas échéant), en tant que valeur String, associé au profil. Ce paramètre n'est fourni que pour assurer la compatibilité descendante et il est préférable, pour des raisons de sécurité, de ne pas l'utiliser. Microsoft Outlook invite l’utilisateur à spécifier un mot de passe dans la plupart des configurations système. Il s'agit de votre mot de passe d'ouverture de session, qui ne doit pas être confondu avec les mots de passe PST.
ShowDialog Facultatif Variant True pour afficher la boîte de dialogue d'ouverture de session MAPI qui permet à l'utilisateur de sélectionner un profil MAPI.
NewSession Facultatif Variant True pour créer une nouvelle session Microsoft Outlook. Puisque vous ne pouvez pas créer plusieurs sessions dans Outlook, ce paramètre doit être True uniquement s’il n’existe pas encore de session.

Remarques

Utilisez la méthode Logon uniquement pour vous connecter à un profil particulier si Outlook n’est pas déjà en cours d’exécution. En effet, seul un processus Outlook peut être exécuté à la fois, et ce processus Outlook n'utilise qu'un seul profil et ne prend en charge qu'une seule session MAPI. Quand les utilisateurs démarrent Outlook pour la deuxième fois, cette instance d'Outlook est exécutée au sein du même processus Outlook, ne crée pas de nouveau processus et utilise le même profil.

Si Outlook est en cours d'exécution, le fait d'utiliser cette méthode ne crée pas de nouvelle session Outlook et ne change pas le profil actif.

Si Outlook n’est pas en cours d’exécution et que vous souhaitez le démarrer avec le profil par défaut, n’utilisez pas la méthode Logon. L’exemple de code ci-dessous présente une meilleure solution, InitializeMAPI : tout d’abord, instanciez l’objet Application d’Outlook, puis indiquez un dossier par défaut, par exemple la boîte de réception. Cela a pour effet parallèle d’initialiser MAPI de manière à utiliser le profil par défaut et à rendre le modèle objet pleinement fonctionnel.

Sub InitializeMAPI ()

    ' Start Outlook.
    Dim olApp As Outlook.Application
    Set olApp = CreateObject("Outlook.Application")
    
    ' Get a session object. 
    Dim olNs As Outlook.NameSpace
    Set olNs = olApp.GetNamespace("MAPI")
    
    ' Create an instance of the Inbox folder. 
    ' If Outlook is not already running, this has the side
    ' effect of initializing MAPI.
    Dim mailFolder As Outlook.Folder
    Set mailFolder = olNs.GetDefaultFolder(olFolderInbox)

    ' Continue to use the object model to automate Outlook.
End Sub

À partir d'Outlook 2010, si vous possédez plusieurs profils, que vous avez configuré Outlook de manière à toujours utiliser un profil par défaut et que vous utilisez la méthode Logon pour ouvrir une session avec le profil par défaut, sans demander à l'utilisateur de choisir un profil, celui-ci est quand même invité à choisir un profil. Pour éviter ce problème, n’utilisez pas la méthode Logon ; utilisez la solution de contournement suggérée dans l’exemple InitializeMAPI précédent.

Exemple

Cet exemple Visual Basic pour Applications montre comment utiliser la méthode Logon pour ouvrir une nouvelle session, en affichant la boîte de dialogue de vérification du nom du profil et d'entrée du mot de passe.

Sub StartOutlook() 
    Dim myNameSpace As Outlook.NameSpace 
  
    Set myNameSpace = Application.GetNamespace("MAPI") 
    myNameSpace.Logon "LatestProfile", , True, True 
End Sub

Voir aussi

Objet NameSpace

Procédure : obtenir une instance d’Outlook et s’y connecter

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.