Drag and drop functionality allows you to quickly run any Python file by dragging it onto theDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Scratchaker/Windows-Python-Launcher/llms.txt
Use this file to discover all available pages before exploring further.
PythonLauncher.bat file. This is particularly useful for testing individual scripts or running utilities.
How Drag and Drop Works
When you drag a file onto a batch script in Windows, the file path is passed as the first argument (%1) to the script.
Configuration Requirements
Correct configuration for drag and drop:%~1 parameter to detect if a file was provided. When passarguments=1, the launcher passes all arguments to the Python script instead of treating the first argument as a file to run.
Code Implementation
Here’s how the launcher handles drag and drop (fromPythonLauncher.bat:147-165):
passarguments=0 and an argument is provided (%~1 is not empty), the launcher treats it as a file path and executes it.
Usage Examples
Example 1: Running a Utility Script
You have a project with multiple utility scripts:data_processor.py:
- Open
utils/folder in Windows Explorer - Drag
data_processor.pyontoPythonLauncher.batin the parent folder - The script runs in your virtual environment
Example 2: Testing Individual Modules
During development, you want to test a specific module:test_api.py onto the launcher. The script will run in your virtual environment with all dependencies available.
Example 3: Running Scripts from Subdirectories
The launcher handles file paths correctly, even for nested directories:engine.py onto the launcher will execute:
Virtual Environment Integration
When you drag and drop a file:- Virtual environment is activated (if
usevenv=1) - Script runs with access to installed packages
- Command prompt stays open to show output (unless
autoclosecmd=1)
When Drag and Drop Doesn’t Work
Drag and drop will be disabled in these situations:1. Arguments Enabled
passarguments=0 if you need drag and drop functionality.
2. File Path with Spaces and No Quotes
Windows handles this automatically for drag and drop, but if you manually pass a path with spaces:Drag and drop automatically quotes the file path, so you don’t need to worry about spaces in filenames.
Choosing Between Methods
| Use Case | Best Method | Configuration |
|---|---|---|
| Quick testing of any script | Drag and drop | passarguments=0 |
| Running main app with arguments | Command line | passarguments=1 |
| Running main app without arguments | Double-click | Either setting |
| Testing multiple different scripts | Drag and drop | passarguments=0 |
Advanced: Custom Window Behavior
You can customize how the window appears when using drag and drop: Minimized execution:- Window starts minimized
- Closes automatically when done
- Perfect for background tasks
Common Scenarios
Running Tests
Data Processing Scripts
Development Utilities
Troubleshooting
Drag and Drop Does Nothing
Check your configuration:Script Runs But Can’t Find Modules
Ensure virtual environment is enabled:Window Closes Immediately
Check auto-close setting:autoclosecmd=0, the window stays open so you can see output and errors.