Exemplo n.º 1
0
        private void RenameRegistryKey()
        {
            Logger.Write("Rename Registry.");

            try
            {
                if (RegKey.EndsWith(@"\"))
                {
                    RegKey = RegKey.Substring(0, RegKey.Length - 1);
                }

                Logger.Write("Will try to rename " + RegHive + "\\" + RegKey + " into : " + RegName);

                RegistryKey parentKey  = GetRegistryHive().OpenSubKey(RegKey.Substring(0, RegKey.LastIndexOf(@"\")), true);
                string      subKeyName = RegKey.Substring(RegKey.LastIndexOf(@"\") + 1);

                CopyKey(parentKey, subKeyName, RegName);
                parentKey.DeleteSubKeyTree(subKeyName);
                parentKey.Flush();
                parentKey.Close();
            }
            catch (Exception ex)
            {
                Logger.Write("Error renaming Registry Key : " + RegHive + "\\" + RegKey + "\r\n" + ex.Message);
            }
        }