Funcionalidades de dotPeek

Decompila agrupaciones .NET a C# o IL

dotPeek puede decompilar cualquier agrupación .NET en código C# equivalente y, opcionalmente, mostrar el código IL subyacente.

Descripción general de interfaz de usuario de dotPeek

Bibliotecas, ejecutables y más

dotPeek puede trabajar con una variedad de formatos, tales como bibliotecas (.dll), ejecutables (.exe) y archivos de metadatos (.winmd).

dotPeek también puede decompilar archivos .baml, lo que le permite reconstruir las definiciones de interfaz de usuario XAML.

Además de agrupaciones y ejecutables tradicionales, puede hacer que dotPeek abra archivos (.zip, .vsix o .nupkg) y carpetas. También puede localizar y cargar paquetes de NuGet (y sus dependencias) desde cualquier fuente de paquetes en línea, o cargar paquetes incluidos en un archivo packages.config en su proyecto de Visual Studio.

Ver el código fuente si está disponible

Ver el código fuente si está disponible

El código decompilado es mejor que nada, pero a veces puede hacer coincidir una agrupación con su código fuente, entonces, ¿por qué no aprovecharlo? dotPeek puede identificiar código fuente local basado en carpetas PDB, o recuperar código fuente de servidores de origen como Microsoft Reference Source Center o SymbolSource.org. Además, dotPeek puede generar archivos PDB.

Use el menú desplegable del modo de navegación de la barra de menú para elegir si solo desea que dotPeek decompile agrupaciones, o intente encontrar el código fuente si es posible.

Mostrar código generado por el compilador

Mostrar u ocultar código generado por el compilador

Puede elegir mostrar ciertas transformaciones del compilador, con lo cual hará que la estructura de código mostrada por dotPeek sea muy similar a lo que lo convierte el compilador. Esto ayuda a ver cómo el compilador maneja lambdas, clausuras y propiedades autoimplementadas, entre otras cosas.

Ventana de Explorador de procesos en dotPeek

Explore procesos en ejecución

La ventana de Process Explorer (Explorador de procesos) muestra todos los procesos en ejecución actualmente y permite explorar sus módulos y decompilar aquellos que sean ensamblados .NET. Puede elegir mostrar u ocultar procesos y módulos nativos, o activar la vista de jerarquía de proyecto.

Filtre la lista para encontrar un módulo o proceso que busca, y luego añada sus ensambles al Assembly Explorer (Explorador de ensambles) para continuar la investigación.

Visor de código IL en dotPeek

Vea el código IL en una ventana separada

Cuando desee analizar en mayor profundidad que el código fuente, puede navegar al código IL desde cualquier punto en el C# decompilado.

La forma más fácil de hacer esto es mostrar el código IL en una ventana de herramientas separada que está sincronizada con el visor de código principal.

dotPeek puede mostrar código IL tanto para código decompilado como para código fuente reproducido a partir de archivos de símbolos.

Código IL mostrado como comentarios al código C#

Ver código IL como comentarios al C# decompilado

Alternativamente, puede elegir mostrar el código IL como comentarios al código C# decompilado, que combina efectivamente su visor de texto predeterminado y la ventana de IL Viewer normalmente separada, todo en una vista.

Tema de color oscuro en dotPeek

Use el tema de color que prefiera

dotPeek acepta la misma variedad de temas de colores que Visual Studio.

Por ejemplo, puede seleccionar el tema Azul u Oscuro, o elegir sincronizar su preferencia de esquema de colores con la configuración de Visual Studio.

Navegue hacia código decompilado de distintas formas

Como dotPeek está basado en la potente arquitectura de información del código de ReSharper, le permite navegar a agrupaciones de una forma contextual o indiferente al contexto, obtener un rápido resumen de lo que hay dentro de cada archivo decompilado, definir marcadores y explorar las cadenas hereditarias.

Resultados de búsqueda enumera todos los usos encontrados de un símbolo

Búsqueda de usos de cualquier símbolo

Con dotPeek, tiene varias opciones para buscar dónde se hace referencia a símbolos de código.

Invoque Buscar usos para encontrar todos los usos de un símbolo (tales como un método o propiedad) en todas las agrupaciones cargadas. Los usos se mostrarán en la ventana de herramientas Resultados de búsqueda, donde puede agruparlos, navegar entre ellos y abrir el área de vista de código.

También hay una función Buscar usos avanzada, que es una versión más detallada de Buscar usos que le ayudará a ajustar los criterios de búsqueda al limitar el alcance de la búsqueda y otros detalles.

Usos del resaltado en archivos

Resaltar usos en el visor de código

dotPeek resalta automáticamente todos los usos visibles del símbolo bajo el signo de intercalación, de forma muy similar a cómo lo hacen las versiones recientes de Visual Studio. Esto ayuda a mejorar la legibilidad del código decompilado, especialmente cuando está lidiando con identificadores ofuscados.

Además, si desea ver todos los usos en el archivo, estén o no visibles actualmente, use Resaltar usos en el archivo. Esto resaltará todos los usos de un símbolo dado en el archivo actual, usando dos colores distintos para los usos de escritura y lectura.

Ventana de estructura de archivo

Explorar el documento actual

