コード例 #1
0
 internal void Filtrar_Bloques()
 {
     try
     {
         this.Cursor = Cursors.WaitCursor;
         if (!Ocupado)
         {
             Ocupado = true;
             DataGridView_Principal.Rows.Clear(); // Clear the filtered blocks.
             if (Minecraft.Bloques.Matriz_Bloques != null && Minecraft.Bloques.Matriz_Bloques.Length > 0)
             {
                 DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
                 DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.None;
                 foreach (Minecraft.Bloques Bloque in Minecraft.Bloques.Matriz_Bloques)
                 {
                     if ((!Menú_Contextual_Filtrar_No_Obsoletos.Checked || (!Bloque.Obsoleto)) &&
                         (!Menú_Contextual_Filtrar_1_12_2.Checked || (Bloque.Lista_ID != null && Bloque.Lista_ID.Count > 0)) &&
                         (!Menú_Contextual_Filtrar_1_13.Checked || (Bloque.Lista_ID == null || Bloque.Lista_ID.Count <= 0)) &&
                         (!Menú_Contextual_Filtrar_Parciales.Checked || (Bloque.Altura_Diferente)) &&
                         (!Menú_Contextual_Filtrar_Completos.Checked || (!Bloque.Altura_Diferente)) &&
                         (!Menú_Contextual_Filtrar_Transparentes.Checked || (Bloque.Transparencia != Minecraft.Transparencias.Solid)) &&
                         (!Menú_Contextual_Filtrar_Sólidos.Checked || (Bloque.Transparencia == Minecraft.Transparencias.Solid)))
                     {
                         DataGridView_Principal.Rows.Add(new object[]
                         {
                             Program.Obtener_Imagen_Miniatura(Program.Obtener_Imagen_Recursos(Bloque.Recurso), 32, 32, true, false, CheckState.Checked),
                             Bloque.Nombre,
                             Program.Obtener_Nombre_Invertido(Bloque.Nombre),
                             Bloque.Nombre_1_13,
                             Bloque.Lista_ID != null && Bloque.Lista_ID.Count > 0 ? (int)Bloque.Lista_ID[0] : -1,
                             Program.Traducir_Lista_Variables(Bloque.Lista_Data),
                             Bloque.Color_ARGB,
                             Bloque.Código_Hash_Color,
                             Bloque.Altura_Diferente,
                             Bloque.Transparencia,
                             Bloque.Obsoleto,
                             Bloque.Obtención
                         });
                     }
                 }
                 DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
                 DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.AllCells;
                 this.Text = Texto_Título + " - [Minecraft blocks known: " + Program.Traducir_Número(DataGridView_Principal.Rows.Count) + "]";
                 if (DataGridView_Principal.Rows.Count > 0)
                 {
                     DataGridView_Principal.Sort(DataGridView_Principal.SortedColumn, DataGridView_Principal.SortOrder != SortOrder.Descending ? ListSortDirection.Ascending : ListSortDirection.Descending);
                     DataGridView_Principal.CurrentCell = DataGridView_Principal[Columna_Nombre.Index, 0];
                 }
             }
             Ocupado = false;
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; }
     finally { this.Cursor = Cursors.Default; }
 }
コード例 #2
0
 private void Ventana_Visor_Información_Bloques_Load(object sender, EventArgs e)
 {
     try
     {
         this.Icon        = Program.Icono_Jupisoft.Clone() as Icon;
         this.Text        = Texto_Título;
         this.WindowState = FormWindowState.Maximized;
         DataGridView_Principal.Sort(Columna_Nombre, ListSortDirection.Ascending);
         Menú_Contextual_Filtrar_Todos.PerformClick();
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; }
 }
コード例 #3
0
 private void DataGridView_Principal_MouseDown(object sender, MouseEventArgs e)
 {
     try
     {
         if (e.Button != MouseButtons.Right)
         {
             DataGridView.HitTestInfo Info = DataGridView_Principal.HitTest(e.X, e.Y);
             if (Info.Type == DataGridViewHitTestType.None)
             {
                 DataGridView_Principal.ClearSelection();
                 DataGridView_Principal.CurrentCell = null;
             }
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; }
 }
コード例 #4
0
 private void Ventana_Visor_Información_Entidades_Load(object sender, EventArgs e)
 {
     try
     {
         this.Icon        = Program.Icono_Jupisoft.Clone() as Icon;
         this.Text        = Texto_Título;
         this.WindowState = FormWindowState.Maximized;
         if (Entidades.Matriz_Entidades != null && Entidades.Matriz_Entidades.Length > 0)
         {
             for (int Índice_Entidad = 0; Índice_Entidad < Entidades.Matriz_Entidades.Length; Índice_Entidad++)
             {
                 Bitmap Imagen = Program.Obtener_Imagen_Recursos("Entity_" + Entidades.Matriz_Entidades[Índice_Entidad].Recurso);
                 Imagen = Program.Obtener_Imagen_Miniatura(Imagen, 32, 32, true, false, CheckState.Checked);
                 DataGridView_Principal.Rows.Add(new object[]
                 {
                     Imagen,
                     Entidades.Matriz_Entidades[Índice_Entidad].Nombre.Replace('_', ' '),
                     Obtener_Imagen_Corazones(Entidades.Matriz_Entidades[Índice_Entidad].Corazones),
                     (double)Entidades.Matriz_Entidades[Índice_Entidad].Corazones / 2d,
                     Obtener_Imagen_Corazones(Entidades.Matriz_Entidades[Índice_Entidad].Daño_Fácil),
                     (double)Entidades.Matriz_Entidades[Índice_Entidad].Daño_Fácil / 2d,
                     Obtener_Imagen_Corazones(Entidades.Matriz_Entidades[Índice_Entidad].Daño_Normal),
                     (double)Entidades.Matriz_Entidades[Índice_Entidad].Daño_Normal / 2d,
                     Obtener_Imagen_Corazones(Entidades.Matriz_Entidades[Índice_Entidad].Daño_Difícil),
                     (double)Entidades.Matriz_Entidades[Índice_Entidad].Daño_Difícil / 2d, Entidades.Matriz_Entidades[Índice_Entidad].Actitud,
                     Entidades.Matriz_Entidades[Índice_Entidad].Debilidad
                 });
             }
             DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
             DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.AllCells;
             DataGridView_Principal.Sort(Columna_Nombre, ListSortDirection.Ascending);
             if (DataGridView_Principal.Rows.Count > 0)
             {
                 this.Text = Texto_Título + " - [Minecraft entities known: " + Program.Traducir_Número(DataGridView_Principal.Rows.Count) + "]";
                 DataGridView_Principal.CurrentCell = DataGridView_Principal[0, 0];
             }
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; }
 }
コード例 #5
0
 private void Menú_Contextual_Copiar_Click(object sender, EventArgs e)
 {
     try
     {
         if (DataGridView_Principal.Rows.Count > 0)
         {
             this.Controls.Remove(DataGridView_Principal);
             int Ancho = DataGridView_Principal.RowHeadersVisible ? DataGridView_Principal.RowHeadersWidth + 2 : 3;
             int Alto  = DataGridView_Principal.ColumnHeadersVisible ? DataGridView_Principal.ColumnHeadersHeight + 2 : 3;
             foreach (DataGridViewColumn Columna in DataGridView_Principal.Columns)
             {
                 Ancho += Columna.Width;
             }
             foreach (DataGridViewRow Fila in DataGridView_Principal.Rows)
             {
                 Alto += Fila.Height;
             }
             DataGridView_Principal.Size = new Size(Ancho, Alto);
             Bitmap   Imagen = new Bitmap(DataGridView_Principal.Width, DataGridView_Principal.Height, PixelFormat.Format24bppRgb);
             Graphics Pintar = Graphics.FromImage(Imagen);
             Pintar.CompositingMode = CompositingMode.SourceCopy;
             Pintar.Clear(Color.Fuchsia);
             Pintar.Dispose();
             Pintar = null;
             DataGridView_Principal.DrawToBitmap(Imagen, new Rectangle(0, 0, Imagen.Width, Imagen.Height));
             if (!Directory.Exists(Program.Ruta_Guardado_Imágenes))
             {
                 Directory.CreateDirectory(Program.Ruta_Guardado_Imágenes);
             }
             Clipboard.SetImage(Imagen);
             Imagen.Dispose();
             Imagen = null;
             this.Controls.Add(DataGridView_Principal);
             DataGridView_Principal.BringToFront();
             SystemSounds.Asterisk.Play();
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); }
 }
コード例 #6
0
 private void Ventana_Donaciones_Load(object sender, EventArgs e)
 {
     try
     {
         this.Icon = Program.Icono_Jupisoft.Clone() as Icon;
         //this.WindowState = FormWindowState.Maximized;
         this.Text = Texto_Título + " - [Donations: " + Program.Traducir_Número(Donaciones.Matriz_Donaciones.Length) + "]";
         if (Donaciones.Matriz_Donaciones != null && Donaciones.Matriz_Donaciones.Length > 0)
         {
             DataGridView_Principal.Sort(Columna_Donante, ListSortDirection.Ascending);
             DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
             DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.None;
             foreach (Donaciones Donación in Donaciones.Matriz_Donaciones)
             {
                 DataGridView_Principal.Rows.Add(new object[] { Resources.Usuario, Donación.Nombre, Program.Traducir_Fecha_Inglés(Donación.Fecha), Donación.Cantidad, Donación.Moneda });
             }
             DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
             DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.AllCells;
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); }
 }
コード例 #7
0
 private void Menú_Contextual_Guardar_Click(object sender, EventArgs e)
 {
     try
     {
         if (DataGridView_Principal.Rows.Count > 0)
         {
             this.Controls.Remove(DataGridView_Principal);
             int Ancho = DataGridView_Principal.RowHeadersVisible ? DataGridView_Principal.RowHeadersWidth + 2 : 3;
             int Alto  = DataGridView_Principal.ColumnHeadersVisible ? DataGridView_Principal.ColumnHeadersHeight + 2 : 3;
             foreach (DataGridViewColumn Columna in DataGridView_Principal.Columns)
             {
                 Ancho += Columna.Width;
             }
             foreach (DataGridViewRow Fila in DataGridView_Principal.Rows)
             {
                 Alto += Fila.Height;
             }
             DataGridView_Principal.Size = new Size(Ancho, Alto);
             Bitmap   Imagen = new Bitmap(DataGridView_Principal.Width, DataGridView_Principal.Height, PixelFormat.Format24bppRgb);
             Graphics Pintar = Graphics.FromImage(Imagen);
             Pintar.CompositingMode = CompositingMode.SourceCopy;
             Pintar.Clear(Color.Fuchsia);
             Pintar.Dispose();
             Pintar = null;
             DataGridView_Principal.DrawToBitmap(Imagen, new Rectangle(0, 0, Imagen.Width, Imagen.Height));
             Program.Crear_Carpetas(Program.Ruta_Guardado_Imágenes_Buscador_JAR);
             Imagen.Save(Program.Ruta_Guardado_Imágenes_Buscador_JAR + "\\" + Program.Obtener_Nombre_Temporal_Sin_Guiones() + " Jar (" + Program.Traducir_Número(DataGridView_Principal.Rows.Count) + (DataGridView_Principal.Rows.Count != 1 ? " files" : " file") + ").png", ImageFormat.Png);
             Imagen.Dispose();
             Imagen = null;
             this.Controls.Add(DataGridView_Principal);
             DataGridView_Principal.BringToFront();
             SystemSounds.Asterisk.Play();
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); }
 }
コード例 #8
0
        private void Ventana_Semillas_Parecidas_Load(object sender, EventArgs e)
        {
            try
            {
                PixARK_Seeds.Buscar_Semillas_Parecidas(); //string.Compare(Environment.UserName, "Jupisoft", true) == 0);
                this.Icon = Program.Icono_Jupisoft.Clone() as Icon;
                int Bytes_Únicos       = 0;
                int Semillas_Parecidas = 0;
                int Semilla_Mínima     = int.MaxValue;
                int Semilla_Máxima     = int.MinValue;
                foreach (KeyValuePair <byte, List <int> > Entrada in PixARK_Seeds.Lista_Semilas_Parecidas)
                {
                    try
                    {
                        if (Entrada.Value != null && Entrada.Value.Count > 0)
                        {
                            Bytes_Únicos++;
                            foreach (int Semilla in Entrada.Value)
                            {
                                try
                                {
                                    if (Semilla < Semilla_Mínima)
                                    {
                                        Semilla_Mínima = Semilla;
                                    }
                                    if (Semilla > Semilla_Máxima)
                                    {
                                        Semilla_Máxima = Semilla;
                                    }
                                }
                                catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; continue; }
                            }
                            Semillas_Parecidas += Entrada.Value.Count;
                        }
                    }
                    catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; continue; }
                }
                this.Text        = Texto_Título + " - [Unique Bytes Found: " + Bytes_Únicos.ToString() + " of 256, Similar Seeds: " + Program.Traducir_Número(Semillas_Parecidas) + ", Seeds Range: " + Program.Traducir_Número(Semilla_Mínima) + " to " + Program.Traducir_Número(Semilla_Máxima) + "]";
                this.WindowState = FormWindowState.Maximized;
                Matriz_Pictures  = new PictureBox[6]
                {
                    Picture_Mapa_1,
                    Picture_Mapa_2,
                    Picture_Mapa_3,
                    Picture_Mapa_4,
                    Picture_Mapa_5,
                    Picture_Mapa_6
                };
                //DataGridViewRow[] Matriz_Filas = new DataGridViewRow[256];
                for (int Índice_Byte = 0; Índice_Byte < 256; Índice_Byte++)
                {
                    string Texto_8_Bits = Convert.ToString((byte)Índice_Byte, 2);
                    if (Texto_8_Bits.Length < 8)
                    {
                        Texto_8_Bits = new string('0', 8 - Texto_8_Bits.Length) + Texto_8_Bits;
                    }
                    List <int> Lista_Semillas_Predecidas = new List <int>();
                    for (int Índice = Índice_Byte; Índice < 32768; Índice += 256)
                    {
                        try
                        {
                            Lista_Semillas_Predecidas.Add(Índice);
                        }
                        catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; continue; }
                    }
                    bool Existente = false;
                    foreach (KeyValuePair <byte, List <int> > Entrada in PixARK_Seeds.Lista_Semilas_Parecidas)
                    {
                        try
                        {
                            if (Entrada.Key == Índice_Byte)
                            {
                                List <string> Lista_Semillas_Binarias = new List <string>();
                                foreach (int Semilla in Entrada.Value)
                                {
                                    try
                                    {
                                        Lista_Semillas_Binarias.Add(Convert.ToString(Semilla, 2));
                                    }
                                    catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; continue; }
                                }
                                DataGridView_Principal.Rows.Add(new object[] { Program.Obtener_Imagen_Byte_2D(Entrada.Key), Entrada.Key, Texto_8_Bits, Entrada.Value.Count, Program.Traducir_Lista_Variables(Entrada.Value), Program.Traducir_Lista_Variables(Lista_Semillas_Binarias), Program.Traducir_Lista_Variables(Lista_Semillas_Predecidas) });

                                /*DataGridViewRow Fila = new DataGridViewRow();
                                 * Fila.DefaultCellStyle = DataGridView_Principal.DefaultCellStyle;
                                 * Fila.SetValues(new object[] { Program.Obtener_Imagen_Byte_2D(Entrada.Key), Entrada.Key, Texto_8_Bits, Entrada.Value.Count, Program.Traducir_Lista_Variables(Entrada.Value), Program.Traducir_Lista_Variables(Lista_Semillas_Binarias), Program.Traducir_Lista_Variables(Lista_Semillas_Predecidas) });
                                 * Matriz_Filas[Índice_Byte] = Fila;*/
                                Lista_Semillas_Binarias = null;
                                Existente = true;
                                break;
                            }
                        }
                        catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; continue; }
                    }
                    if (!Existente)
                    {
                        DataGridView_Principal.Rows.Add(new object[] { Program.Obtener_Imagen_Byte_2D(Índice_Byte), (byte)Índice_Byte, Texto_8_Bits, 0, string.Empty, string.Empty, Program.Traducir_Lista_Variables(Lista_Semillas_Predecidas) });

                        /*DataGridViewRow Fila = new DataGridViewRow();
                         * Fila.DefaultCellStyle = DataGridView_Principal.DefaultCellStyle;
                         * Fila.SetValues(new object[] { Program.Obtener_Imagen_Byte_2D(Índice_Byte), (byte)Índice_Byte, Texto_8_Bits, 0, string.Empty, string.Empty, Program.Traducir_Lista_Variables(Lista_Semillas_Predecidas) });
                         * Matriz_Filas[Índice_Byte] = Fila;*/
                    }
                    Lista_Semillas_Predecidas = null;
                    Texto_8_Bits = null;
                }
                //DataGridView_Principal.Rows.AddRange(Matriz_Filas);
                //DataGridView_Principal.Sort(Columna_Último_Byte, ListSortDirection.Ascending);
                DataGridView_Principal.Sort(Columna_Semillas, ListSortDirection.Descending);
                DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
                DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.AllCells;
                DataGridView_Principal.Rows[0].Cells[Columna_Semillas.Index].Selected = true;
                NumericUpDown_Semilla.Value = Variable_Semilla;
                Ocupado = true;
                Registro_Cargar_Opciones();
                Ocupado = false;
            }
            catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; }
        }
