IMsgServiceAdmin::ConfigureMsgService
Область применения: Outlook 2013 | Outlook 2016
Перенастройка службы сообщений.
HRESULT ConfigureMsgService(
LPMAPIUID lpUID,
ULONG_PTR ulUIParam,
ULONG ulFlags,
ULONG cValues,
LPSPropValue lpProps
);
Параметры
lpUID
[в] Указатель на структуру MAPIUID , содержащую уникальный идентификатор для настройки службы сообщений.
ulUIParam
[в] Дескриптор родительского окна страницы свойств конфигурации.
ulFlags
[в] Битовая маска флагов, управляющая отображением страницы свойств. Можно задать следующие флаги:
MAPI_UNICODE
Переданные строки имеют формат Юникода. Если флаг MAPI_UNICODE не задан, строки имеют формат ANSI.
MSG_SERVICE_UI_READ_ONLY
Служба сообщений должна отображать свой лист свойств конфигурации, но не разрешать пользователю изменять его. Большинство служб сообщений игнорируют этот флаг.
SERVICE_UI_ALLOWED
Служба сообщений должна отображать свой лист свойств конфигурации только в том случае, если служба настроена не полностью.
SERVICE_UI_ALWAYS
Служба сообщений должна всегда отображать свою страницу свойств конфигурации. Если SERVICE_UI_ALWAYS не задано, лист свойств конфигурации по-прежнему может отображаться, если задано SERVICE_UI_ALLOWED и допустимые сведения о конфигурации недоступны из массива значений свойств в параметре lpProps . Для отображения страницы свойств необходимо задать SERVICE_UI_ALLOWED или SERVICE_UI_ALWAYS.
cValues
[в] Количество значений свойств в структуре SPropValue , на которую указывает lpProps.
lpProps
[в] Указатель на массив значений свойств, описывающих свойства, отображаемые на странице свойств. Параметр lpProps не должен иметь значение NULL, если служба сообщений должна быть настроена без пользовательского интерфейса.
Возвращаемое значение
S_OK
Служба сообщений успешно настроена.
MAPI_E_EXTENDED_ERROR
Ошибка, относясь к службе сообщений. Чтобы получить структуру MAPIERROR , описывающую ошибку, клиентское приложение должно вызвать метод IMsgServiceAdmin::GetLastError .
MAPI_E_NOT_FOUND
MAPIUID, на который указывает lpUID, не соответствует существующей службе сообщений.
MAPI_E_NOT_INITIALIZED
Служба сообщений не имеет функции точки входа.
MAPI_E_USER_CANCEL
Пользователь отменил операцию, обычно нажав кнопку Отмена на странице свойств.
Замечания
Метод IMsgServiceAdmin::ConfigureMsgService позволяет настроить службу сообщений с листом свойств конфигурации или без нее.
Чтобы разрешить настройку без отображения страницы свойств, службы сообщений обычно подготавливают файл заголовка, содержащий константы для всех необходимых и необязательных свойств и их значений.
Примечания для вызывающих методов
Чтобы получить структуру MAPIUID для настройки службы сообщений, извлеките столбец PR_SERVICE_UID (PidTagServiceUid) из строки службы сообщений в таблице службы сообщений. Дополнительные сведения см. в процедуре, описанной в методе IMsgServiceAdmin::CreateMsgService .
Службу сообщений можно настроить без отображения страницы свойств для пользователя, только если у вас есть предварительные сведения о значениях свойств, которые необходимо задать. Если вы настраиваете службу сообщений без отображения страницы свойств, передайте допустимые значения свойств в параметре lpProps и не устанавливайте флаги MSG_SERVICE_UI_READ_ONLY, SERVICE_UI_ALLOWED или SERVICE_UI_ALWAYS.
Если вы получаете все или некоторые сведения о конфигурации от пользователя через страницу свойств, задайте SERVICE_UI_ALLOWED в ulFlags. Если вы используете существующие сведения о свойстве только для установки параметров по умолчанию и пользователь может изменить параметры, задайте SERVICE_UI_ALWAYS в ulFlags.
Справочные материалы по MFCMAPI
Пример кода MFCMAPI указан в приведенной ниже таблице.
Файл | Функция | Comment |
---|---|---|
MAPIProfileFunctions.cpp |
HrAddServiceToProfile |
MFCMAPI использует метод IMsgServiceAdmin::ConfigureMsgService для настройки службы, добавленной в профиль. |