// Выбор значка файла
        private void SelectIcon_Click(object sender, EventArgs e)
        {
            // Запуск выбора
            IconsExtractor ie = new IconsExtractor(al);

            if (ie.SelectedIconNumber >= 0)
            {
                selectedIconNumber = (uint)ie.SelectedIconNumber;
                selectedIconFile   = ie.SelectedIconFile;
                FileIcon.Text      = selectedIconFile + ", " + selectedIconNumber.ToString();
            }
        }
        // Применение изменений
        private void Apply_Click(object sender, EventArgs e)
        {
            // Контроль остальных параметров
            if (FileExtension.Text.Length * FileTypeName.Text.Length * FileIcon.Text.Length * FileApplication.Text.Length == 0)
            {
                MessageBox.Show(Localization.GetText("SomeFieldsAreEmpty", al),
                                ProgramDescription.AssemblyTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            // Контроль расширения
            FileExtension.Text = FileExtension.Text.ToLower().Replace(".", "");
            char[] c = Path.GetInvalidFileNameChars();
            for (int i = 0; i < c.Length; i++)
            {
                if (FileExtension.Text.Contains(c[i].ToString()))
                {
                    MessageBox.Show(string.Format(Localization.GetText("UnsupportedCharacter", al), c[i].ToString()),
                                    ProgramDescription.AssemblyTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
            }

            uint a = IconsExtractor.GetIconsCount("s");

            // Пробуем добавлять
            if (!rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\." + FileExtension.Text, "", FileExtension.Text + "file")) ||

                !rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\" + FileExtension.Text + "file", "", FileTypeName.Text)) ||

                !rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\" + FileExtension.Text + "file\\DefaultIcon", "",
                                                 selectedIconFile + "," + selectedIconNumber.ToString())) ||

                !rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\" + FileExtension.Text + "file\\shell", "", "open")) ||
                !rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\" + FileExtension.Text + "file\\shell\\open", "", Localization.GetText("OpenButton", al))) ||
                !rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\" + FileExtension.Text + "file\\shell\\open", "Icon",
                                                 ((IconsExtractor.GetIconsCount(FileApplication.Text) == 0) ? selectedIconFile : FileApplication.Text) + ",0")) ||

                !rebm.AddEntry(new RegistryEntry("HKEY_CLASSES_ROOT\\" + FileExtension.Text + "file\\shell\\open\\command", "",
                                                 "\"" + FileApplication.Text + "\" \"%1\"")))
            {
                MessageBox.Show(Localization.GetText("ExtensionRegFailed", al),
                                ProgramDescription.AssemblyTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            confirmed = true;
            this.Close();
        }
 // Просмотр иконок
 private void FindIcon_Click(object sender, EventArgs e)
 {
     IconsExtractor ie = new IconsExtractor(al);
 }