コード例 #9
0
 private void Ventana_Visor_Densidades_Bloques_Load(object sender, EventArgs e)
 {
     try
     {
         this.Icon        = Program.Icono_Jupisoft.Clone() as Icon;
         this.Text        = Texto_Título;
         this.WindowState = FormWindowState.Maximized;
         if (Total_Bloques > 0 && Diccionario_Densidades.Count > 0 && Diccionario_Niveles_Y.Count > 0)
         {
             foreach (KeyValuePair <short, long> Entrada in Diccionario_Densidades)
             {
                 string Texto_Mejores_Niveles_Y = null;
                 string Texto_Niveles_Y         = null;
                 long   Máximo = long.MinValue;
                 for (int Índice_Y = 0; Índice_Y < 256; Índice_Y++)
                 {
                     if (Diccionario_Niveles_Y[Entrada.Key][Índice_Y] > Máximo)
                     {
                         Máximo = Diccionario_Niveles_Y[Entrada.Key][Índice_Y];
                     }
                     if (Diccionario_Niveles_Y[Entrada.Key][Índice_Y] > 0L)
                     {
                         Texto_Niveles_Y += Índice_Y.ToString() + ", ";
                     }
                 }
                 for (int Índice_Y = 0; Índice_Y < 256; Índice_Y++)
                 {
                     if (Diccionario_Niveles_Y[Entrada.Key][Índice_Y] >= Máximo)
                     {
                         Texto_Mejores_Niveles_Y += Índice_Y.ToString() + ", ";
                     }
                 }
                 if (!string.IsNullOrEmpty(Texto_Mejores_Niveles_Y))
                 {
                     Texto_Mejores_Niveles_Y = Texto_Mejores_Niveles_Y.TrimEnd(", ".ToCharArray());
                 }
                 if (!string.IsNullOrEmpty(Texto_Niveles_Y))
                 {
                     Texto_Niveles_Y = Texto_Niveles_Y.TrimEnd(", ".ToCharArray());
                 }
                 DataGridView_Principal.Rows.Add(new object[]
                 {
                     Program.Obtener_Imagen_Recursos(Minecraft.Bloques.Diccionario_Índice_Nombre[Entrada.Key]),
                     Program.Traducir_Texto_Mayúsculas_Minúsculas_Automáticamente(Minecraft.Bloques.Diccionario_Índice_Nombre[Entrada.Key].Substring(10).Replace('_', ' ')),
                     Entrada.Value,
                     Math.Round(((decimal)Entrada.Value * 100m) / (decimal)Total_Bloques, 10, MidpointRounding.AwayFromZero),
                     Math.Round((decimal)Total_Bloques / (decimal)Entrada.Value, 10, MidpointRounding.AwayFromZero),
                     Texto_Mejores_Niveles_Y,
                     Texto_Niveles_Y,
                     0L,
                     0L,
                     0L
                 });
             }
             DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
             DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.AllCells;
             DataGridView_Principal.Sort(Columna_Nombre, ListSortDirection.Ascending);
             if (DataGridView_Principal.Rows.Count > 0)
             {
                 this.Text = Texto_Título + " - [Unique blocks found: " + Program.Traducir_Número(DataGridView_Principal.Rows.Count) + "]";
                 DataGridView_Principal.CurrentCell = DataGridView_Principal[0, 0];
             }
         }
     }
     catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); Variable_Excepción_Total++; Variable_Excepción = true; }
 }
