2011-07-06 46 views
2

我有一個運行python腳本的批處理文件。當調用python腳本時,它會啓動第二個Windows控制檯,然後在完成時消失。這是一個問題,因爲我正在編輯批處理文件中的PYTHONPATH環境變量,但由於python腳本正在另一個窗口中運行,因此無法看到編輯的PYTHONPATH環境變量。它曾經工作得很好(一切都會在同一個Windows控制檯中運行)。我剛剛安裝了Vista SP2,並且出現了這個問題。有關如何解決可能被破壞的任何想法?從批處理文件調用python腳本打開第二個控制檯

謝謝。

+1

停止使用Vista? –

+0

不幸的是,我現在堅持使用Vista(這是一款工作電腦)。我也用類似的設置嘗試了同事PC上的批處理文件,運行良好。我不知道SP2是否真的應該受到指責,或者只是巧合。我正在使用命令C:\ python25 \ python.exe script.py。我也確定批處理文件與它無關。當我試圖從命令行運行python腳本時,會發生同樣的事情。 – Jesse

+0

是的,看起來就是這樣!在所有用戶的選項中,它被設置爲以管理員身份運行。我沒有檢查,現在它是好的!感謝您的幫助,eryksun! – Jesse

回答

0

您是否嘗試將python腳本的擴展名更改爲.pyw,或者只是使用pythonw.exe調用它?

+0

感謝您的回覆。我用pythonw.exe運行了它,第二個窗口沒有彈出,但python腳本仍在第二個窗口中運行(即python腳本中的打印語句沒有顯示在主控制檯窗口中)。 – Jesse

+0

I認爲pythonw.exe總是在「隱形窗口」中運行。你有沒有嘗試過python.exe? (我希望它*不*與直接運行.py腳本相同 - 我認爲窗口派發的擴展名魔術干擾) –

+0

我正在使用python.exe。如果一個批處理文件正在調用它或者我只是從命令行運行一個python腳本,它似乎沒有什麼區別。無論哪種方式,第二個窗口彈出。 – Jesse

0

可能是.py文件類型與pythonw.exe相關聯,因此導致它在新進程中打開。找到任何.py文件,右鍵單擊它,選擇屬性,然後選中「在...中打開:」缺省解釋器的內容。

+0

我確實將Python.File作爲關聯的應用程序。這是我運行'ftype Python.File'時得到的結果:python.file =「C:\ Python25 \ python.exe」「%1」%* – Jesse

0

好的,所以我決定重新安裝python。如果我在默認位置卸載並重新安裝(我正在使用Windows安裝程序),它似乎沒有任何作用。我清理了註冊表並重新安裝了。仍然沒有不同。但是,如果我在不同的位置(默認情況下除外)安裝python,它似乎運行良好。有些地方顯然是腐敗的,但我不知道在哪裏。因此,我將重新安裝其他模塊的所有其他模塊,並從那裏開始。

謝謝大家的回覆。

相關問題