XSystemGetConsoleId

返回当前设备的主机 ID。

语法

HRESULT XSystemGetConsoleId(  
         size_t consoleIdSize,  
         char* consoleId,  
         size_t* consoleIdUsed  
)  

参数

consoleIdSize _In_
类型:size_t

consoleId 的大小(字节数)。 此值必须等于或大于在 XSystem.h 中定义的 XSystemConsoleIdBytes 常量。

consoleId _Out_writes_bytes_to_(consoleIdSize,*consoleIdUsed)
类型:char*

将接收主机 ID 的字符缓冲区。

consoleIdUsed _Out_opt_
类型:size_t*

返回的 consoleId 缓冲区的大小(字节数)。

返回值

类型:HRESULT

如果成功,则返回 S_OK;否则返回错误代码。 有关错误代码的列表,请参阅错误代码。 如果函数由于 consoleIdSize 设置为小于 XSystemConsoleIdBytes 的值而失败,则返回值设置为 HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)

备注

注意

在时间敏感线程上调用此函数是不安全的。 有关详细信息,请参阅时间敏感线程

主机 ID 唯一标识用于 Xbox Live 的 Xbox 设备,仅用于开发方案。 主机 ID 用于标识用于日志记录和管理目的的主机;例如,捕获分析信息,或者确定在开发环境中重新启动哪个开发工具包。 此函数返回的 ID 与 “设置”\“系统”\“主机信息”中可查看的主机 ID 相匹配。

对于 Xbox 设备,主机 ID 存储在设备上。 如果未找到主机 ID 或者如果没有访问主机 ID 的权限,则主机 ID 默认为 00000000.00000000.00000000.00000000.00。 对于电脑设备,主机 ID 始终默认为 00000000.00000000.00000000.00000000.00

在 RETAIL 中,此函数将始终返回 00000000.00000000.00000000.00000000.00。 如果游戏需要可用于所有情况(包括 retail)的标识符,则有两种情况:

  • 如果应用程序使用单一登录 (SSO),应按 XSTS SSO 令牌的成对 ID,而不是此函数返回的 ID。
  • 否则,即使用 SystemGetAppsificDeviceId 函数。

要求

头文件:XSystem.h

库:xgameruntime.lib

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

另请参阅

激活开发工具包(NDA 主题)要求授权
XSystemGetXboxLiveSandbodId
XSystem