Пример #1
0
        public static void SaveNewRegistryKey(LoadedSettings loadedSettings, RegistryKeyStruct registryKey)
        {
            if (GetCurrentKeyValue(registryKey) == string.Empty) // New Key is invalid.
            {
                MessageBox.Show(Constants.RegistryKeyMessages.SelectRegistryKey,
                                Constants.RegistryKeyMessages.SelectRegistryKeyCaption,
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (CurrentKeyEqualsSavedKey(loadedSettings.MonitoredRegistryKey, registryKey)) // New Key is Old Key.
            {
                return;
            }
            else // Save New Key.
            {
                var confirmMessage = MessageBox.Show(Constants.RegistryKeyMessages.OverrideRegistryKey,
                                                     Constants.RegistryKeyMessages.OverrideRegistryKeyCaption,
                                                     MessageBoxButtons.YesNo, MessageBoxIcon.Hand);

                if (confirmMessage != DialogResult.Yes)
                {
                    return;
                }

                var newRegistryKey = new MonitoredRegistryKey
                {
                    Root   = GetCurrentRoot(registryKey),
                    Subkey = registryKey.Subkey
                };
                loadedSettings.MonitoredRegistryKey = newRegistryKey;
            }
        }
Пример #2
0
        public static void CheckCurrentKeyValue(RegistryKeyStruct registryKey)
        {
            var rootValue = GetCurrentRoot(registryKey);
            var keyValue  = GetCurrentKeyValue(registryKey);

            MessageBox.Show($"{Constants.RegistryKeyMessages.CurrentSelectedKey}" +
                            $"{rootValue}\\{registryKey.Subkey}" +
                            $"{Constants.RegistryKeyMessages.CurrentValueOfKey}" +
                            $"{keyValue}",
                            Constants.RegistryKeyMessages.CurrentValueOfKeyCaption,
                            MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
Пример #3
0
        public static string GetCurrentRoot(RegistryKeyStruct registryKey)
        {
            var userRoot = new StringBuilder();

            if (registryKey.Root.SelectedIndex != -1)
            {
                userRoot.Append(registryKey.Root.SelectedItem);
            }
            if (registryKey.Root2.SelectedIndex != -1)
            {
                userRoot.Append("\\" + registryKey.Root2.SelectedItem);
            }
            if (registryKey.Root3.SelectedIndex != -1)
            {
                userRoot.Append("\\" + registryKey.Root3.SelectedItem);
            }
            return(userRoot.ToString());
        }
Пример #4
0
        private static bool CurrentKeyEqualsSavedKey(MonitoredRegistryKey monitoredKey, RegistryKeyStruct registryKey)
        {
            var currentRoot = GetCurrentRoot(registryKey);

            return(currentRoot == monitoredKey.Root &&
                   registryKey.Subkey == monitoredKey.Subkey);
        }
Пример #5
0
 private static string GetCurrentKeyValue(RegistryKeyStruct registryKey)
 {
     return((string)Registry.GetValue(GetCurrentRoot(registryKey), registryKey.Subkey, ""));
 }