> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XUserCheckPrivilege

> XUserCheckPrivilege

# XUserCheckPrivilege

ユーザーが特定の特権を持っているかどうかを判定します。

## 構文

```cpp theme={null}
HRESULT XUserCheckPrivilege(  
         XUserHandle user,  
         XUserPrivilegeOptions options,  
         XUserPrivilege privilege,  
         bool* hasPrivilege,  
         XUserPrivilegeDenyReason* reason  
)  
```

### パラメーター

*user*   \_In\_\
Type: XUserHandle

特権を確認するユーザーへのハンドルです。

*options*   \_In\_\
Type: [XUserPrivilegeOptions](/reference/system/xuser/enums/xuserprivilegeoptions)

ユーザー特権のオプションです。

*privilege*   \_In\_\
Type: [XUserPrivilege](/reference/system/xuser/enums/xuserprivilege)

確認する特権です。

*hasPrivilege*   \_Out\_\
Type: bool\*

ユーザーが特定の特権を持っている場合は true、それ以外の場合は false です。

*reason*   \_Out\_opt\_\
Type: [XUserPrivilegeDenyReason\*](/reference/system/xuser/enums/xuserprivilegedenyreason)

ユーザーが要求された特権を持っていない理由です。この値は情報提供**のみ**を目的としており、多くのシナリオで不正確な場合があります。この値をタイトル内での判断に使用**しないでください**。代わりに、[XUserResolvePrivilegeWithUiAsync](/reference/system/xuser/functions/xuserresolveprivilegewithuiasync) を使用して、すべての特権に関する問題を解決してください。

### 戻り値

Type: HRESULT

HRESULT の成功またはエラー コード。

| 戻りコード                                       | 説明                                                                                                                                                  |
| ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| S\_OK                                       | 操作が成功しました。                                                                                                                                          |
| E\_GAMEUSER\_RESOLVE\_USER\_ISSUE\_REQUIRED | ユーザーは UI を使用して問題を解決する必要があります。[XUserResolveIssueWithUiAsync](/reference/system/xuser/functions/xuserresolveissuewithuiasync) を呼び出して、ユーザーに UI を表示します。 |

## 解説

ユーザーが指定された [XUserPrivilege](/reference/system/xuser/enums/xuserprivilege) を持っているかどうかを判定します。

> <img src="https://mintcdn.com/microsoft-4404708b/-_0FrcE2bDxzGxv-/images/gdk/reference/caution.gif?s=2e4f582499c4cb4859c57646638ae366" alt="alert" width="11" height="11" data-path="images/gdk/reference/caution.gif" /> **注:** *reason* 引数で返される値は情報提供**のみ**を目的としており、多くのシナリオで不正確な場合があります。この値をタイトル内での判断に使用**しないでください**。

特権が拒否された場合 (すなわち *hasPrivilege* が false の場合)、ゲームは同じ *privilege* 値で [XUserResolvePrivilegeWithUiAsync](/reference/system/xuser/functions/xuserresolveprivilegewithuiasync) を呼び出すことで、プレイヤーに特権を解決する機会を与えることができます。

このメソッドが **E\_GAMEUSER\_RESOLVE\_USER\_ISSUE\_REQUIRED** を返した場合、ゲームは [XUserResolveIssueWithUiAsync](/reference/system/xuser/functions/xuserresolveissuewithuiasync) を呼び出すことで、プレイヤーに問題を解決する機会を与えることができます。

## 要件

**ヘッダー:** XUser.h

**ライブラリ:** xgameruntime.lib

**サポートされているプラットフォーム:** Windows、Steam Deck、XBOX One 本体、XBOX Series 本体

## 関連項目

[XBOX Live ユーザー特権のクライアント側での使用](/services/xbox-services/fundamentals/identity/privileges/concepts/live-user-privileges-client)

[XUser](/reference/system/xuser/xuser_members)

[XUserResolvePrivilegeWithUiAsync](/reference/system/xuser/functions/xuserresolveprivilegewithuiasync)
