XUserCheckPrivilege

确定用户是否具有特定权限。

语法

HRESULT XUserCheckPrivilege(  
         XUserHandle user,  
         XUserPrivilegeOptions options,  
         XUserPrivilege privilege,  
         bool* hasPrivilege,  
         XUserPrivilegeDenyReason* reason  
)  

参数

user _In_
类型:XUserHandle

我们正在检查其权限的用户的句柄。

options _In_
类型:XUserPrivilegeOptions

用户权限选项。

privilege _In_
类型:XUserPrivilege

要为其检查的权限。

hasPrivilege _Out_
类型:bool*

如果用户具有特定权限,则为 true,否则为 false。

reason _Out_opt_
类型:XUserPrivilegeDenyReason*

用户没有请求的权限的原因。 此值 仅供 参考,在许多情况下可能不准确。 此值 不应 用于在游戏中做出决策。 请改用 XUserResolvePrivilegeWithUiAsync 来解决任何和所有特权问题。

返回值

类型:HRESULT

HRESULT 成功或错误代码。

返回代码 说明
S_OK 操作成功。
E_GAMEUSER_RESOLVE_USER_ISSUE_REQUIRED 用户必须使用 UI 来解决问题。 调用 XUserResolveIssueWithUiAsync 以向用户显示 UI。

备注

确定用户是否具有给定的 XUserPrivilege

警报 注意:hasPrivilege 自变量中返回的值仅供参考,在很多情况下可能不准确。 此值 不应 用于在游戏中做出决策。

如果权限被拒绝(即 hasPrivilege 为 false),则游戏可以通过使用相同的特权值调用 XUserResolvePrivilegeWithUiAsync 来为玩家提供解决权限的机会。

如果此方法返回 E_GAMEUSER_RESOLVE_USER_ISSUE_REQUIRED,游戏可以通过调用 XUserResolveIssueWithUiAsync 为玩家提供解决问题的机会。

要求

头文件:XUser.h

库:xgameruntime.lib

支持平台:Windows、Xbox One 系列主机和 Xbox Series 主机

另请参阅

Xbox Live 用户权限在客户端的使用

XUser

XUserResolvePrivilegeWithUiAsync