How bhuknuu/file-deduplication works
WinDedup scans selected directories, hashes eligible files, groups byte-identical content, presents results through a Win32 GUI or CLI, and can delete, move, or hardlink duplicates. The graph reflects README-described capabilities as well as sampled calls; some CLI filtering, reporting, and GUI progress wiring is documented but not fully visible in the excerpts.
Main entry points: cli_main.c CLI · gui_win32.c Win32 GUI · Traversal.c Directory Scan · filter.c Duplicate Grouping
Components 15
User Interfaces
- Win32 GUI
gui_win32.c - CLI
cli_main.c - Taskbar Progress
gui_win32.c
Scanning
- Directory Scan
Traversal.c - SHA-256 Hashing
Traversal.c - Hash Cache
dedup_cache.txt
Duplicate Resolution
- Duplicate Grouping
filter.c - File Actions
action.c - Duplicate Results
common.h
Filters and Reports
- File Filters
features.c - Exports and Logs
features.c - Configuration
features.c
Other components
- User
- Windows Filesystem
- Windows CNG
Connections 19
- User → Win32 GUI: operates
- User → CLI: invokes
- Win32 GUI → Directory Scan: starts scan
- CLI → Directory Scan: scans directories
- Directory Scan → Windows Filesystem: enumerates metadata
- Directory Scan → SHA-256 Hashing: requests hashes
- SHA-256 Hashing → Windows Filesystem: reads file bytes
- SHA-256 Hashing → Windows CNG: computes SHA-256
- Directory Scan → Hash Cache: reads and writes
- Win32 GUI → Duplicate Grouping: finds duplicates
- CLI → Duplicate Grouping: groups files
- Duplicate Grouping → Duplicate Results: assembles groups
- Win32 GUI → File Actions: invokes actions
- CLI → File Actions: executes selected action
- File Actions → Windows Filesystem: deletes moves or links
- CLI → File Filters: applies options
- CLI → Exports and Logs: requests exports
- CLI → Configuration: loads settings
- Win32 GUI → Taskbar Progress: reports progress