win_depends
🧩 win_depends is a lightweight tool to analyze DLL and EXE dependencies on Windows. It supports recursive dependency resolution, detection of missing or unused files, and exports to DOT graph format.
📦 Installation
pip install win_depends
🚀 Usage Example
Run the tool in a directory containing .dll and .exe files:
win_depends
You can also specify a path to a file or directory:
win_depends ./path/to/myapp.exe
win_depends ./build/bin/
Optional flags can customize the output, such as displaying a dependency tree:
win_depends ./build/bin --tree
```bash
win_depends
Optional flags can customize the output, such as displaying a dependency tree:
win_depends --tree
🔍 Features
- ✅ Analyze imports between
.dlland.exefiles, including delayed and bound imports - ✅ Detect forwarded exports and surface forwarding targets directly in tree / missing / invalid outputs (DLL name only)
- ✅ Resolve
api-ms-*/ext-ms-*contracts to host DLLs (for examplekernelbase.dll) to avoid false missing reports - ✅ Parallel dependency analysis for faster performance
- ✅ Automatic detection of system DLLs (always enabled)
- ✅ Detect missing dependent files
- ✅ Detect unused files in directory
- ✅ Tree-style output of dependencies
- ✅ Export to DOT format for graph visualization
🧪 Sample Output
$ win_depends ./demo.exe --tree
└── demo.exe
├── user32.dll ❌
├── plugin.dll
│ └── helper.dll
└── kernel32.dll ❌
Missing dependencies:
user32.dll
kernel32.dll
Metadata
Release files for win-depends 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| win_depends-1.0.1.tar.gz | 9.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| win_depends-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.9 kB
Release files / win_depends-1.0.1.tar.gz
| Download URL | win_depends-1.0.1.tar.gz |
|---|---|
| Size | 9.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fd05d50a956b984bcb568e67a73fd3f89efaa237e315ee973e5b6f6d7b63c08e
|
|
BLAKE2b-256 checksum How to use checksums |
c163671dda22023add64b80aebfb49ccb9919e171e795434e70c87327bd45b7b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Release files / win_depends-1.0.1-py3-none-any.whl
| Download URL | win_depends-1.0.1-py3-none-any.whl |
|---|---|
| Size | 12.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5aedcae1f1cc2894e1ed705c5ffdcc9e17fbb526a3995dda4a53926870c3b1f2
|
|
BLAKE2b-256 checksum How to use checksums |
524b06c039810213a1d2d887aff17d0c8f4e8dfa04c45937cbb1b38dc8685df6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|