7.8 KiB
Steam API DLL 缺失
- 分类:blocking
- Issue 数:4
0.7.2c最近一天次数:23- 设备数合计:20
- 报告生成:2026-06-05 12:00:37
Issue
| Issue | 类型 | 次数 | 设备 | 最近上报 | 消息 |
|---|---|---|---|---|---|
| 27cb809bdb0fe2222294c7be7ce6bda2 | UnityLogError | 1 | 1 | 2026-06-04 16:06:52 | [UIOutsideMultiplay] LeaveRoom exception: System.DllNotFoundException: Unable to load DLL 'steam_api64'. Tried the load the following dynamic libraries: Unable to load dynamic library 'steam_api64' because of 'Failed to open the requested dynamic library (0x06000000) - 找不到指定的模組。 (WinError:0000007e) at Steamworks.CSteamAPIContext.Init () [0x00000] in <000000… |
| f488d5aa4b1e1b4e2f9cf6329f44773c | UnityLogError | 1 | 1 | 2026-06-04 16:06:42 | EventManager Publish listener failed: System.DllNotFoundException: Unable to load DLL 'steam_api64'. Tried the load the following dynamic libraries: Unable to load dynamic library 'steam_api64' because of 'Failed to open the requested dynamic library (0x06000000) - 找不到指定的模組。 (WinError:0000007e) at Steamworks.CSteamAPIContext.Init () … |
| a2953c646aa11a95f841d94c914fc7e4 | DllNotFoundException | 7 | 5 | 2026-06-04 14:13:49 | Unable to load DLL 'steam_api64'. Tried the load the following dynamic libraries: Unable to load dynamic library 'steam_api64' because of 'Failed to open the requested dynamic library (0x06000000) - 找不到指定的模块。 (WinError:0000007e) |
| 7f89cba132f64d7a6c3afed5306ea1dc | UnityLogError | 14 | 13 | 2026-06-04 14:13:20 | EventManager Publish listener failed: System.DllNotFoundException: Unable to load DLL 'steam_api64'. Tried the load the following dynamic libraries: Unable to load dynamic library 'steam_api64' because of 'Failed to open the requested dynamic library (0x06000000) - 找不到指定的模块。 (WinError:0000007e) at Steamworks.CSteamAPIContext.Init () … |
设备上下文
27cb809bdb0fe2222294c7be7ce6bda2
- 样本 CrashId:
472161f7727944f3bd83b749d3e12369 - 样本 DeviceId:
a4-6b-b6-09-62-62 - CrashSight 附带日志文件:
False
该样本未能从 API 取得可用 device 上下文,根因判断保持不完整。
f488d5aa4b1e1b4e2f9cf6329f44773c
- 样本 CrashId:
ec9a6b2bd0a248efbd47aa65006068c0 - 样本 DeviceId:
a4-6b-b6-09-62-62 - CrashSight 附带日志文件:
False
该样本未能从 API 取得可用 device 上下文,根因判断保持不完整。
a2953c646aa11a95f841d94c914fc7e4
- 样本 CrashId:
6cb6865ff58a4c738d5502accf500a83 - 样本 DeviceId:
74-d4-dd-d1-dc-ec - CrashSight 附带日志文件:
False
最终上报内容:
DllNotFoundException
Unable to load DLL 'steam_api64'. Tried the load the following dynamic libraries: Unable to load dynamic library 'steam_api64' because of 'Failed to open the requested dynamic library (0x06000000) - 找不到指定的模块。 (WinError:0000007e)
Steamworks.CSteamAPIContext.Init () (at <00000000000000000000000000000000>.0)
Steamworks.InteropHelp.TestIfAvailableClient () (at <00000000000000000000000000000000>.0)
Steamworks.SteamMatchmaking.AddRequestLobbyListDistanceFilter (Steamworks.ELobbyDistanceFilter eLobbyDistanceFilter) (at <00000000000000000000000000000000>.0)
bag.jdo (Steamworks.ELobbyDistanceFilter a, System.Int32 b, System.String c, System.String d, System.Boolean e) (at <00000000000000000000000000000000>.0)
TH1_UI.View.Outside.UIOutsideMultiplayView.dio () (at <00000000000000000000000000000000>.0)
Steamworks.CSteamAPIContext.Init () (at <00000000000000000000000000000000>.0)
Steamworks.InteropHelp.TestIfAvailableClient () (at <00000000000000000000000000000000>.0)
Steamworks.SteamMatchmaking.AddRequestLobbyListDistanceFilter (Steamworks.ELobbyDistanceFilter eLobbyDistanceFilter) (at <00000000000000000000000000000000>.0)
bag.jdo (Steamworks.ELobbyDistanceFilter a, System.Int32 b, System.String c, System.String d, System.Boolean e) (at <00000000000000000000000000000000>.0)
TH1_UI.View.Outside.UIOutsideMultiplayView.dio () (at <00000000000000000000000000000000>.0)
Steamworks.CSteamAPIContext.Init () (at <00000000000000000000000000000000>.0)
Steamworks.InteropHelp.TestIfAvailableClient () (at <00000000000000000000000000000000>.0)
Steamworks.SteamMatchmaking.AddRequestLobbyListDistanceFilter (Steamworks.ELobbyDistanceFilter eLobbyDistanceFilter) (at <00000000000000000000000000000000>.0)
bag.jdo (Steamworks.ELobbyDistanceFilter a, System.Int32 b, System.String c, System.String d, System.Boolean e) (at <00000000000000000000000000000000>.0)
TH1_UI.View.Outside.UIOutsideMultiplayView.dio () (at <00000000000000000000000000000000>.0)
DllNotFoundException
Unable to load DLL 'steam_api64'. Tried the load the following dynamic libraries: Unable to load dynamic library 'steam_api64' because of 'Failed to open the requested dynamic library (0x0600
...
同设备最近 ERROR 上报序列:
| 时间 | Issue | 类型 | 消息 |
|---|---|---|---|
| 2026-06-04 19:41:09 | 83c5b5b46447ac4e50101f1148f4ab70 | ||
| 2026-06-04 19:01:03 | 10d4df507992c1a66a90693df20b21c3 | ||
| 2026-06-04 18:13:27 | 95acc470976c3634591ff4405b96d3b0 | ||
| 2026-06-04 14:26:06 | 10d4df507992c1a66a90693df20b21c3 | ||
| 2026-06-04 14:13:49 | a2953c646aa11a95f841d94c914fc7e4 | ||
| 2026-06-04 14:13:32 | a2953c646aa11a95f841d94c914fc7e4 | ||
| 2026-06-04 14:13:20 | 7f89cba132f64d7a6c3afed5306ea1dc |
代码位置
Unity/Assets/Scripts\TH1_UI\View\Outside\UIOutsideMultiplayView.cs:323: OnRefreshLobbyClicked();Unity/Assets/Scripts\TH1_UI\View\Outside\UIOutsideMultiplayView.cs:1415: OnRefreshLobbyClicked();Unity/Assets/Scripts\TH1_UI\View\Outside\UIOutsideMultiplayView.cs:1977: _lobby.SearchPublicLobbies();Unity/Assets/Scripts\TH1_Logic\Steam\SteamLobbyManager.cs:1155: _cbLobbyMatchList = Callback<LobbyMatchList_t>.Create(OnLobbyMatchListCallback);Unity/Assets/Scripts\TH1_Logic\Steam\SteamLobbyManager.cs:1158: SteamMatchmaking.AddRequestLobbyListDistanceFilter(filter);
解码结论
解码后的异常入口同样是多人大厅刷新链路,但异常类型是 System.DllNotFoundException: Unable to load DLL 'steam_api64',栈从 Steamworks.CSteamAPIContext.Init 进入 SteamMatchmaking.AddRequestLobbyListDistanceFilter,再回到 SteamLobbyManager.SearchPublicLobbies 和 UIOutsideMultiplayView.OnRefreshLobbyClicked。
四个 Issue 的语言环境略有差异(简体/繁体模块缺失提示),但同属 Steamworks 动态库不可用时 UI 仍调用 Steam API。与 Steamworks 未初始化 家族的区别是这里底层 native DLL 直接缺失或无法加载;合并依据是相同 Steam API 初始化路径和相同多人大厅触发点。它会造成多人入口/刷新/退出房间路径阻断,建议优先在进入多人 UI 和搜索大厅前统一检查 Steamworks/DLL 可用状态,并给出非 CrashSight 异常路径。
判断
这是阻断类,因为 CrashSight 行或 LogError 包装内容中存在真实异常类型、异常对象或调用栈;不是单纯业务状态诊断。
本批样本 hasLogFile=false,API 能拿到的是最终上报内容和同设备 ERROR 上报序列,不包含完整 Unity 运行日志;根因上下文按可见上报链路记录。
建议
优先按次数最高的 Issue 样本复现并修复;若同设备上报序列中出现更早的异常,应以更早异常作为源头处理。