Функция CreateAppContainerProfile (userenv.h)
Создает профиль для каждого пользователя и приложения для AppContainer.
Синтаксис
USERENVAPI HRESULT CreateAppContainerProfile(
[in] PCWSTR pszAppContainerName,
[in] PCWSTR pszDisplayName,
[in] PCWSTR pszDescription,
[in] PSID_AND_ATTRIBUTES pCapabilities,
[in] DWORD dwCapabilityCount,
[out] PSID *ppSidAppContainerSid
);
Параметры
[in] pszAppContainerName
Имя контейнера приложения. Чтобы обеспечить уникальность, эта строка в идеале должна содержать имя приложения и издателя. Длина этой строки может составлять до 64 символов. Кроме того, он должен соответствовать шаблону, описанному регулярным выражением "[-_. A-Za-z0-9]+".
[in] pszDisplayName
Отображаемое имя. Длина этой строки может составлять до 512 символов.
[in] pszDescription
Описание контейнера приложения. Эта строка может содержать до 2048 символов.
[in] pCapabilities
Идентификаторы безопасности, определяющие запрошенные возможности UWP (если применимо).
[in] dwCapabilityCount
Количество идентификаторов безопасности в pCapabilities.
[out] ppSidAppContainerSid
Идентификатор безопасности для профиля. Этот буфер должен быть освобожден с помощью функции FreeSid.
Возвращаемое значение
Если эта функция завершается успешно, она возвращает стандартный код HRESULT, включая следующее:
Код возврата | Описание |
---|---|
|
Хранилище данных создано успешно. |
|
Вызывающий объект не имеет разрешения на создание профиля. |
|
Хранилище данных приложения уже существует. |
|
Имя контейнера равно NULL или имя контейнера, отображаемое имя или строки описания превышают указанные ограничения по длине. |
Комментарии
Профиль содержит папки и хранилище реестра для каждого пользователя и приложения. В папках есть списки управления доступом, которые запрещают доступ к ним другим пользователям и приложениям. Доступ к этим папкам можно получить, вызвав SHGetKnownFolderPath.
Функция создает профиль для текущего пользователя. Чтобы создать профиль от имени другого пользователя, необходимо олицетворить этого пользователя. Чтобы создать профили для нескольких пользователей одного приложения, необходимо вызвать CreateAppContainerProfile для каждого пользователя.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 [только классические приложения] |
Минимальная версия сервера | Windows Server 2012 [только классические приложения] |
Целевая платформа | Windows |
Header | userenv.h |
Библиотека | Userenv.lib |
DLL | Userenv.dll |