Skip to content

Latest commit

 

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

windrop

A lightweight CLI drag-and-drop utility for Windows.

100% Native Win32 / OLESingle Standalone BinaryPeak Working Set < 3MBZero Background Bloat / Zero Services

windrop.mp4

Note

Demo video on version v2.0.0

windrop lets you initiate native Windows drag-and-drop operations directly from your terminal or scripts without running background daemons or heavy electron wrappers.

PS C:\Stuff> windrop report.pdf
# Move cursor over Discord, Chrome, VS Code, Explorer, Slack, etc.
# Press [F8] to drag -> press [F8] or left-click to drop!
Drop completed (Copy).

How to Use

1. The Command

windrop <files...>
windrop --verbose <files...>
windrop --version | -v
windrop --help | -h
# Check version
windrop --version

# View help
windrop --help

# Verbose output with control instructions
windrop --verbose photo.png

# Single file
windrop photo.png

# Multiple files
windrop report.pdf notes.txt data.csv

# Wildcards & spaces
windrop *.jpg "C:\My Documents\report.xlsx"

2. Controls & Actions

Action How to Trigger
Keyboard Drag & Drop Hover cursor over target window and press F8 to drag → press F8 or left-click to drop
Mouse Drag & Drop Grab and drag the floating card widget directly into any window
Dismiss / Cancel Press Escape or Right-Click the card anytime

Features

  • True Standalone Binary: Pure C++17 compiled against native Windows APIs (ole32, shell32, user32). Starts instantly, exits immediately after drop, uses 0 background resources.
  • No internet access, not even sockets/network libs anywhere in CMakeLists.txt or source.
  • 2-Step Keyboard Drag (F8): Hover over any destination window, press F8 to engage drag (target lights up with visual drop cues), and press F8 or left-click to drop.
  • Floating Acrylic Card: Sleek dark card with 32x32 native shell file icon and thumbnail preview for direct mouse drags.
  • Multi-Widget Staging: Run windrop multiple times from your CLI — cards automatically cascade (+30px offset) across your desktop.
  • Multi-Format Shell Payload:
    • CF_HDROP: Native shell file lists for File Explorer, 7-Zip, Discord, Slack.
    • CFSTR_PREFERREDDROPEFFECT: Explicit copy / move negotiation.
    • CF_UNICODETEXT & CF_TEXT: Newline-separated file paths for text editors, IDEs, and terminals.
    • CFSTR_SHELLURL: file:/// URLs for web browsers and Electron web applications.
  • Safe Global Hotkey Handling (F8):: Uses standard Win32 RegisterHotKey on an isolated worker message loop instead of low-level keyboard hooks (WH_KEYBOARD_LL), eliminating false-positive antivirus / Defender flags.
  • Byte-for-Byte Reproducible Builds: Configured with deterministic compiler and linker flags (/experimental:deterministic, /Brepro, /PDBALTPATH:%_PDB%), ensuring bit-identical binaries across builds.
  • Per-Monitor V2 DPI Aware: Crisp, sharp rendering on 4K and high-DPI displays.

Target Compatibility

Application Supported Drops Status
Discord / Slack / Teams File uploads, channel attachment sharing Full Support
Chrome / Edge / Firefox / Brave File upload inputs, Gmail, web applications Full Support
VS Code / Cursor / Visual Studio Editor split view, file explorer drop Full Support
Windows File Explorer File copy and move operations Full Support
Notepad / Sublime / Text Editors File paths pasting Full Support
Photoshop / Illustrator / GIMP Direct image canvas drop Full Support

Build Instructions

Requirements

  • Windows 10 / 11 (x64)
  • Visual Studio 2019 or 2022 (C++ Desktop workload)
  • CMake 3.16+

Build via PowerShell (2 lines)

cmake -B build -S . -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release

The compiled binary will be located at:

build/Release/windrop.exe

Technical Details

For internal architecture, COM data object implementation, and state machine diagrams, see Architecture.md.


License

MIT License. Copyright © 2026 Dastageer Siddiqui.

About

CLI Windows drag-and-drop utility (dragon / blobdrop for Windows)

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages