Files
nezhacursor/main.py
2025-02-12 09:33:04 +08:00

57 lines
1.6 KiB
Python

import logging
import sys
import traceback
from pathlib import Path
from gui.main_window import MainWindow
def setup_logging():
"""设置日志"""
try:
log_dir = Path.home() / ".cursor_switcher" / "logs"
log_dir.mkdir(parents=True, exist_ok=True)
log_file = log_dir / "switcher.log"
# 只输出到文件,不输出到控制台
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s - %(levelname)s - %(message)s",
handlers=[
logging.FileHandler(log_file, encoding="utf-8"),
]
)
except Exception as e:
# 不打印错误信息,只记录到日志
pass
def main():
"""主函数"""
try:
setup_logging()
# 检查Python版本
logging.info(f"Python版本: {sys.version}")
# 检查工作目录
logging.info(f"当前工作目录: {Path.cwd()}")
# 检查模块路径
logging.info("Python路径:")
for p in sys.path:
logging.info(f" - {p}")
logging.info("正在初始化主窗口...")
window = MainWindow()
logging.info("正在启动主窗口...")
window.run()
except Exception as e:
error_msg = f"程序运行出错: {str(e)}\n{traceback.format_exc()}"
logging.error(error_msg)
# 使用tkinter的消息框显示错误
from tkinter import messagebox
messagebox.showerror("错误", error_msg)
if __name__ == "__main__":
main()