Drag and drop onto Python script in Windows Explorer
write a simple shell script (file.bat
)
"C:\python27\python.exe" yourprogram.py %*
where %*
stands for the all arguments you pass to the script.
Now drag & drop your target files on the file.bat
icon.
Sure. From a mindless technology article called "Make Python Scripts Droppable in Windows", you can add a drop handler by adding a registry key:
Here’s a registry import file that you can use to do this. Copy the following into a .reg file and run it (Make sure that your .py extensions are mapped to Python.File).
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Python.File\shellex\DropHandler] @="{60254CA5-953B-11CF-8C96-00AA00B8708C}"
This makes Python scripts use the WSH drop handler, which is compatible with long filenames. To use the short filename handler, replace the GUID with 86C86720-42A0-1069-A2E8-08002B30309D
.
A comment in that post indicates that one can enable dropping on "no console Python files (.pyw
)" or "compiled Python files (.pyc
)" by using the Python.NoConFile
and Python.CompiledFile
classes.