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 功能的 SID ((如果适用)) 。
[in] dwCapabilityCount
pCapabilities 中的 SID 数。
[out] ppSidAppContainerSid
配置文件的 SID。 必须使用 FreeSid函数释放此缓冲区。
返回值
如果此函数成功,则返回标准 HRESULT 代码,包括以下内容:
返回代码 | 说明 |
---|---|
|
已成功创建数据存储。 |
|
调用方没有创建配置文件的权限。 |
|
应用程序数据存储已存在。 |
|
容器名称为 NULL,或者容器名称、显示名称或说明字符串超出了其指定的长度限制。 |
注解
配置文件包含按用户和每个应用的文件夹和注册表存储。 这些文件夹具有阻止其他用户和应用访问这些文件夹的 ACL。 可以通过调用 SHGetKnownFolderPath 访问这些文件夹。
函数为当前用户创建配置文件。 若要代表其他用户创建配置文件,必须模拟该用户。 若要为同一应用的多个用户创建配置文件,必须为每个用户调用 CreateAppContainerProfile 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | Windows |
标头 | userenv.h |
Library | Userenv.lib |
DLL | Userenv.dll |