diff --git a/SpineViewer/Natives/Shell32.cs b/SpineViewer/Natives/Shell32.cs index a53286c..1a08aa6 100644 --- a/SpineViewer/Natives/Shell32.cs +++ b/SpineViewer/Natives/Shell32.cs @@ -14,10 +14,15 @@ namespace SpineViewer.Natives /// public static class Shell32 { - public const uint SHCNE_ASSOCCHANGED = 0x08000000; - public const uint SHCNF_IDLIST = 0x0000; + private const uint SHCNE_ASSOCCHANGED = 0x08000000; + private const uint SHCNF_IDLIST = 0x0000; [DllImport("shell32.dll")] - public static extern void SHChangeNotify(uint wEventId, uint uFlags, IntPtr dwItem1, IntPtr dwItem2); + private static extern void SHChangeNotify(uint wEventId, uint uFlags, IntPtr dwItem1, IntPtr dwItem2); + + public static void NotifyAssociationChanged() + { + SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, IntPtr.Zero, IntPtr.Zero); + } } } diff --git a/SpineViewer/ViewModels/MainWindow/PreferenceViewModel.cs b/SpineViewer/ViewModels/MainWindow/PreferenceViewModel.cs index 950c304..a5e3adc 100644 --- a/SpineViewer/ViewModels/MainWindow/PreferenceViewModel.cs +++ b/SpineViewer/ViewModels/MainWindow/PreferenceViewModel.cs @@ -310,7 +310,7 @@ namespace SpineViewer.ViewModels.MainWindow Registry.CurrentUser.DeleteSubKeyTree($@"Software\Classes\{App.ProgId}", false); } - Shell32.SHChangeNotify(Shell32.SHCNE_ASSOCCHANGED, Shell32.SHCNF_IDLIST, IntPtr.Zero, IntPtr.Zero); + Shell32.NotifyAssociationChanged(); }); } }