mirror of
https://jihulab.com/DGP-Studio/Snap.Hutao.git
synced 2025-11-19 21:02:53 +08:00
fix server convert set game path null
This commit is contained in:
@@ -69,6 +69,7 @@ SHELL_LINK_DATA_FLAGS
|
|||||||
IMemoryBufferByteAccess
|
IMemoryBufferByteAccess
|
||||||
|
|
||||||
// Const value
|
// Const value
|
||||||
|
E_FAIL
|
||||||
INFINITE
|
INFINITE
|
||||||
RPC_E_WRONG_THREAD
|
RPC_E_WRONG_THREAD
|
||||||
MAX_PATH
|
MAX_PATH
|
||||||
|
|||||||
@@ -2,9 +2,7 @@
|
|||||||
// Licensed under the MIT license.
|
// Licensed under the MIT license.
|
||||||
|
|
||||||
using Microsoft.UI.Xaml;
|
using Microsoft.UI.Xaml;
|
||||||
using Snap.Hutao.Control;
|
|
||||||
using Snap.Hutao.Core.Windowing;
|
using Snap.Hutao.Core.Windowing;
|
||||||
using Windows.Foundation;
|
|
||||||
using Windows.Win32.UI.WindowsAndMessaging;
|
using Windows.Win32.UI.WindowsAndMessaging;
|
||||||
|
|
||||||
namespace Snap.Hutao;
|
namespace Snap.Hutao;
|
||||||
|
|||||||
@@ -4,10 +4,11 @@
|
|||||||
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
||||||
xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10"
|
xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10"
|
||||||
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
|
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
|
||||||
|
xmlns:desktop6="http://schemas.microsoft.com/appx/manifest/desktop/windows10/6"
|
||||||
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
||||||
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
|
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
|
||||||
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
|
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
|
||||||
IgnorableNamespaces="com uap desktop rescap mp">
|
IgnorableNamespaces="com uap desktop desktop6 rescap mp">
|
||||||
|
|
||||||
<Identity
|
<Identity
|
||||||
Name="60568DGPStudio.SnapHutao"
|
Name="60568DGPStudio.SnapHutao"
|
||||||
@@ -18,6 +19,7 @@
|
|||||||
<DisplayName>Snap Hutao</DisplayName>
|
<DisplayName>Snap Hutao</DisplayName>
|
||||||
<PublisherDisplayName>DGP Studio</PublisherDisplayName>
|
<PublisherDisplayName>DGP Studio</PublisherDisplayName>
|
||||||
<Logo>Assets\StoreLogo.png</Logo>
|
<Logo>Assets\StoreLogo.png</Logo>
|
||||||
|
<desktop6:RegistryWriteVirtualization>disabled</desktop6:RegistryWriteVirtualization>
|
||||||
</Properties>
|
</Properties>
|
||||||
|
|
||||||
<Dependencies>
|
<Dependencies>
|
||||||
@@ -64,5 +66,6 @@
|
|||||||
|
|
||||||
<Capabilities>
|
<Capabilities>
|
||||||
<rescap:Capability Name="runFullTrust"/>
|
<rescap:Capability Name="runFullTrust"/>
|
||||||
|
<rescap:Capability Name="unvirtualizedResources"/>
|
||||||
</Capabilities>
|
</Capabilities>
|
||||||
</Package>
|
</Package>
|
||||||
|
|||||||
@@ -4,10 +4,11 @@
|
|||||||
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
||||||
xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10"
|
xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10"
|
||||||
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
|
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
|
||||||
|
xmlns:desktop6="http://schemas.microsoft.com/appx/manifest/desktop/windows10/6"
|
||||||
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
||||||
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
|
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
|
||||||
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
|
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
|
||||||
IgnorableNamespaces="com uap desktop rescap mp">
|
IgnorableNamespaces="com uap desktop desktop6 rescap mp">
|
||||||
|
|
||||||
<Identity
|
<Identity
|
||||||
Name="60568DGPStudio.SnapHutaoDev"
|
Name="60568DGPStudio.SnapHutaoDev"
|
||||||
@@ -18,6 +19,7 @@
|
|||||||
<DisplayName>Snap Hutao Dev</DisplayName>
|
<DisplayName>Snap Hutao Dev</DisplayName>
|
||||||
<PublisherDisplayName>DGP Studio</PublisherDisplayName>
|
<PublisherDisplayName>DGP Studio</PublisherDisplayName>
|
||||||
<Logo>Assets\StoreLogo.png</Logo>
|
<Logo>Assets\StoreLogo.png</Logo>
|
||||||
|
<desktop6:RegistryWriteVirtualization>disabled</desktop6:RegistryWriteVirtualization>
|
||||||
</Properties>
|
</Properties>
|
||||||
|
|
||||||
<Dependencies>
|
<Dependencies>
|
||||||
@@ -64,5 +66,6 @@
|
|||||||
|
|
||||||
<Capabilities>
|
<Capabilities>
|
||||||
<rescap:Capability Name="runFullTrust"/>
|
<rescap:Capability Name="runFullTrust"/>
|
||||||
|
<rescap:Capability Name="unvirtualizedResources"/>
|
||||||
</Capabilities>
|
</Capabilities>
|
||||||
</Package>
|
</Package>
|
||||||
|
|||||||
@@ -23,6 +23,9 @@ using Snap.Hutao.Web.Hoyolab.SdkStatic.Hk4e.Launcher;
|
|||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using Windows.Win32;
|
||||||
|
using Windows.Win32.Foundation;
|
||||||
|
using static Windows.Win32.PInvoke;
|
||||||
|
|
||||||
namespace Snap.Hutao.ViewModel.Game;
|
namespace Snap.Hutao.ViewModel.Game;
|
||||||
|
|
||||||
@@ -42,6 +45,7 @@ internal sealed partial class LaunchGameViewModel : Abstraction.ViewModel
|
|||||||
private readonly IContentDialogFactory contentDialogFactory;
|
private readonly IContentDialogFactory contentDialogFactory;
|
||||||
private readonly LaunchStatusOptions launchStatusOptions;
|
private readonly LaunchStatusOptions launchStatusOptions;
|
||||||
private readonly IGameLocatorFactory gameLocatorFactory;
|
private readonly IGameLocatorFactory gameLocatorFactory;
|
||||||
|
private readonly ILogger<LaunchGameViewModel> logger;
|
||||||
private readonly IProgressFactory progressFactory;
|
private readonly IProgressFactory progressFactory;
|
||||||
private readonly IInfoBarService infoBarService;
|
private readonly IInfoBarService infoBarService;
|
||||||
private readonly ResourceClient resourceClient;
|
private readonly ResourceClient resourceClient;
|
||||||
@@ -261,7 +265,7 @@ internal sealed partial class LaunchGameViewModel : Abstraction.ViewModel
|
|||||||
{
|
{
|
||||||
await taskContext.SwitchToMainThreadAsync();
|
await taskContext.SwitchToMainThreadAsync();
|
||||||
GamePathEntries = launchOptions.GetGamePathEntries(out GamePathEntry? entry);
|
GamePathEntries = launchOptions.GetGamePathEntries(out GamePathEntry? entry);
|
||||||
UpdateSelectedGamePathEntry(entry, false);
|
UpdateSelectedGamePathEntry(entry, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -279,6 +283,13 @@ internal sealed partial class LaunchGameViewModel : Abstraction.ViewModel
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
if (ex is Win32Exception win32Exception && win32Exception.HResult == HRESULT.E_FAIL)
|
||||||
|
{
|
||||||
|
// User canceled the operation. ignore
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
logger.LogCritical(ex, "Launch failed");
|
||||||
infoBarService.Error(ex);
|
infoBarService.Error(ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user