I had exactly the same problem and solved it using this tool:
FileTypesManager
The problem is that django-admin.py is not receiving the correct arguments from the command line. I did a test by hacking a couple of lines into the front of the admin script to display the number of arguments and what they were before it did anything else. The hack:
#!d:python27python.exe
from django.core import management
import sys
print 'Number of arguments:', len(sys.argv), 'arguments.'
print 'Argument List:', str(sys.argv)
if __name__ == "__main__":
management.execute_from_command_line()
When you run django-admin.py you will see that there is only 1 argument ever being passed. Which is not correct.
As suggested in several forums, I tried both of the following at the command line, and both looked spot on:
assoc .py --> .py=Python.File
ftype Python.File --> Python.File="D:Python27python.exe" "%1" %* //Correct
I then looked in the registry and the values looked good as well.
However, when I ran FileTypesManager, (it's free) it showed something different. The command-line was set as:
"D:Python27python.exe" "%1" //Wrong!
I have no idea why, but as soon as I updated this value it all worked flawlessly.
I hope that helps.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…