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 |