Cómo ver las dependencias de una DLL con DUMPBIN paso a paso

Última actualización: 30/06/2025
Autor: Isaac
  • DUMPBIN permite listar las dependencias de DLLs o ejecutables en Windows.
  • La opción /DEPENDENTS muestra las bibliotecas requeridas por un archivo.
  • Es posible automatizar su uso desde PowerShell para tareas complejas.
  • Otras opciones útiles incluyen /HEADERS, /EXPORTS o /IMPORTS.

DUMPBIN

Analizar las dependencias de un archivo DLL es una tarea habitual cuando se investiga el comportamiento de una aplicación, se depura un problema de carga de librerías o simplemente se busca entender qué componentes adicionales necesita un ejecutable para funcionar correctamente. En este contexto, la herramienta DUMPBIN de Microsoft se ha convertido en uno de los recursos más útiles para quienes trabajan con archivos binarios en Windows, ya sea en desarrollo, análisis forense, ingeniería inversa o mantenimiento de software.

DUMPBIN, también conocido como Microsoft COFF Binary File Dumper, es una herramienta de línea de comandos incluida en el entorno de desarrollo Visual Studio. Permite inspeccionar todo tipo de archivos binarios compatibles con el formato COFF (Common Object File Format), como ejecutables (.exe), bibliotecas estáticas (.lib) o bibliotecas dinámicas (.dll). Entre sus funcionalidades más utilizadas, destaca precisamente la posibilidad de ver las dependencias que un archivo DLL o ejecutable necesita para su ejecución.

¿Para qué sirve ver las dependencias de una DLL?

Cuando una aplicación lanza un error indicando que no encuentra una DLL determinada, lo primero que se suele sospechar es que esa dependencia no está disponible en el sistema. Utilizar DUMPBIN en estos casos permite identificar con precisión qué otras bibliotecas necesita un archivo DLL, ayudando a resolver errores de carga o distribución de software.

Además, en entornos empresariales o en proyectos donde se redistribuyen aplicaciones completas, saber qué DLLs son necesarias permite incluirlas correctamente en el instalador o validar que ya están presentes en el sistema de destino.

Cómo acceder a DUMPBIN

La manera más sencilla de ejecutar esta herramienta es abrir el Símbolo del Sistema de desarrollador para Visual Studio. Este entorno ya viene configurado con todas las variables de entorno necesarias, incluyendo la ruta de DUMPBIN.

  Ejemplo: ¿Cómo puedo compartir mi cuenta de Spotify con mis amigos y familiares?

Por ejemplo, para Visual Studio 2017 el ejecutable suele ubicarse en una ruta como:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\Hostx86\x86

Una vez ubicados en ese directorio, ya se puede invocar la herramienta de la siguiente manera:

dumpbin.exe /dependents ruta\al\archivo.dll

Comando /DEPENDENTS de DUMPBIN

DUMPBIN

La opción /DEPENDENTS es la encargada de mostrar la lista de bibliotecas DLL desde las que el archivo especificado importa funciones. Es decir, aquellas de las que depende para su correcto funcionamiento.

Este comando no proporciona información sobre las funciones concretas que se están utilizando (para eso se usaría /IMPORTS), pero es clave para identificar qué DLLs deben estar presentes en el sistema para que la ejecución no falle.

Un ejemplo real de salida generada al ejecutar:

dumpbin /DEPENDENTS MathClient.exe

Proporciona una salida como la siguiente:

Dump of file MathClient1322.exe
File Type: EXECUTABLE IMAGE
Image has the following dependencies:
  MathLibrary.dll
  MSVCP140D.dll
  VCRUNTIME140D.dll
  ucrtbased.dll
  KERNEL32.dll

Estos nombres de archivo indican las DLL que el ejecutable MathClient1322.exe necesita.

Otras opciones útiles de DUMPBIN

La herramienta DUMPBIN incluye varias opciones útiles para desarrolladores y analistas de seguridad entre otras:

  • /HEADERS: Muestra los encabezados del archivo. Incluye información como tipo de archivo, arquitectura, etc.
  • /SYMBOLS: Lista la tabla de símbolos, útil para depuración o ingeniería inversa.
  • /EXPORTS: Muestra las funciones exportadas por el archivo. Es decir, aquellas que puede utilizar otro ejecutable o DLL.
  • /IMPORTS: Muestra las funciones específicas que se están importando desde otras DLLs.

Ejemplo práctico desde PowerShell

Además de utilizar DUMPBIN desde el símbolo del sistema, también se puede usar desde PowerShell, facilitando su integración en scripts automatizados o flujos de trabajo.

Un ejemplo típico sería examinar las dependencias de una DLL como zipfldr.dll ubicada en C:\Windows\System32. La secuencia de comandos sería la siguiente:

cd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\Hostx86\x86"
.\dumpbin.exe /dependents C:\Windows\System32\zipfldr.dll

Este comando ejecuta DUMPBIN desde PowerShell sin problemas y muestra directamente las dependencias.

Obtener los nombres de funciones exportadas mediante script

Más allá de las dependencias, también es posible querer saber qué funciones exporta una DLL. Esto es clave, por ejemplo, cuando se desarrollan aplicaciones que necesitan llamar directamente a funciones externas.

  Find out how to Print to PDF or Save As PDF in Microsoft Excel

Desde PowerShell se puede ejecutar DUMPBIN usando la opción /EXPORTS y luego procesar la salida para obtener los nombres de las funciones. Por ejemplo:

$content = .\dumpbin.exe /exports C:\Windows\System32\zipfldr.dll

Posteriormente, se depura la salida quitando líneas vacías y se trabaja con cadenas para identificar la sección relevante que empieza por ordinal hint RVA name y termina en Summary.

Este método automatizado facilita realizar auditorías, documentación o validaciones sin inspección visual.

Alternativas a DUMPBIN

En algunos casos, puede que no se quiera depender de Visual Studio. Existen alternativas externas como dependencias en forma de DLL que permiten recuperar la lista de dependencias de un archivo desde un formulario de Visual Basic, como la ofrecida en recursosvisualbasic.com.ar.

Esta DLL devuelve un array con los nombres de los archivos de los que depende una aplicación y se puede invocar con:

Listado = Obj.Depedencias

Además, permite abrir un diálogo para seleccionar el archivo objetivo y registrar la DLL mediante regsvr32.

Casos de uso en análisis y depuración

Los usos de DUMPBIN trascienden el desarrollo básico de software. Analistas de malware, investigadores de seguridad o incluso técnicos IT la usan para detectar dependencias ausentes, verificar firmas de archivos, o realizar ingeniería inversa de binarios sospechosos.

Por ejemplo, mediante el comando /ALL se puede obtener toda la información disponible de un archivo incluyendo dependencias, ASM desensamblado, directivas y secciones. Sin embargo, es más recomendable usar comandos por separado e ir analizando la información de forma más organizada.

Una práctica habitual es trabajar con /SECTIONS cuando se analizan ejecutables y se busca conocer su estructura interna, ayudando a identificar qué parte contiene código, datos, recursos, etc.

Deja un comentario