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 主机