# auto-shutoff **Repository Path**: ViVi141/auto-shutoff ## Basic Information - **Project Name**: auto-shutoff - **Description**: 简易的程序定时关闭器 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-02 - **Last Updated**: 2024-12-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ```markdown # 程序定时关闭器 这是一个使用 Python 编写的程序定时关闭器,旨在帮助用户定时关闭指定的程序。通过简单的图形用户界面(GUI),用户可以选择要关闭的程序,并设置监控的时间间隔。程序会每4小时检查一次指定程序的进程,并在找到时关闭它们。 ## 功能特点 - **获取进程**:通过系统命令 `tasklist` 获取所有进程,并过滤出指定程序的进程ID。 - **关闭程序**:通过系统命令 `taskkill` 强制关闭指定进程,并在关闭前弹出确认对话框。 - **监控线程**:每4小时检查一次指定程序的进程,并在找到时关闭它们。监控过程中显示倒计时和状态信息。 - **GUI界面**:提供用户界面,允许用户选择要关闭的程序和设置监控时间间隔,并提供启动和停止监控的按钮。 ## 依赖库 - `time` - `subprocess` - `tkinter` - `threading` ## 使用方法 1. **安装依赖**: ```bash pip install tkinter ``` 2. **运行程序**: ```bash python main.py ``` 3. **选择程序**: - 点击“选择程序”按钮,从文件对话框中选择要关闭的程序(.exe 文件)。 4. **设置时间间隔**: - 使用滑块设置监控的时间间隔,包括天数、小时、分钟和秒。 5. **启动监控**: - 点击“开始监控”按钮,程序将开始监控并定时关闭指定的程序。 6. **停止监控**: - 点击“停止监控”按钮,程序将停止监控。 ## 代码结构 - `main.py` - 主要函数: - `get_processes(program_name)`: 获取所有匹配的进程。 - `close_program(process_ids)`: 关闭指定的程序。 - `monitor(program_path, total_seconds)`: 监控线程,每4小时检查一次并关闭指定程序。 - `on_start()`: 启动监控的回调函数。 - `on_stop()`: 停止监控的回调函数。 - `select_program()`: 选择程序路径的回调函数。 ## 许可证 此项目采用 MIT 许可证,详情请参阅 [LICENSE](LICENSE) 文件。 ## 贡献 欢迎任何形式的贡献!请提交问题或拉取请求。