Запуск поставщика услуг
Область применения: Outlook 2013 | Outlook 2016
В какой-то момент после запуска клиентом сеанса с MAPI будет запущен поставщик услуг. Поставщики транспорта запускаются, когда клиент запрашивает свои службы. Поставщики адресной книги и хранилища сообщений запускаются во время входа клиента.
Клиент вызывает IMAPISession::OpenAddressBook для загрузки каждого из поставщиков адресной книги, включенных в профиль, и IMAPISession::OpenMsgStore для загрузки определенного поставщика хранилища сообщений. Поставщики адресных книг, которые являются частью службы сообщений, запускаются раньше, чем другие поставщики в службе.
MAPI запускает каждый поставщик услуг в активном профиле, выполнив следующие действия:
Поиск имени библиотеки DLL в профиле. Необходимо зарегистрировать имя библиотеки DLL поставщика в файле конфигурации Mapisvc.inf, чтобы оно отображалось в профиле. При добавлении поставщика услуг в профиль по отдельности или в составе службы сообщений все разделы [Поставщик услуг] из Mapisvc.inf, относящиеся к поставщику, копируются в профиль. Дополнительные сведения о структуре Mapisvc.inf см. в разделе Формат файла MapiSvc.inf.
Вызов функции API Windows LoadLibrary для загрузки библиотеки DLL. Так как MAPI вызывает LoadLibrary каждый раз, когда использует библиотеку DLL поставщика услуг (независимо от того, была ли она уже загружена) или только в первый раз, поставщик услуг не должен делать предположений о количестве его загрузки. При каждом вызове LoadLibrary MAPI выполняет вызов функции API Windows FreeLibrary , когда библиотека DLL поставщика услуг больше не требуется.
Вызов функции точки входа для поставщика. MAPI вызывает функцию точки входа поставщика для запуска процесса входа. Функции точки входа гарантируют, что используется версия интерфейса поставщика услуг (SPI), совместимая с версией, используемой MAPI. Эти функции также возвращают указатели на вновь созданные объекты поставщика. Дополнительные сведения о создании функции точки входа для поставщика см. в разделе Реализация функции точки входа поставщика услуг.