From a4fd59df086a3efc5a0a17ac1509f926ba0ae9b4 Mon Sep 17 00:00:00 2001 From: Lightczx <1686188646@qq.com> Date: Wed, 31 Jan 2024 13:32:55 +0800 Subject: [PATCH] add msix corruted message --- .github/workflows/Publish.yml | 2 +- .../Snap.Hutao.Deployment.Runtime.nuspec | 2 +- .../Snap.Hutao.Deployment.exe | Bin 15594660 -> 15594660 bytes .../WindowsAppSDKDependency.cs | 54 ++++++++++++------ 4 files changed, 39 insertions(+), 19 deletions(-) diff --git a/.github/workflows/Publish.yml b/.github/workflows/Publish.yml index f706132..b2e2806 100644 --- a/.github/workflows/Publish.yml +++ b/.github/workflows/Publish.yml @@ -7,7 +7,7 @@ on: jobs: publish: - runs-on: windows-latest + runs-on: ubuntu-latest steps: - name: Checkout Repository diff --git a/src/Snap.Hutao.Deployment.Runtime/Snap.Hutao.Deployment.Runtime.nuspec b/src/Snap.Hutao.Deployment.Runtime/Snap.Hutao.Deployment.Runtime.nuspec index 2dd864a..97f91a7 100644 --- a/src/Snap.Hutao.Deployment.Runtime/Snap.Hutao.Deployment.Runtime.nuspec +++ b/src/Snap.Hutao.Deployment.Runtime/Snap.Hutao.Deployment.Runtime.nuspec @@ -2,7 +2,7 @@ Snap.Hutao.Deployment.Runtime - 1.14.0 + 1.15.0 DGP Studio true false diff --git a/src/Snap.Hutao.Deployment.Runtime/Snap.Hutao.Deployment.exe b/src/Snap.Hutao.Deployment.Runtime/Snap.Hutao.Deployment.exe index 1d103d353af2a15246fa576336f01def3db77dd1..16bc90e6c25782f47db1ca48f7b9e3d8531b0bb1 100644 GIT binary patch delta 22767 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 xeDgwpovEIcx$ni>`u0w@gRK1wECYhYbJ# delta 22588 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 E0a#_dhX4Qo diff --git a/src/Snap.Hutao.Deployment/WindowsAppSDKDependency.cs b/src/Snap.Hutao.Deployment/WindowsAppSDKDependency.cs index 7ccd615..6ad5e91 100644 --- a/src/Snap.Hutao.Deployment/WindowsAppSDKDependency.cs +++ b/src/Snap.Hutao.Deployment/WindowsAppSDKDependency.cs @@ -20,30 +20,50 @@ internal static partial class WindowsAppSDKDependency public static async Task EnsureAsync(string packagePath) { using FileStream packageStream = File.OpenRead(packagePath); - using ZipArchive package = new(packageStream, ZipArchiveMode.Read); - - (string packageName, string msixVersion) = await ExtractRuntimePackageNameAndMsixMinVersionFromAppManifestAsync(package).ConfigureAwait(false); - if (string.IsNullOrEmpty(packageName) || string.IsNullOrEmpty(msixVersion)) + ZipArchive package = default!; + try { - Console.WriteLine("No Windows App Runtime version found in Msix/AppxManifest.xml"); - return; + package = new(packageStream, ZipArchiveMode.Read); + } + catch (InvalidDataException) + { + Console.WriteLine("Msix Package corrupted, please re-launch Deployment and try again"); + try + { + File.Delete(packagePath); + } + catch + { + } + + throw; } - if (await CheckRuntimeInstalledAndVerifyAsync(packageName, msixVersion).ConfigureAwait(false)) + using (package) { - return; - } + (string packageName, string msixVersion) = await ExtractRuntimePackageNameAndMsixMinVersionFromAppManifestAsync(package).ConfigureAwait(false); + if (string.IsNullOrEmpty(packageName) || string.IsNullOrEmpty(msixVersion)) + { + Console.WriteLine("No Windows App Runtime version found in Msix/AppxManifest.xml"); + return; + } - string sdkVersion = await ExtractSDKVersionFromDepsJsonAsync(package).ConfigureAwait(false); + if (await CheckRuntimeInstalledAndVerifyAsync(packageName, msixVersion).ConfigureAwait(false)) + { + return; + } - if (string.IsNullOrEmpty(sdkVersion)) - { - Console.WriteLine("No Windows App SDK version found in Msix/Snap.Hutao.deps.json"); - return; - } + string sdkVersion = await ExtractSDKVersionFromDepsJsonAsync(package).ConfigureAwait(false); - Console.WriteLine("Start downloading SDK installer..."); - await DownloadWindowsAppRuntimeInstallAndInstallAsync(sdkVersion).ConfigureAwait(false); + if (string.IsNullOrEmpty(sdkVersion)) + { + Console.WriteLine("No Windows App SDK version found in Msix/Snap.Hutao.deps.json"); + return; + } + + Console.WriteLine("Start downloading SDK installer..."); + await DownloadWindowsAppRuntimeInstallAndInstallAsync(sdkVersion).ConfigureAwait(false); + }; } private static async Task ExtractSDKVersionFromDepsJsonAsync(ZipArchive package)