_NameSpace.Logon(Object, Object, Object, Object) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Выполняет вход пользователя в MAPI, получая сеанс MAPI.
public void Logon (object Profile, object Password, object ShowDialog, object NewSession);
Public Sub Logon (Optional Profile As Object, Optional Password As Object, Optional ShowDialog As Object, Optional NewSession As Object)
Параметры
- Profile
- Object
Имя профиля MAPI в виде строки (строка в C#), используемое для сеанса. Укажите пустую строку, чтобы использовать профиль по умолчанию для текущего сеанса.
- Password
- Object
Пароль (если он имеется) в виде строки (строки в C#), связанной с профилем. Этот параметр существует только для обратной совместимости и по соображениям безопасности не рекомендуется использовать. Microsoft Outlook предложит пользователю указать пароль в большинстве системных конфигураций. Это пароль для входа, который не следует путать с паролями PST.
- ShowDialog
- Object
Значение true , чтобы отобразить диалоговое окно входа в MAPI, чтобы разрешить пользователю выбрать профиль MAPI.
- NewSession
- Object
Значение true для создания нового сеанса Outlook. Так как в Outlook невозможно создать несколько сеансов, этот параметр следует указать как True только в том случае, если сеанс еще не существует.
Комментарии
Используйте метод Logon только для входа в определенный профиль, если Outlook еще не запущен. Это связано с тем, что одновременно может выполняться только один процесс Outlook, и этот процесс Outlook использует только один профиль и поддерживает только один сеанс MAPI. Когда пользователь запускает Outlook во второй раз, этот экземпляр Outlook запускается в том же процессе Outlook, не создает новый процесс и использует тот же профиль.
Если Outlook уже запущен, этот метод не создает новый сеанс Outlook или не изменяет текущий профиль на другой.
Если Outlook не запущен и вы хотите запустить Outlook только с профилем по умолчанию, не используйте метод Logon . Более лучшая альтернатива показана в следующем примере кода InitializeMAPI: сначала создайте экземпляр объекта Outlook Application , а затем составьте ссылку на папку по умолчанию, например папку "Входящие". Это имеет побочный эффект инициализации MAPI для использования профиля по умолчанию и для полной функциональности объектной модели.
Imports Outlook = Microsoft.Office.Interop.Outlook
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
Начиная с Outlook 2010, если у вас несколько профилей, вы настроили Outlook всегда использовать профиль по умолчанию, а для входа в профиль по умолчанию используется метод Входа , не запрашивая пользователя, пользователь в любом случае получит запрос на выбор профиля. Чтобы избежать такого поведения, не используйте метод Logon . вместо этого используйте обходной путь, предложенный в предыдущем примере InitializeMAPI.