> ## 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

Determina se um usuário tem um privilégio específico.

## Sintaxe

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

### Parâmetros

*user*   \_In\_\
Tipo: XUserHandle

Um identificador para o usuário cujo privilégio estamos verificando.

*options*   \_In\_\
Tipo: [XUserPrivilegeOptions](/pt-BR/reference/system/xuser/enums/xuserprivilegeoptions)

Opções de privilégio do usuário.

*privilege*   \_In\_\
Tipo: [XUserPrivilege](/pt-BR/reference/system/xuser/enums/xuserprivilege)

O privilégio a ser verificado.

*hasPrivilege*   \_Out\_\
Tipo: bool\*

True se o usuário tiver o privilégio específico; caso contrário, false.

*reason*   \_Out\_opt\_\
Tipo: [XUserPrivilegeDenyReason\*](/pt-BR/reference/system/xuser/enums/xuserprivilegedenyreason)

O motivo pelo qual o usuário não tem o privilégio solicitado.  Esse valor é **apenas** informativo e
pode ser impreciso em muitos cenários.  Esse valor **não deve** ser usado para tomar decisões no seu título.  Em vez disso,
use [XUserResolvePrivilegeWithUiAsync](/pt-BR/reference/system/xuser/functions/xuserresolveprivilegewithuiasync) para resolver todo e qualquer problema de privilégio.

### Valor retornado

Tipo: HRESULT

Código de sucesso ou erro HRESULT.

| Código de retorno | Descrição |
| - | - |
| S\_OK | A operação foi bem-sucedida. |
| E\_GAMEUSER\_RESOLVE\_USER\_ISSUE\_REQUIRED | O usuário deve usar uma interface do usuário para resolver o problema. Chame [XUserResolveIssueWithUiAsync](/pt-BR/reference/system/xuser/functions/xuserresolveissuewithuiasync) para exibir a interface do usuário. |

## Comentários

Determina se o usuário tem um determinado [XUserPrivilege](/pt-BR/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" /> **OBSERVAÇÃO:**  O valor retornado no argumento *reason* é **apenas** informativo e pode ser impreciso em muitos cenários. Esse valor **não deve** ser usado para tomar decisões no seu título.

Se um privilégio for negado (ou seja, *hasPrivilege* for false), o jogo poderá dar ao jogador a oportunidade de resolver o privilégio chamando [XUserResolvePrivilegeWithUiAsync](/pt-BR/reference/system/xuser/functions/xuserresolveprivilegewithuiasync) com o mesmo valor de *privilege*.

Se este método retornar **E\_GAMEUSER\_RESOLVE\_USER\_ISSUE\_REQUIRED**, o jogo poderá dar ao jogador a oportunidade de resolver o problema chamando [XUserResolveIssueWithUiAsync](/pt-BR/reference/system/xuser/functions/xuserresolveissuewithuiasync).

## Requisitos

**Cabeçalho:** XUser.h

**Biblioteca:** xgameruntime.lib

**Plataformas com suporte:** Windows, Steam Deck, consoles da família XBOX One e consoles XBOX Series

## Confira também

[Uso de privilégios de usuário do XBOX Live no lado do cliente](/pt-BR/services/xbox-services/fundamentals/identity/privileges/concepts/live-user-privileges-client)

[XUser](/pt-BR/reference/system/xuser/xuser_members)

[XUserResolvePrivilegeWithUiAsync](/pt-BR/reference/system/xuser/functions/xuserresolveprivilegewithuiasync)


## Related topics

- [XUserCheckPrivilege](/reference/system/xuser/functions/xusercheckprivilege.md)
- [XUserPrivilege](/reference/system/xuser/enums/xuserprivilege.md)
