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: traceback.print_exc(file=f) # 静默退出,返回码 1 sys.exit(1)