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.2
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.2.tar.gz | 10.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| win_depends-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.1 kB
Release files / win_depends-1.0.2.tar.gz
| Download URL | win_depends-1.0.2.tar.gz |
|---|---|
| Size | 10.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
08e02262b48221379921fcc1977bb6abf7d59ee88efb5e11ffee57c6b5d19459
|
|
BLAKE2b-256 checksum How to use checksums |
cefcce12ad1863174b44d8818bb3ed0031c6e3e750be5b007fe0b06db6a8fc05
|
| 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.2-py3-none-any.whl
| Download URL | win_depends-1.0.2-py3-none-any.whl |
|---|---|
| Size | 12.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8c02a36dc5a0f42306a679bf9eb40db98566a40274346870b2e8b2168a5395e9
|
|
BLAKE2b-256 checksum How to use checksums |
e76962892fbade312762e489e05bf3f2dd63bafa8d2d2f2604301a8293d934a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|