老闆要求寫一個基於Python的桌面APP,最後使用py2exe打包,生成了幾個將近22M的文件(原代碼還不到800K),老闆當然不願意了,於是再研究其他替代方法:“.bat批處理執行Python程序”
於是屁顛屁顛地跑去學習.bat了……
看了幾個網絡例子了以後,發現滿足我的需求的.bat其實很簡單,於是:
- @echo off
- D:
- cd D:\WORKSPACE\Python27\tss
- start python tss_main.py
- exit
信心滿滿地運行起來……
程序運行的很正常,可是伴隨著一個黑色的DOS窗口,老闆更不爽了,╮(╯▽╰)╭
於是谷歌、百度了一些方法:使用“.vbs”是被推薦的最多的,可也沒有成功。
正在胡亂嘗試的時候發現PYTHON_HOME下有一個"pythonw.exe",於是試了一下居然成功了,嚯嚯,人品好啊~
但是爲了找準原因,查了查"pythonw.exe"和"python.exe"的區別:
1)"pythonw.exe"執行時不會出現DOS窗口
2)"pythonw.exe"執行時所有stdin和stdout都無效
3)"pythonw.exe"執行時從原有的sdtin只會得到EOF
所以最終結果:
- @echo off
- D:
- cd D:\WORKSPACE\Python27\tss
- start pythonw tss_main.py
- exit