2014-03-03 36 views
2

我有一個Python腳本設置爲登錄到郵件服務器並將文件傳輸到我的機器上映射的遠程目錄。由於我不想每10分鐘彈出一次,所以我將它保存爲一個pyw文件。它起初運行良好,但隨後停止工作,顯示0x1是Windows Task Scheduler中最後一次運行的結果。發生這種情況時,我可以在.py文件中執行完全相同的代碼並且它可以工作,但即使手動運行,.pyw文件也不會。pyw文件不能間歇性工作/任務計劃程序

如果我將'os.system(「pause」)'行添加到代碼的任何位置,強制命令窗口彈出該代碼行,pyw文件只能再次運行。如果我再次把這條線路取出來,它會在今天的其餘時間繼續工作,但是當我第二天進來時它又停止工作了。

我在如何解決這個問題上很有智慧。我不確定這是pythonw的問題,還是Windows Task Scheduler干擾它或其他事情時出現問題。

+0

我在同一條船上我的朋友!我知道這是一個較舊的帖子...但你有沒有找到修復? – wpg4665

回答

0

我遇到過類似的問題。雖然我的代碼按照預期使用python.exe工作,但無法使用pythonw.exe。

經過很多調試之後,我將源識別爲對sys.stdout.write()的調用。使用pythonw.exe時,sys.stdout爲空,所以程序崩潰,但是,默默地。我在「如果sys.stdout不是無」並且程序開始與pythonw.exe一起工作的情況下包裝了這個調用。

相關問題