Novedades de dotPeek

Esta página incluye las actualizaciones y los cambios más recientes en dotPeek.

Una nueva ventana de herramientas Assembly Diff específica

Mayor compatibilidad con C# 13 y mejoras en la legibilidad 2025.1

La versión 2025.1 incorpora varias mejoras al decompilador, como la mayor compatibilidad con las últimas funcionalidades de C# y la mejora de la legibilidad del código. Estas son las novedades:

  • Compatibilidad con los miembros required.
  • Se ha añadido compatibilidad con el nuevo tipo System.Threading.Lock introducido en C# 13.
  • Compatibilidad con campos ref y modificadores de parámetros scoped.
  • Compatibilidad con el antirrestricciones genérico allows ref struct.
  • using basado en patrones para tipos ref struct.
  • Compatibilidad con la interpolación de cadenas.
  • Ciertas constantes de enteros en código decompilado incluyen ahora representaciones hexadecimales comentadas para una mejor legibilidad.
  • Compatibilidad con espacios de nombres con ámbito de archivos.
Una nueva ventana de herramientas Assembly Diff específica

Código IL para el manifiesto de agrupación 2024.3

Ahora, la ventana de herramientas IL Viewer ofrece código IL para el manifiesto de ensamblado, incluido lo siguiente:

  • Información sobre el ensamblado y el módulo como el nombre, los atributos personalizados, etc.
  • Ensamblados y módulos referenciados.
  • Tipos redireccionados.
  • Una lista de archivos y recursos.

Este código IL se muestra cuando el signo de intercalación del editor de texto está en un atributo de ensamblado o módulo o dentro de un archivo <AssemblyName>.cs para ensamblados externos.

Compatibilidad con constructores primarios 2024.3

Ahora, al trabajar con clases que declaran un constructor primario, dotPeek mostrará el constructor y sus parámetros correctamente, lo que le dará una visión completa de cómo se crean las instancias en los objetos directamente desde el código descompilado.

Mejoras generales 2024.2

  • Parámetros lambda: hemos introducido la compatibilidad para descompilar lambdas con parámetros opcionales y de vectores de parámetros, con lo que hemos mejorado la legibilidad y la precisión del código descompilado.
  • Atributos en lambdas: ahora la herramienta ofrece una gestión mejorada de los atributos en las expresiones lambda para garantizar que todos los metadatos relevantes se reflejen con precisión en el resultado descompilado.
  • Agrupaciones protegidas: hemos incluido la posibilidad de especificar si desea descompilar las agrupaciones protegidas, lo que permite explorar el código de forma más exhaustiva.

Gestión de fuentes externas 2024.2

  • PDB con SrcSrv y SourceLink: ahora, el descompilador es compatible con la navegación hacia código fuente desde archivos PDB que contengan tanto SrcSrv como SourceLink.
  • Directivas de preprocesador: ahora, el descompilador reconoce correctamente las directivas del preprocesador (como NET6_0_OR_GREATER) desde el marco de trabajo de destino o del PDB portátil de la agrupación asociada, lo que garantiza una representación precisa del código.
  • Acción Open in Browser: ahora, puede navegar al código fuente en el repositorio para tipos o a un repositorio para paquetes NuGet o agrupaciones.

Detección de la configuración de compilación 2024.2

Ahora, la ventana de herramientas Assembly Explorer detecta y presenta la configuración de compilación de las agrupaciones, lo que ofrece una visión más clara del contexto de compilación de la agrupación.

Una nueva ventana de herramientas Assembly Diff específica

Una nueva ventana de herramientas Assembly Diff específica 2024.1

La actualización 2024.1 trae la nueva ventana de herramientas Assembly Diff a dotPeek. Hay un par de cambios asociados:

  • La posibilidad de comparar agrupaciones, paquetes NuGet, carpetas y archivos .zip se ha trasladado de Assembly Explorer a la ventana de herramientas Assembly Diff.
  • El selector Diff mode y los botones Compare y Diff Options se han reubicado en la barra Actions de la ventana de herramientas Assembly Diff.
Compatibilidad con el formato de empaquetado WebCIL

Compatibilidad con el formato de empaquetado WebCIL 2024.1

dotPeek es compatible con el formato de empaquetado WebCIL para WebAssemblies. La compatibilidad incluye lo siguiente:

  • Decompilación para WebCIL.
  • La posibilidad de ver archivos .wasm en Assembly Explorer.
  • Subárboles de metadatos para nodos WASM en Assembly Explorer, incluidos los encabezados WASM y WebCIL.
Más funcionalidades del lenguaje C#

Mejoras en diff de ensamblaje 2023.3

dotPeek 2023.3 es capaz de comparar paquetes NuGet, carpetas y archivos .zip.

La posibilidad de comparar agrupaciones dispone ahora de más opciones de comparación. Puede elegir entre varios modos de diff (Show all, Show only differences, Show only signature differences, Show only public API differences). Además, puede especificar si desea que el diff ignore las diferencias de orden de los miembros/atributos, así como las diferencias en las anotaciones de los tipos de referencias que aceptan valores null.

Más funcionalidades del lenguaje C#

Assembly Explorer actualizaciones 2023.3

  • Al explorar los paquetes NuGet en Assembly Explorer, ahora podrá ver todos los archivos y carpetas contenidos dentro de esos paquetes NuGet.
  • Los nodos de recursos Win32, incluidos su tamaño y tipo (si pueden determinarse), pueden verse ahora en el árbol de presentación de nodos y en el panel Properties.

Otras actualizaciones 2023.3

  • Se ha introducido la posibilidad de descodificar los recursos de tablas de cadenas Win32.
  • dotPeek muestra ahora los tamaños de los archivos abiertos dentro del panel Properties para una agrupación/no agrupación, archivos dentro de paquetes, archivos, paquetes NuGet, agrupaciones comparadas y recursos Win32.
  • Ya está disponible la validación de la firma del código de autenticidad de la agrupación.
  • Las directivas explícitas #nullable disable aparecen en las fuentes descompiladas.
Más funcionalidades del lenguaje C#

Diff entre agrupaciones 2023.2

dotPeek 2023.2 ofrece una forma de comparar dos agrupaciones en detalle. Esta funcionalidad es especialmente útil cuando se examinan las diferencias entre dos versiones de una agrupación específica y se buscan posibles vulnerabilidades que puedan haberse introducido en una versión más reciente.

Haga clic aquí para obtener más información.

Ventana de herramientas IL Viewer 2023.1

La versión 2023.1 de dotPeek contiene las siguientes mejoras para la ventana de herramientas IL Viewer:

  • Ahora, los nombres de las variables locales se mostrarán para código C# de bajo nivel y de alto nivel, y los nombres de elementos de tupla de variables para código C# de alto nivel se mostrarán como en la fuente original.
  • Los nombres de elementos de tupla comentados se renderizarán desde el PDB/descompilador para las declaraciones de variables locales en código de lenguaje intermedio.
  • Se ha mejorado la sincronización para inicializadores de campos y propiedades, declaraciones dentro de iteradores, métodos async, lambdas, funciones locales y funciones locales y declaraciones de funciones locales anidadas para C# de alto nivel.