示例#1
0
 private void ExecutablePathBox_TextChanged(object sender, EventArgs e)
 {
     // Если путь к файлу .exe не пустой
     if (!string.IsNullOrWhiteSpace(this.ExecutablePathBox.Text))
     {
         // Выводим версию .Net файла
         this.VersionNet.Text = $"NetFramework: {CheckFramework.Version(this.ExecutablePathBox.Text)}";
         // Если строка совпадает с N/A
         if (this.VersionNet.Text.Contains("N/A"))
         {
             // Выводим ошибку пользователю
             MusicPlay.Inizialize(Resources.Error_Build);
             this.ExecutablePathBox.Clear();
             this.StatusMessage.Location = new Point(7, 273);
             ControlActive.CheckMessage(StatusMessage, "Supports only .Net binary files", Color.LightBlue, 3000);
             this.AddingLibrary.Enabled = false; // Блокируем кнопку добавления библиотек .dll
         }
         else
         {
             // разблокируем элементы кнопок
             this.AddingLibrary.Enabled = true; // Добавление библиотек .dll
             this.CompileBuild.Enabled  = true; // Перепаковка ( слияние библиотек )
         }
     }
     else
     {
         // Очищяем версию .Net Framework
         this.VersionNet.Text = "";
         // Блокируем элементы кнопко
         this.AddingLibrary.Enabled = false; // Добавление библиотек .dll
         this.CompileBuild.Enabled  = false; // Перепаковка ( слияние библиотек )
     }
 }
示例#2
0
 private void LibraryPathBox_DragDrop(object sender, DragEventArgs e)
 {
     // Если путь к файлу .exe не пустой
     if (!string.IsNullOrWhiteSpace(this.ExecutablePathBox.Text))
     {
         // Принимаем файл(ы)
         string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
         // Проходимся в цикле
         foreach (string file in files)
         {
             // Проверяем расширения файла
             if (files[0].EndsWith(".dll"))
             {
                 // Получаем версию NetFramework бибиотеки
                 string FrameVerDllInfo = CheckFramework.Version(files[0]);
                 // Получаем версию NetFramework бинарника
                 string FrameVerExeInfo = CheckFramework.Version(this.ExecutablePathBox.Text);
                 // Если версия не совпадает с N/A
                 if (!FrameVerDllInfo.Contains("N/A"))
                 {
                     // Если нет совпадений файлов из ListBox'a
                     if (!this.LibraryPathBox.Items.Contains(file))
                     {
                         // Если версии .dll совпадает с .exe
                         if (FrameVerExeInfo.Equals(FrameVerDllInfo, StringComparison.OrdinalIgnoreCase))
                         {
                             this.LibraryPathBox.Items.Add(file);                                               // Добавляем файл в список ListBox
                             this.TextPathLibrary.Text = $"Path to .dll file(s): {LibraryPathBox.Items.Count}"; // Добавляем счётчик
                         }
                         else
                         {
                             StatusMessage.Location = new Point(7, 273);
                             ControlActive.CheckMessage(StatusMessage, ".NetFramework version does not match file", Color.LightBlue, 3000);
                         }
                     }
                     else
                     {
                         StatusMessage.Location = new Point(7, 273);
                         ControlActive.CheckMessage(StatusMessage, "Such file is already in the list", Color.LightBlue, 3000);
                     }
                 }
                 else
                 {
                     this.StatusMessage.Location = new Point(7, 273);
                     ControlActive.CheckMessage(StatusMessage, "Supports only .Net library files", Color.LightBlue, 3000);
                 }
             }
             else
             {
                 StatusMessage.Location = new Point(7, 273);
                 ControlActive.CheckMessage(StatusMessage, "Supports only .dll files", Color.LightBlue, 3000);
             }
         }
     }
     else
     {
         StatusMessage.Location = new Point(7, 273);
         ControlActive.CheckMessage(StatusMessage, "Fill in the first input field .exe path", Color.LightBlue, 3000);
     }
 }
示例#3
0
        private void AddingLibrary_Click(object sender, EventArgs e)
        {
            // Убираем фокус с кнопки
            NativeMethods.SetFocus(IntPtr.Zero);
            this.LogoText.Focus();

            using var ofd = new OpenFileDialog
                  {
                      Title              = "Select the .dll file(s) you want to add",
                      Filter             = "Library file|*.dll",
                      AutoUpgradeEnabled = true,
                      CheckFileExists    = true,
                      Multiselect        = true,
                      RestoreDirectory   = true
                  };
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                foreach (string multi in ofd.FileNames)
                {
                    string FrameVerDllInfo = CheckFramework.Version(multi);                                        // Получаем версию NetFramework бибиотеки
                    string FrameVerExeInfo = CheckFramework.Version(this.ExecutablePathBox.Text);                  // Получаем версию NetFramework бинарника
                    if (!FrameVerDllInfo.Contains("N/A"))                                                          // Если нет совпадений с N/A
                    {
                        if (!this.LibraryPathBox.Items.Contains(multi))                                            // Если нет совпадающий файлов в списке
                        {
                            if (FrameVerExeInfo.Equals(FrameVerDllInfo, StringComparison.OrdinalIgnoreCase))       // Если версии .dll совпадает с .exe
                            {
                                this.LibraryPathBox.Items.Add(multi);                                              // Добавляем файл в ListBox
                                this.TextPathLibrary.Text = $"Path to .dll file(s): {LibraryPathBox.Items.Count}"; // Добавляем счётчик
                            }
                            else
                            {
                                StatusMessage.Location = new Point(7, 273);
                                ControlActive.CheckMessage(StatusMessage, ".NetFramework version does not match .exe file", Color.LightBlue, 3000);
                            }
                        }
                        else
                        {
                            StatusMessage.Location = new Point(7, 273);
                            ControlActive.CheckMessage(StatusMessage, "Such file is already in the list", Color.LightBlue, 3000);
                        }
                    }
                    else
                    {
                        this.StatusMessage.Location = new Point(7, 273);
                        ControlActive.CheckMessage(StatusMessage, "Supports only .Net library files", Color.LightBlue, 3000);
                    }
                }
            }
            else
            {
                StatusMessage.Location = new Point(7, 273);
                ControlActive.CheckMessage(StatusMessage, "No file selected", Color.LightBlue, 3000);
            }
        }