Use Ir a miembro del archivo para obtener un rápido resumen de, y navegar a, los miembros de un documento que representan un tipo decompilado. Ingrese partes de nombres de miembros y navegue directamente hasta ellas.

Alternativamente, si desea una vista estática de los miembros del documento actual, abra y fije la ventana de herramientas Estructura de archivo. También puede fijar esta vista: seleccione la ventana de herramientas y simplemente empiece a escribir caracteres para enfocarse únicamente en los miembros de tipos que le interesen.

Use "Go to Everything" para saltar a tipos, archivos y miembros específicos, etc.

Salte a cualquier código

Al indexar todas las agrupaciones de su lista de agrupaciones, así como todas las referencias, dotPeek brinda dos funciones para saltar rápidamente a un código específico:

  • Go to Symbol ayuda a navegar hacia la declaración de un símbolo específico, que podría ser un tipo, método, campo o propiedad. Use la sintaxis lowerCamelHumps syntax para encontrat tipos. Por ejemplo, ingrese xmard para ubicar y abrir XamlMarkupDeclaredElement.
  • Go to Everything permite buscar una agrupación, espacio de nombres, tipo, miembro o archivo recientemente abierto.
Marcadores en dotPeek

Definir marcadores

Si hay líneas de código decompilado que considera importantes y desea volver a ellas más tardes, siéntase libre de crear marcadores.

Simplemente coloque un marcador numerado con un atajo y vuelva a saltar al mismo en cualquier momento con otro atajo. Puede crear hasta 10 marcadores numerados y una cantidad ilimitada de marcadores no numerados. La lista completa de posiciones marcadas se muestra en una única ventana emergente.

Opciones de navegación sensible al contexto

Navegue de forma contextual

Cada vez que coloca un signo de intercalación en un símbolo en el área de visualización de código, dotPeek le ofrece una gran cantidad de opciones de navegación contextual que están disponibles a través del menú desplegable Navegar a.

Por ejemplo, Go to Declaration lo lleva desde un uso de un símbolo a su declaración. Si el símbolo se declara en otra agrupación, la agrupación se carga automáticamente.

Go to Implementation ayuda a navegar hasta implementaciones finales de tipos y miembros de tipos, salteando los pasos de herencia intermedia en la cadena hereditaria, tales como clases abstractas.

Otras opciones útiles de navegación contextual incluyen Go to Base Symbols y Go to Extension Methods.

Ir a tipos derivados

Navegar a jerarquías de clases

Si desea navegar hacia arriba y hacia abajo de una jerarquía de herencias para un tipo o miembro de tipo específico, considere usar Go to Base Symbols y Go to Derived Symbols.

Estos son muy útiles para ir directamente a un heredero o símbolo base.

Vista de Jerarquía de tipos

Explore cadenas de herencia

Si busca un resumen visual de cierta cadena de herencia, use Jerarquía de tipos.

dotPeek le mostrará todos los tipos que se heredan del tipo seleccionado, así como los tipos que hereda él mismo, en vista de árbol, en una ventana de herramientas separada.

Comprenda las agrupaciones

dotPeek ofrece herramientas para entender rápidamente la estructura de cualquier agrupación dada, comprender las relaciones entre agrupaciones y organizar agrupaciones en listas discretas, lo que ayuda a enfocarse únicamente en las agrupaciones de interés para su tarea actual.

dotPeek le ayuda a navegar por carpetas, archivos y paquetes NuGet

Gestione listas de agrupaciones

Puede trabajar con distintas listas de agrupaciones según su contexto. Puede guardar y volver a abrir listas de agrupaciones, y limpiar la lista actual si ya no la necesita. Las listas de agrupaciones no se limitan a archivos .dll y .exe: también pueden contener paquetes NuGet, archivos y carpetas.

Explorador de agrupaciones de dotPeek

Explore contenidos de agrupaciones

Cuando esté trabajando con una lista de agrupaciones, el Explorador de agrupaciones le mostrará qué tipo de referencias, recursos y código tiene una agrupación en particular, desde nombres de espacios a miembros de tipos.

Para cada tipo, resalta los nodos que representan sus herederos tipos bases, además de la propia lista de miembros. También soporta las búsquedas rápidas y el filtrado de nodos usando lowerCamelHumps.

Explorar metadatos de agrupaciones con dotPeek

Explorar metadatos de agrupaciones

dotPeek también le ayuda a explorar los metadatos de la agrupación y examinar todos los elementos (tablas, blobs, cadenas, etc.) de su interior. En el nodo Metadatos, puede explorar valores de elementos blob, encabezados de archivos PE, usos de elementos de tabla de metadatos.

Al igual que en cualquier otro lugar del árbol de la agrupación, puede hacer doble clic en los elementos de metadatos para decompilar y mostrar el código correspondiente.

Diagrama de dependencia de ensambles

Ver dependencias entre agrupaciones

Si desea conocer las dependencias entre agrupaciones, puede seleccionar varias agrupaciones en el Explorador de agrupaciones y pedirle a dotPeek que muestre un diagrama de dependencias de agrupaciones.

Esto le permitirá visualizar cualquier relación existente entre las agrupaciones seleccionadas en base a sus referencias.

Descargar dotPeek

Gratis, no requiere clave de licencia