mirror of
https://jihulab.com/DGP-Studio/Snap.Hutao.git
synced 2025-11-19 21:02:53 +08:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
09a2d930be |
@@ -41,39 +41,33 @@ internal sealed partial class DiscordService : IDiscordService, IDisposable
|
|||||||
|
|
||||||
private bool IsSupported()
|
private bool IsSupported()
|
||||||
{
|
{
|
||||||
try
|
// Actually requires a discord client to be running on Windows platform.
|
||||||
{
|
// If not, discord core creation code will throw.
|
||||||
// Actually requires a discord client to be running on Windows platform.
|
Process[] discordProcesses = Process.GetProcessesByName("Discord");
|
||||||
// If not, discord core creation code will throw.
|
|
||||||
Process[] discordProcesses = Process.GetProcessesByName("Discord");
|
|
||||||
|
|
||||||
if (discordProcesses.Length <= 0)
|
if (discordProcesses.Length <= 0)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (Process process in discordProcesses)
|
||||||
|
{
|
||||||
|
try
|
||||||
{
|
{
|
||||||
|
_ = process.Handle;
|
||||||
|
}
|
||||||
|
catch (Exception)
|
||||||
|
{
|
||||||
|
if (!isInitialized)
|
||||||
|
{
|
||||||
|
isInitialized = true;
|
||||||
|
infoBarService.Warning(SH.ServiceDiscordActivityElevationRequiredHint);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (Process process in discordProcesses)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
_ = process.Handle;
|
|
||||||
}
|
|
||||||
catch (Exception)
|
|
||||||
{
|
|
||||||
if (!isInitialized)
|
|
||||||
{
|
|
||||||
infoBarService.Warning(SH.ServiceDiscordActivityElevationRequiredHint);
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
isInitialized = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -23,8 +23,15 @@ internal sealed class LaunchExecutionBetterGenshinImpactAutomationHandlder : ILa
|
|||||||
Uri betterGenshinImpactUri = "bettergi://start".ToUri();
|
Uri betterGenshinImpactUri = "bettergi://start".ToUri();
|
||||||
if (await Launcher.QueryUriSupportAsync(betterGenshinImpactUri, LaunchQuerySupportType.Uri) is LaunchQuerySupportStatus.Available)
|
if (await Launcher.QueryUriSupportAsync(betterGenshinImpactUri, LaunchQuerySupportType.Uri) is LaunchQuerySupportStatus.Available)
|
||||||
{
|
{
|
||||||
context.Logger.LogInformation("Waiting game window to be ready");
|
try
|
||||||
context.Process.WaitForInputIdle();
|
{
|
||||||
|
context.Logger.LogInformation("Waiting game window to be ready");
|
||||||
|
context.Process.WaitForInputIdle();
|
||||||
|
}
|
||||||
|
catch (InvalidOperationException)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
context.Logger.LogInformation("Launching BetterGI");
|
context.Logger.LogInformation("Launching BetterGI");
|
||||||
await Launcher.LaunchUriAsync(betterGenshinImpactUri);
|
await Launcher.LaunchUriAsync(betterGenshinImpactUri);
|
||||||
|
|||||||
Reference in New Issue
Block a user