diff --git a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx index 6621ff90..8d22f31f 100644 --- a/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx +++ b/src/Snap.Hutao/Snap.Hutao/Resource/Localization/SH.resx @@ -1010,6 +1010,9 @@ 替换:{0} + + 在读取本地 Package Version 时遇到问题,修复游戏可能会有所帮助 + 重命名数据文件夹名称失败 diff --git a/src/Snap.Hutao/Snap.Hutao/Service/Game/LaunchOptions.cs b/src/Snap.Hutao/Snap.Hutao/Service/Game/LaunchOptions.cs index fb8f68df..c5b2fa2e 100644 --- a/src/Snap.Hutao/Snap.Hutao/Service/Game/LaunchOptions.cs +++ b/src/Snap.Hutao/Snap.Hutao/Service/Game/LaunchOptions.cs @@ -245,6 +245,7 @@ internal sealed class LaunchOptions : DbStoreOptions set => SetOption(ref disableFog, SettingEntry.LaunchDisableFog, value); } + [NotNull] public NameValue? Monitor { get diff --git a/src/Snap.Hutao/Snap.Hutao/Service/Game/Package/PackageConverter.cs b/src/Snap.Hutao/Snap.Hutao/Service/Game/Package/PackageConverter.cs index 91d23eab..43da232f 100644 --- a/src/Snap.Hutao/Snap.Hutao/Service/Game/Package/PackageConverter.cs +++ b/src/Snap.Hutao/Snap.Hutao/Service/Game/Package/PackageConverter.cs @@ -178,9 +178,16 @@ internal sealed partial class PackageConverter private async ValueTask GetLocalItemsAsync(string gameFolder) { - using (FileStream localSteam = File.OpenRead(Path.Combine(gameFolder, PackageVersion))) + try { - return await GetVersionItemsAsync(localSteam).ConfigureAwait(false); + using (FileStream localSteam = File.OpenRead(Path.Combine(gameFolder, PackageVersion))) + { + return await GetVersionItemsAsync(localSteam).ConfigureAwait(false); + } + } + catch (JsonException ex) + { + throw HutaoException.Throw(SH.ServiceGamePackageReadLocalPackageVerionFailed, ex); } }