作者XperiaZ6C (索尼)
看板Python
標題[問題] 如何刪除exe執行後產生的資源檔
時間Fri Mar 8 09:34:33 2019
我是使用pyinstaller打包的
因為有將一些程式執行時所需要的資源也一起包進去
所以每次執行exe檔之後
它都會重新解壓一次exe檔案裡面他資源
並放到暫存裡區
如果反覆執行很多次的話
會在「C:\Users\username\AppData\Local\Temp\」裡面
產生一大堆垃圾
想請問有辦法在程式碼中加入一段來清除這些資源嗎
不知道怎麼找這關鍵字
Google出來的幾乎都是教怎麼清除記憶體資源之類的QQ
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 174.206.56.211
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1552008876.A.947.html
1F:推 dennisxkimo: pyinstaller clean %TEMP%03/08 12:22
這是讓pyinstaller去清嗎?
但因為我打包成exe之後分享去別人電腦好像就不能這樣清了QQ
2F:推 nini200: 哇 你沒講我都不知道 哈哈03/08 12:51
學打包的時候無意中發現的XD
3F:→ AndCycle: 正常來講他會清, 沒清乾淨的話要看你的程式做了什麼03/08 16:39
4F:→ AndCycle: pyinstaller ref: How the One-File Program Works03/08 16:50
5F:→ AndCycle: 如果你的程式不正常結束或是當掉, 他會沒辦法幫你收尾03/08 16:50
感謝大大提供的關鍵字
我再研究一下
因為有時候使用者只是試跑或是其他原因
不會等到程式全部跑完就強制關了
所以才希望可以清一下
※ 編輯: XperiaZ6C (174.206.56.211), 03/08/2019 23:40:36
8F:→ s860134: workaround 方法應該蠻多的,另一個文件去記 pid 每次開03/09 12:28
9F:→ s860134: 確認裡面的 pid 還活著沒,不在的就砍 tmp 並更新檔案03/09 12:29
感謝大大!
※ 編輯: XperiaZ6C (47.44.8.66), 03/09/2019 12:44:12