コード例 #10
0
        internal void Comparar()
        {
            try
            {
                if (!Ocupado && TreeView_1.Nodes.Count > 0 && TreeView_2.Nodes.Count > 0)
                {
                    Ocupado     = true;
                    this.Cursor = Cursors.WaitCursor;
                    // 1º colorear los árboles...

                    if (Matriz_Archivos_1 != null && Matriz_Archivos_2 != null && Matriz_Archivos_1.Length > 0 && Matriz_Archivos_2.Length > 0)
                    {
                        this.Text = Texto_Título + " - [Comparing the files, please wait up to a few minutes...]";
                        SortedDictionary <string, string> Diccionario_Comparación = new SortedDictionary <string, string>();
                        foreach (ArchiveFileInfo Archivo in Matriz_Archivos_1)
                        {
                            string Ruta = Archivo.FileName.ToLowerInvariant();
                            if (string.IsNullOrEmpty(Ruta_Buscar) || Ruta.StartsWith(Ruta_Buscar))
                            {
                                if (!Diccionario_Comparación.ContainsKey(Ruta))
                                {
                                    Diccionario_Comparación.Add(Ruta, Archivo.FileName);
                                }
                            }
                        }
                        foreach (ArchiveFileInfo Archivo in Matriz_Archivos_2)
                        {
                            string Ruta = Archivo.FileName.ToLowerInvariant();
                            if (string.IsNullOrEmpty(Ruta_Buscar) || Ruta.StartsWith(Ruta_Buscar))
                            {
                                if (!Diccionario_Comparación.ContainsKey(Ruta))
                                {
                                    Diccionario_Comparación.Add(Ruta, Archivo.FileName);
                                }
                            }
                        }
                        if (Diccionario_Comparación.Count > 0)
                        {
                            Bitmap Imagen_Verde    = Resources.Aceptar;
                            Bitmap Imagen_Amarillo = Resources.Restablecer;
                            Bitmap Imagen_Rojo     = Resources.Cancelar;
                            DataGridView_Principal.Rows.Clear();
                            DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
                            DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.None;
                            //List<DataGridViewRow> Lista_Filas = new List<DataGridViewRow>();
                            int Índice_Fila = 0;
                            DataGridViewRow[] Matriz_Filas = new DataGridViewRow[Diccionario_Comparación.Count];
                            foreach (KeyValuePair <string, string> Entrada in Diccionario_Comparación)
                            {
                                DataGridViewRow Fila        = new DataGridViewRow();
                                uint            CRC32_1     = 0;
                                uint            CRC32_2     = 0;
                                string          Nombre_1    = Archivo_Existe(Matriz_Archivos_1, Entrada.Key, out CRC32_1);
                                string          Nombre_2    = Archivo_Existe(Matriz_Archivos_2, Entrada.Key, out CRC32_2);
                                Bitmap          Imagen      = null;
                                string          Comparación = string.Empty;
                                Color           Color_ARGB  = Color.White;
                                if (!string.IsNullOrEmpty(Nombre_1) && !string.IsNullOrEmpty(Nombre_2)) // Both files exist
                                {
                                    if (CRC32_1 == CRC32_2)                                             // Both files are the same
                                    {
                                        Imagen      = Imagen_Verde;
                                        Comparación = "Equal: both files are identical";
                                        Color_ARGB  = Color.FromArgb(255, 192, 255, 192); // Green
                                    }
                                    else
                                    {
                                        Imagen      = Imagen_Amarillo;
                                        Comparación = "Different: the CRC's don't match";
                                        Color_ARGB  = Color.FromArgb(255, 255, 255, 192); // Yellow
                                        //Color_ARGB = Color.FromArgb(255, 232, 232, 255); // Blue?
                                    }
                                }
                                else
                                {
                                    Imagen      = Imagen_Rojo;
                                    Comparación = "Different: only one file exists";
                                    Color_ARGB  = Color.FromArgb(255, 255, 192, 192); // Red
                                }
                                Fila.CreateCells(DataGridView_Principal, new object[] { Imagen, Comparación, Nombre_1, Nombre_2, CRC32_1, CRC32_2, Entrada.Value });
                                Fila.DefaultCellStyle.BackColor = Color_ARGB;
                                //Lista_Filas.Add(Fila);
                                //DataGridView_Principal.Rows.Add(Fila);
                                Matriz_Filas[Índice_Fila] = Fila;
                                Índice_Fila++;
                            }
                            //DataGridView_Principal.Rows.AddRange(Lista_Filas.ToArray());
                            DataGridView_Principal.Rows.AddRange(Matriz_Filas);
                            DataGridView_Principal.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
                            DataGridView_Principal.AutoSizeRowsMode    = DataGridViewAutoSizeRowsMode.AllCells;
                            DataGridView_Principal.Sort(Columna_Comparación, ListSortDirection.Ascending);
                            this.Text   = Texto_Título + " - [Files compared: " + Program.Traducir_Número(DataGridView_Principal.Rows.Count) + "]";
                            Ocupado     = false;
                            this.Cursor = Cursors.WaitCursor;
                        }
                    }
                }
                else
                {
                    SystemSounds.Beep.Play();
                }
            }
            catch (Exception Excepción) { Depurador.Escribir_Excepción(Excepción != null ? Excepción.ToString() : null); }
        }