Skip to main content

XUserAddResult

获取由 XUserAddAsync 创建的用户的句柄。

语法

参数

async   _Inout_
类型:XAsyncBlock*
发送给 XUserAddAsync 的异步块。 newUser   _Out_
类型:XUserHandle*
包含新用户的句柄。

返回值

类型:HRESULT HRESULT 成功或错误代码。

注解

XUserAddAsync 启动一项异步操作,将用户添加到游戏中。使用 XUserAddResult 检索该操作的结果。 XUserAddAsync 始终会显示帐户选择器 UI,除非你将 XUserAddOptions::AddDefaultUserSilently 传递给 options 参数。 如果使用 XUserAddOptions::AddDefaultUserSilentlyXUserAddAsync 不会显示 UI。XUserAddOptions::AddDefaultUserSilently 所返回的用户将持续返回,直到该用户注销。如果没有可用的默认用户,XUserAddResult 会返回 E_GAMEUSER_NO_DEFAULT_USER。这表示你必须在不使用 XUserAddOptions::AddDefaultUserSilently 的情况下调用 XUserAddAsync 来选择用户。 如果用户被 XBOX Live 封禁,游戏将无法获取该用户的 XUserHandle。如果使用了 XUserAddOptions::AddDefaultUserSilently 且游戏由被封禁的用户启动,XUserAddResult 将返回 E_GAMEUSER_NO_DEFAULT_USER。否则,如果显示 UI,则要么需要未被封禁的用户登录,要么用户需要取消 UI,此时 XUserAddResult 将返回 E_ABORT。 不能将 XUserAddOptions::AllowGuestsXUserAddOptions::AddDefaultUserSilently 一起使用。来宾不能成为默认用户。无论当前平台是否支持来宾,都可以安全地使用 XUserAddOptions::AllowGuests 对于从 XUsers API 检索到的每个 XUserHandle 句柄,都必须通过调用 XUserCloseHandle 关闭一次。 以下示例演示了如何以异步方式将用户添加到游戏会话中。

要求

头文件: XUser.h 库: xgameruntime.lib 支持的平台: Windows、Steam Deck、XBOX One 系列主机和 XBOX Series 主机

概念文档

另请参阅

XUser XUserAddAsync XUserAddOptions XUserCloseHandle
最后修改于 2026年8月24日