IProfAdmin::CopyProfile
Область применения: Outlook 2013 | Outlook 2016
Копирует профиль.
HRESULTCopyProfile(
LPSTR lpszOldProfileName,
LPSTR lpszOldPassword,
LPSTR lpszNewProfileName,
ULONG_PTR ulUIParam,
ULONG ulFlags
);
Параметры
lpszOldProfileName
[в] Указатель на имя копируемого профиля.
lpszOldPassword
[в] Указатель на пароль копируемого профиля.
lpszNewProfileName
[в] Указатель на новое имя скопированного профиля.
ulUIParam
[в] Дескриптор родительского окна всех диалоговых окон или окон, отображаемых этим методом.
ulFlags
[в] Битовая маска флагов, управляющая способом копирования профиля. Можно задать следующие флаги:
MAPI_APP_PROFILE
Позволяет копировать профиль приложения. Этот флаг необходимо задать, если существующий профиль является профилем приложения.
Этот флаг не распознается или поддерживается во всех реализациях MAPI.
MAPI_DIALOG
Отображает диалоговое окно с запросом у пользователя ввести правильный пароль профиля для копирования. Если этот флаг не задан, диалоговое окно не отображается.
Возвращаемое значение
S_OK
Профиль успешно скопирован.
MAPI_E_ACCESS_DENIED
Имя нового профиля совпадает с именем существующего профиля.
MAPI_E_LOGON_FAILED
Пароль для копируемого профиля неверен, и не удалось отобразить диалоговое окно для запроса правильного пароля, так как MAPI_DIALOG не задано в параметре ulFlags .
MAPI_E_NO_ACCESS
Существующий профиль является профилем приложения, и флаг MAPI_APP_PROFILE не задан.
MAPI_E_NOT_FOUND
Указанный профиль не существует.
MAPI_E_USER_CANCEL
Пользователь отменил операцию, обычно нажав кнопку Отмена в диалоговом окне.
Замечания
Метод IProfAdmin::CopyProfile создает копию профиля, на который указывает lpszOldProfileName, присвоив ему имя, на который указывает lpszNewProfileName. При копировании профиля копия остается с тем же паролем, что и исходный.
Имя исходного профиля, его пароль и копия могут содержать до 64 символов и могут содержать следующие символы:
- Все буквенно-цифровые символы, включая знаки акцента и символ подчеркивания.
- Внедренные пространства, но не начальные или конечные пробелы.
Пароли профилей поддерживаются не во всех операционных системах. В операционных системах, которые не поддерживают пароли профилей, lpszOldPassword может иметь значение NULL или указатель на строку нулевой длины.
Если параметр lpszOldPassword имеет значение NULL, для копируемых профилей требуется пароль и установлен флаг MAPI_DIALOG; Отображается диалоговое окно с запросом на ввод пароля. Если пароль является обязательным, но параметр lpszOldPassword имеет значение NULL и флаг MAPI_DIALOG не задан, функция CopyProfile возвращает MAPI_E_LOGON_FAILED.
Если существующий профиль является профилем приложения и флаг MAPI_APP_PROFILE не задан, функция CopyProfile возвращает MAPI_E_NO_ACCESS. Если существующий профиль является профилем приложения, а MAPI_APP_PROFILE задан, новый профиль также будет профилем приложения. Если существующий профиль не является профилем приложения, новый профиль не будет профилем приложения независимо от флага MAPI_APP_PROFILE.