完善tidevice逻辑
This commit is contained in:
@@ -1,16 +1,37 @@
|
||||
# import sys, traceback, os
|
||||
# from tidevice.__main__ import main
|
||||
#
|
||||
# import sys, os
|
||||
# with open(os.path.join(os.path.dirname(sys.executable), '_entry_log.txt'), 'w') as f:
|
||||
# f.write('entry reached\nargs=%r\n' % sys.argv)
|
||||
#
|
||||
# if hasattr(sys, 'frozen') and sys.executable.endswith('.exe'):
|
||||
# # 打包后且无控制台时,把标准流扔掉
|
||||
# sys.stdout = sys.stderr = open(os.devnull, 'w', encoding='utf-8')
|
||||
#
|
||||
# if __name__ == "__main__":
|
||||
# try:
|
||||
# main()
|
||||
# except Exception:
|
||||
# # 把 traceback 写到日志文件,但**不输出到控制台**
|
||||
# with open(os.path.expanduser("~/tidevice_crash.log"), "a", encoding="utf-8") as f:
|
||||
# traceback.print_exc(file=f)
|
||||
# # 静默退出,返回码 1
|
||||
# sys.exit(1)
|
||||
|
||||
|
||||
import sys, traceback, os
|
||||
from tidevice.__main__ import main
|
||||
|
||||
if hasattr(sys, 'frozen') and sys.executable.endswith('.exe'):
|
||||
# 打包后且无控制台时,把标准流扔掉
|
||||
sys.stdout = sys.stderr = open(os.devnull, 'w', encoding='utf-8')
|
||||
|
||||
if __name__ == "__main__":
|
||||
try:
|
||||
main()
|
||||
except Exception:
|
||||
# 把 traceback 写到日志文件,但**不输出到控制台**
|
||||
with open(os.path.expanduser("~/tidevice_crash.log"), "a", encoding="utf-8") as f:
|
||||
except SystemExit as se: # 允许正常 exit(code) 继续生效
|
||||
raise
|
||||
except Exception: # 真正异常时才写日志
|
||||
crash_log = os.path.expanduser("~/tidevice_crash.log")
|
||||
with open(crash_log, "a", encoding="utf-8") as f:
|
||||
f.write("----- tidevice exe crash -----\n")
|
||||
traceback.print_exc(file=f)
|
||||
# 静默退出,返回码 1
|
||||
# 如果想让用户知道崩溃了,可以返回非 0
|
||||
sys.exit(1)
|
||||
Reference in New Issue
Block a user