Поделиться через


Завершение работы поставщика хранилища сообщений

Область применения: Outlook 2013 | Outlook 2016

Если ваш поставщик является поставщиком хранилища сообщений, его можно завершить одним из следующих способов:

  • Когда клиент или диспетчер очереди MAPI вызывает IMsgStore::StoreLogoff. Завершение работы поставщика хранилища сообщений с помощью StoreLogoff приводит к тому, что завершение работы будет происходить упорядоченным и контролируемым образом.

  • Когда клиент вызывает IMAPISession::Logoff.

Реализация IMsgStore::StoreLogoff должна начинаться с вызова IMAPISupport::StoreLogoffTransports , чтобы сообщить MAPI о том, что она завершает работу, указывая, что все связанные поставщики транспорта должны быть отключены. При возврате IMsgStore::StoreLogoff вызывающий объект вызывает метод IUnknown::Release хранилища сообщений. Реализуйте этот метод Release , вызвав метод IUnknown::Release объекта поддержки.

MAPI выполняет следующие задачи в реализации IUnknown::Release для хранилищ сообщений:

  1. Удаляет все структуры MAPIUID , зарегистрированные поставщиком хранилища сообщений.

  2. Удаляет строку поставщика хранилища сообщений из таблицы состояния.

  3. Вызывает IMSLogon::Logoff для освобождения всех открытых объектов, вложенных объектов и объектов состояния.

  4. Вызывает IUnknown::Release , чтобы освободить объект входа поставщика хранилища сообщений.

Некоторые клиенты могут опустить вызов IMsgStore::StoreLogoff, инициируя завершение работы поставщика хранилища сообщений с помощью вызова метода IUnknown::Release хранилища сообщений. При таких обстоятельствах завершение работы без вызова StoreLogoff менее упорядочено и контролируется. Напишите метод Release хранилища сообщений, чтобы обработать эту возможность и отслеживать, был ли вызов IMAPISupport::StoreLogoffTransports . StoreLogoffTransports необходимо вызывать один раз во время завершения работы. Если вы обнаружите в методе Release , что StoreLogoffTransports еще не был вызван, вызовите его с флагом LOGOFF_ABORT.

См. также

Завершение работы поставщика услуг