소개
windrop는 Windows용 경량 CLI 드래그 앤 드롭 유틸리티입니다. 터미널이나 스크립트에서 파일을 지정하면 F8 키를 눌러 대상 창 위로 드래그하고 다시 F8 또는 마우스 클릭으로 드롭할 수 있습니다. 백그라운드 프로세스나 서비스를 실행하지 않으며, 단일 독립 실행형 바이너리로 작동합니다.
상세정보
네이티브 드래그 앤 드롭 지원
windrop는 CF_HDROP, CF_UNICODETEXT, CFSTR_SHELLURL 등 다양한 셸 페이로드 형식을 지원하여 파일 탐색기, Discord, Slack, Chrome, VS Code, Photoshop 등 다수의 애플리케이션과 호환됩니다. 사용자는 파일을 지정하고 F8 키를 누른 후 대상 창 위로 커서를 이동하여 드롭할 수 있습니다.
플로팅 아크릴 카드 인터페이스
파일을 지정하면 32×32 네이티브 셸 파일 아이콘과 썸네일 미리보기가 표시된 세미투명 플로팅 카드가 나타납니다. 이 카드는 마우스로 직접 드래그하거나 F8 키로 키보드 조작이 가능하며, 여러 번 실행 시 카드가 자동으로 캐스케이드되어 데스크톱에 정렬됩니다.
안전한 글로벌 핫키 처리
F8 키는 저수준 키보드 후크 대신 표준 Win32 RegisterHotKey를 사용해 처리되며, 이로 인해 백신 또는 Windows Defender의 오탐지를 방지합니다. 드래그 모드 취소는 Esc 키 또는 오른쪽 클릭으로 언제든지 가능합니다.
다운로드 및 설치 방법
windrop는 Chocolatey 패키지 관리자를 통해 설치할 수 있습니다. 공식 저장소에서 소스 코드를 클론한 후 Visual Studio와 CMake를 이용해 직접 빌드할 수도 있습니다.
Chocolatey를 통한 설치
관리자 권한으로 PowerShell을 열고 다음 명령을 실행합니다:
choco install windrop
소스 코드로부터 직접 빌드
빌드를 위해서는 다음이 필요합니다:
- Windows 10 또는 11 (x64)
- Visual Studio 2019 또는 2022 (C++ 데스크톱 워크로드)
- CMake 3.16 이상
다음 PowerShell 명령을 순서대로 실행합니다:
cmake -B build -S . -G “Visual Studio 17 2022” -A x64
cmake –build build –config Release
빌드가 완료되면 바이너리는 buildReleasewindrop.exe 경로에 생성됩니다.
기본 사용법
windrop는 간단한 명령 구조를 가지고 있으며, 파일을 하나 이상 지정하여 사용할 수 있습니다.
기본 명령 예시
단일 파일 드래그:
windrop report.pdf
여러 파일 드래그:
windrop photo.png notes.txt data.csv
와일드카드 및 경로에 공백이 있는 파일 처리:
windrop *.jpg “C:My Documentsreport.xlsx”
verbose 모드로 제어 지시자 표시:
windrop –verbose photo.png
버전 확인 및 도움말 보기:
windrop –version
windrop –help
이런 경우에 유용합니다
터미널에서 작업 중 파일을 그래픽 애플리케이션으로 빠르게 전송해야 하는 사용자에게 유용합니다. 예를 들어, VS Code에서 수정한 이미지 파일을 Photoshop으로 바로 드래그하거나, 터미널에서 다운로드한 첨부파일을 Discord 채팅창에 올릴 때 마우스를 반복적으로 이동하지 않고 F8 키만으로 작업을 완료할 수 있습니다. 스크립트 자동화 시에도 파일을 지정하고 드래그 명령을 삽입하여 GUI 상호작용 없이 파일 전송을 수행할 수 있습니다.
지원 환경 및 시스템 요구사항
windrop는 Windows 10 및 Windows 11 (64비트)에서 실행됩니다. 4K 및 고해상도 디스플레이에서 선명한 렌더링을 위해 퍼-모니터 V2 DPI 인식을 지원합니다. 백그라운드 프로세스나 서비스를 생성하지 않으며, 네트워크 소켓이나 인터넷 연결에 접근하지 않습니다.
최신 버전 및 업데이트
현재 버전은 2.1.0이며, 공식 GitHub 저장소에서 소스 코드와 릴리스 정보를 확인할 수 있습니다. 빌드는 결정적 컴파일러 및 링커 플래그를 사용하여 바이트 단위로 재현 가능한 바이너리를 생성하도록 구성되어 있습니다.
시스템 요구사항
별도의 시스템 요구사항이 등록되지 않았습니다.


