ISteamUGC::GetWorkshopEULAStatus:查询工坊协议状态
GetWorkshopEULAStatus 用于异步查询当前应用的创意工坊协议状态,以便上传工具决定是否继续提示用户。本页面向 Steamworks 游戏和工具开发者,说明接口声明、参数、返回方式以及与工坊内容生命周期相关的注意事项。
函数声明
客户端通过初始化成功后的 SteamUGC() 接口访问;游戏服务器使用服务器上下文的 SteamGameServerUGC()。以下声明按本次核对的官方接口整理,编译时应以项目实际使用的 SDK 头文件为准。
SteamAPICall_t GetWorkshopEULAStatus();
参数
此函数没有参数;它使用当前应用和当前 Steam 上下文。
返回值与完成方式
返回 SteamAPICall_t;通过 WorkshopEULAStatus_t 检查结果、应用 ID、版本、签署时间和状态标记。
调用结果由 Steam 异步交付。应在对象有效期间保存对应的结果处理器,并持续运行 Steam 回调;还要区分传输失败与结果结构中的操作失败。
调用规则与排查
不要只看 m_bAccepted:接受过旧版协议时它仍可能为 true,应同时检查 m_bNeedsAction,确认是否需要处理当前版本。需要显示协议时使用 ShowWorkshopEULA,并由用户自行决定是否接受。
使用场景
例如,上传工具希望显示协议处理状态时,可查询后等待结果,并将该结果与当前应用对应。若状态表示仍需用户处理,提供展示协议的入口;用户返回后重新查询。仅依据曾接受过某版协议的标记判断当前版本已处理,可能导致遗漏后续更新。
相关接口
ShowWorkshopEULA。回调、状态与类型参考整理了相关结构体和枚举,适合在处理结果时对照使用。
站内字段参考
资料依据:Steamworks ISteamUGC:GetWorkshopEULAStatus。资料核对日期:2026 年 11 月 4 日。