BeyondDimension / BeyondDimension/SteamTools

🐛[BUG] 网络重新连接时会导致挂时长失效

Open
#3,576 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C#
Stars
26.8k
Forks
1.7k
PR merge metrics
No merged PRs in 30d

Description

## 请认真检查以下清单中的每一项
- [x] 已经搜索过,没有发现类似的 issue
- [x] 已经搜索过文档,没有发现相关内容
- [x] 已经尝试使用过最新版,问题依旧存在
- [x] 使用的是官方版本(未替换及修改过安装目录程序文件)

### 🐛 描述

在挂时长时,如果网络出现不稳定(如丢包10秒),则在挂的Steam游戏就会灰掉,同时不再计算时长。
但这个时候++还是显示在挂,但实际上已经失效。

### 📷 复现步骤

1. 随便选一个开挂
2. 用防火墙中断Steam的网络
3. 约10秒后恢复

### 📄 日志信息

```
2024-12-13 17:33:12.8229|Error|SteamS|FileToAppInfo filename: C:\Program Files (x86)\Steam\steamapps\appmanifest_1536610.acf |filename=C:\Program Files (x86)\Steam\steamapps\appmanifest_1536610.acf System.InvalidOperationException: This operation on a KVObject can only be used when the value has children.
at ValveKeyValue.KVObject.GetCollectionValue() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\KVObject.cs:line 120
at ValveKeyValue.KVObject.get_Item(String key) in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\KVObject.cs:line 67
at BD.SteamClient.Services.Implementation.SteamServiceImpl.FileToAppInfo(String filename)
2024-12-13 17:33:13.5507|Error|SteamS|FileToAppInfo filename: C:\Program Files (x86)\Steam\steamapps\appmanifest_524220.acf |filename=C:\Program Files (x86)\Steam\steamapps\appmanifest_524220.acf ValveKeyValue.KeyValueException: Unknown escape sequence '\5'.
---> System.IO.InvalidDataException: Unknown escape sequence '\5'.
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadUntil(Char[] terminators) in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 218
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadQuotedStringRaw() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 287
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadStringRaw() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 276
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadString() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 68
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadNextToken() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 51
at ValveKeyValue.Deserialization.KeyValues1.KV1TextReader.ReadObject() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TextReader.cs:line 42
--- End of inner exception stack trace ---
at ValveKeyValue.Deserialization.KeyValues1.KV1TextReader.ReadObject() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TextReader.cs:line 46
at ValveKeyValue.KVSerializer.Deserialize(Stream stream, KVSerializerOptions options) in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\KVSerializer.cs:line 44
at BD.SteamClient.Services.Implementation.SteamServiceImpl.FileToAppInfo(String filename)
2024-12-13 17:33:18.5555|Error|SteamS|FileToAppInfo filename: C:\Program Files (x86)\Steam\steamapps\appmanifest_1536610.acf |filename=C:\Program Files (x86)\Steam\steamapps\appmanifest_1536610.acf System.InvalidOperationException: This operation on a KVObject can only be used when the value has children.
at ValveKeyValue.KVObject.GetCollectionValue() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\KVObject.cs:line 120
at ValveKeyValue.KVObject.get_Item(String key) in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\KVObject.cs:line 67
at BD.SteamClient.Services.Implementation.SteamServiceImpl.FileToAppInfo(String filename)
2024-12-13 17:33:18.5727|Error|SteamS|FileToAppInfo filename: C:\Program Files (x86)\Steam\steamapps\appmanifest_524220.acf |filename=C:\Program Files (x86)\Steam\steamapps\appmanifest_524220.acf ValveKeyValue.KeyValueException: Unknown escape sequence '\5'.
---> System.IO.InvalidDataException: Unknown escape sequence '\5'.
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadUntil(Char[] terminators) in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 218
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadQuotedStringRaw() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 287
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadStringRaw() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 276
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadString() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 68
at ValveKeyValue.Deserialization.KeyValues1.KV1TokenReader.ReadNextToken() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TokenReader.cs:line 51
at ValveKeyValue.Deserialization.KeyValues1.KV1TextReader.ReadObject() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TextReader.cs:line 42
--- End of inner exception stack trace ---
at ValveKeyValue.Deserialization.KeyValues1.KV1TextReader.ReadObject() in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\Deserialization\KeyValues1\KV1TextReader.cs:line 46
at ValveKeyValue.KVSerializer.Deserialize(Stream stream, KVSerializerOptions options) in C:\Code\2023\SteamTools\ref\SteamClient\ref\ValveKeyValue\ValveKeyValue\ValveKeyValue\KVSerializer.cs:line 44
at BD.SteamClient.Services.Implementation.SteamServiceImpl.FileToAppInfo(String filename)
```

### 🖼 截图

### 🚑 其他信息

- 处理器体系结构:x64
- 系统版本号:Windows 10.19044.3086
- 下载渠道:微软商店
- 程序版本:3.0.0-rc13
- 是否包含独立运行时:-

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.