2013-05-02 44 views
3

我遵循Python的官方FAQ來製作.py文件可執行文件,即將.py添加到$ PATHEXT並將Python.File綁定到「C: \ Python27 \ Python.exe「」%1「%*。其結果是罰款:儘管重新綁定Python,但Windows仍然打開.py文件,但仍然使用C: Python27 Python.exe

>assoc .py 
.py=Python.File 
>ftype Python.File 
Python.File="C:\Python27\Python.exe" "%1" %* 

我最近安裝的virtualenv並希望能運行在一個虛擬環境中的Django項目名爲ENV1。 env1的路徑是:「D:\ env1」。當我在cmd中輸入env1並嘗試直接執行django-admin.py時,會引發ImportError異常。我想這是因爲Windows調用了我的默認python解釋器(c:\ Python27 \ python.exe),在其下未安裝django。所以我嘗試了以下內容:

ftype Python.File="D:\env1\Scripts\python.exe" "%1" %* 

命令成功執行。但是,執行.py文件的行爲完全沒有改變。無論是雙擊該文件,還是通過cmd中的文件名直接執行它,c:\ python27 \ python.exe總是被調用,正如任務管理器所示。

在這一點上,我只能想到,這個問題與一些窗口設置有關,並且與virtualenv無關。請幫助正確地使綁定工作,謝謝!

+0

你在virtualenv中運行這個權利?這是一個很長的時間,但不會給你一種「激活」某些環境的方法嗎?這不就是你真正想要做的嗎? – 2014-07-12 08:33:01

回答

3

另一個關鍵是覆蓋由ftype設置的密鑰。您可以使用 Registry Editor 也被稱爲regedit來搜索密鑰。搜索

C:\Python27\Python.exe 
+1

我在'HKEY_CURRENT_USER \ Software \ Classes \ Applications \ python.exe \ shell \ open \ command'下的默認鍵中找到一個,然後在HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion下找到一個名爲'Progid'的DWORD \ Explorer \ FileExts \ .py \ UserChoice「,其值爲」Application \ python.exe「。我如何改變這些? – Benny 2013-05-02 08:11:09

+0

@不要輕易刪除兩個鍵都不會受傷;如果你緊張,你可以先支持他們。 – 2013-05-02 08:13:27

+0

謝謝@Steven!解決了這個問題! – Benny 2013-05-02 08:18:32

相關問題