From 6dc1e664b07743e4258cf1be505d21a9a786176a Mon Sep 17 00:00:00 2001 From: qhy040404 Date: Thu, 4 Jan 2024 13:32:43 +0800 Subject: [PATCH] add task register check and delete script if register is failed --- src/Snap.Hutao/Snap.Hutao/Core/Shell/ScheduleTaskInterop.cs | 5 +++++ .../Snap.Hutao/Service/DailyNote/DailyNoteOptions.cs | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Snap.Hutao/Snap.Hutao/Core/Shell/ScheduleTaskInterop.cs b/src/Snap.Hutao/Snap.Hutao/Core/Shell/ScheduleTaskInterop.cs index 635b7f4e..77e5c5b9 100644 --- a/src/Snap.Hutao/Snap.Hutao/Core/Shell/ScheduleTaskInterop.cs +++ b/src/Snap.Hutao/Snap.Hutao/Core/Shell/ScheduleTaskInterop.cs @@ -39,6 +39,11 @@ internal sealed class ScheduleTaskInterop : IScheduleTaskInterop } catch (Exception) { + if (WScriptExists(DailyNoteRefreshScriptName, out string fullPath)) + { + File.Delete(fullPath); + } + return false; } } diff --git a/src/Snap.Hutao/Snap.Hutao/Service/DailyNote/DailyNoteOptions.cs b/src/Snap.Hutao/Snap.Hutao/Service/DailyNote/DailyNoteOptions.cs index 265aa1a3..cb80b85b 100644 --- a/src/Snap.Hutao/Snap.Hutao/Service/DailyNote/DailyNoteOptions.cs +++ b/src/Snap.Hutao/Snap.Hutao/Service/DailyNote/DailyNoteOptions.cs @@ -58,7 +58,11 @@ internal sealed partial class DailyNoteOptions : DbStoreOptions { if (SelectedRefreshTime is not null) { - scheduleTaskInterop.RegisterForDailyNoteRefresh(SelectedRefreshTime.Value); + if (!scheduleTaskInterop.RegisterForDailyNoteRefresh(SelectedRefreshTime.Value)) + { + serviceProvider.GetRequiredService().Warning(SH.ViewModelDailyNoteRegisterTaskFail); + return; + } } } else