public static int GetAccentColor(out UInt32 color)
        {
            ImmersiveColorPreference colorPreference = new ImmersiveColorPreference {
                crStartColor = 0, crAccentColor = 0
            };
            var res = GetUserColorPreference(out colorPreference, false);

            color = colorPreference.crAccentColor & 0x00FFFFFF;

            return(res);
        }
        public static int SetAccentColor(UInt32 color)
        {
            ImmersiveColorPreference colorPreference = new ImmersiveColorPreference {
                crStartColor = 0, crAccentColor = 0
            };

            color &= 0x00FFFFFF;
            colorPreference.crAccentColor = color;
            var res = SetUserColorPreference(ref colorPreference, true);

            return(res);
        }
 private static extern int SetUserColorPreference(ref ImmersiveColorPreference cpcpPrefere, bool fForceCommit);
 private static extern int GetUserColorPreference(out ImmersiveColorPreference cpcpPreference, bool fForceReload);