IMsgServiceAdmin::GetProviderTable
Область применения: Outlook 2013 | Outlook 2016
Предоставляет доступ к таблице поставщиков, списку поставщиков услуг в профиле.
HRESULT GetProviderTable(
ULONG ulFlags,
LPMAPITABLE FAR * lppTable
);
Параметры
ulFlags
[в] Всегда значение NULL.
lppTable
[out] Указатель на указатель на таблицу поставщика.
Возвращаемое значение
S_OK
Таблица поставщиков успешно возвращена.
Замечания
Метод IMsgServiceAdmin::GetProviderTable предоставляет доступ к таблице поставщиков MAPI, таблице со списком всех адресных книг, хранилищ сообщений и поставщиков транспорта, установленных в профиле.
В отличие от таблицы поставщиков, возвращаемой методом IProviderAdmin::GetProviderTable , таблица поставщиков, возвращенная через IMsgServiceAdmin::GetProviderTable , не может содержать дополнительные строки, представляющие сведения, связанные с одним или несколькими поставщиками служб в профиле.
Поставщики, которые были удалены или используются, но помечены для удаления, не включаются в таблицу поставщиков. Таблицы поставщиков являются статическими, что означает, что последующие добавления или удаления из профиля не отражаются в таблице.
Если у профиля нет поставщиков, GetProviderTable возвращает таблицу с нулевыми строками и возвращаемым значением S_OK.
Полный список столбцов в таблице поставщиков см. в разделе Таблица поставщиков.
Примечания для вызывающих методов
Чтобы получить строки таблицы поставщиков в порядке транспорта, выполните следующую процедуру:
Вызовите метод IMAPITable::Restrict , чтобы ввести ограничение свойства, соответствующее свойству PR_RESOURCE_TYPE (PidTagResourceType) с MAPI_TRANSPORT_PROVIDER.
Вызовите метод IMAPITable::SortTable , чтобы отсортировать таблицу по столбцу PR_PROVIDER_ORDINAL (PidTagProviderOrdinal).
Вызовите метод IMAPITable::QueryRows , чтобы получить строки таблицы.
Альтернативой этим вызовам является один вызов функции HrQueryAllRows со всеми соответствующими структурами данных.
Если вы извлекаете столбцы PR_SERVICE_UID (PidTagServiceUid) в каждой из строк, этот массив структур MAPIUID можно использовать для задания порядка транспорта в вызове IMsgServiceAdmin::MsgServiceTransportOrder.
Задание флага MAPI_UNICODE в параметре ulFlags выполняет следующие действия:
Задает тип строки в Юникоде для данных, возвращаемых для начальных активных столбцов таблицы поставщиков методом IMAPITable::QueryColumns . Начальные активные столбцы для таблицы поставщика — это столбцы, возвращаемые методом QueryColumns , прежде чем поставщик, содержащий таблицу, вызывает метод IMAPITable::SetColumns .
Задает тип строки в Юникоде для данных, возвращаемых для начальных активных строк таблицы поставщиков методом QueryRows. Начальные активные строки для таблицы поставщиков — это строки , которые QueryRows возвращает перед поставщиком, содержащим таблицу, вызывает SetColumns.
Управляет типами свойств порядка сортировки, возвращаемым методом IMAPITable::QuerySortOrder , прежде чем клиент, содержащий таблицу поставщиков, вызывает метод IMAPITable::SortTable .
См. также
IMsgServiceAdmin::GetMsgServiceTable
IMsgServiceAdmin::MsgServiceTransportOrder