XGameStreamingGetServerLocationName
获取流式处理服务器的数据中心位置名称。
语法
HRESULT XGameStreamingGetServerLocationName(
size_t serverLocationNameSize,
char* serverLocationName
)
参数
serverLocationNameSize _In_
类型:size_t
要返回的数据中心位置名称的最大大小。
应通过调用 XGameStreamingGetServerLocationNameSize 来检索 serverLocationNameSize
。
serverLocationName _Out_writes_z_(serverLocationNameSize)
类型:char*
具有托管流式处理 Xbox 服务器数据中心的 Azure 区域名称。
返回值
类型:HRESULT
如果成功,则返回 S_OK;否则返回错误代码。
可能的错误
错误代码 | 错误值 | 错误原因 |
---|---|---|
E_GAMESTREAMING_NOT_INITIALIZED | 0x89245400 | XGameStreaming 运行时尚未初始化。 在调用其他 API 之前,请先调用 XGameStreamingInitialize。 |
E_NOT_SUFFICIENT_BUFFER | 0x7A | serverLocationSize 不够大,无法容纳服务器位置的完整名称(及其终止 null 字符)。 |
E_GAMESTREAMING_NO_DATACENTER | 0x89245403 | 当前计算机未在数据中心运行。 |
有关错误代码的列表,请参阅错误代码。
备注
调用此函数之前,可调用 xStreamStreamingGetServerLocationNameSize 以获取服务器位置名称的大小,以便可以分配缓冲区。
如果游戏希望连接到托管在 Azure PlayFab 多人游戏服务器上的游戏服务器,并且需要游戏服务器的最小延迟,则可以使用 Azure 区域。
当玩家使用主机流式处理从常用 Xbox 流式处理游戏时,会发生 E_GAMESTREAMING_NO_DATACENTER
错误。 如果尚未设置替代值,Xbox 开发人员工具包上也可能会出现此错误。
在 Xbox 开发者工具包上,可以在“开发者主页”的“流式处理”选项卡中,可以设置应在测试期间返回的 serverLocationName
。
要求
头文件:xgamestreaming.h
库:xgameruntime.lib
支持平台:Windows、Xbox One 系列主机和 Xbox Series 主机