> ## Documentation Index
> Fetch the complete documentation index at: https://docs.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](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilegeoptions.md)

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

*privilege*   \_In\_\
Type: [XUserPrivilege](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilege.md)

確認する特権です。

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

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

*reason*   \_Out\_opt\_\
Type: [XUserPrivilegeDenyReason\*](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilegedenyreason.md)

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

### 戻り値

Type: HRESULT

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

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

## 解説

ユーザーが指定された [XUserPrivilege](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilege.md) を持っているかどうかを判定します。

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

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

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

## 要件

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

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

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

## 関連項目

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

[XUser](https://docs.xbox.com/ja-jp/reference/system/xuser/xuser_members.md)

[XUserResolvePrivilegeWithUiAsync](https://docs.xbox.com/ja-jp/reference/system/xuser/functions/xuserresolveprivilegewithuiasync.md)


## Related topics

- [XUserPrivilege](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilege.md)
- [XUserPrivilegeOptions](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilegeoptions.md)
- [XUserPrivilegeDenyReason](https://docs.xbox.com/ja-jp/reference/system/xuser/enums/xuserprivilegedenyreason.md)
- [XBOX services ユーザー特権のクライアント側での使用](https://docs.xbox.com/ja-jp/services/xbox-services/fundamentals/identity/privileges/concepts/live-user-privileges-client.md)
- [XR-045 XBOX network とアカウント特権](https://docs.xbox.com/ja-jp/publishing/certification/xr/xr-045.md)
