这个仓库包含网络工具项目的源代码。
这是一个在 Windows 系统后台运行的系统托盘程序小工具,包含以下功能:
- 提供获取活跃网络接口信息的后端服务。
- 查找可用的端口。
- 启动一个 Web 服务器来展示网络接口信息。
- 通过系统托盘图标与用户交互。
-
构建项目:
cargo build --release
-
运行应用程序:
cargo run --release
运行后,一个系统托盘图标将会出现,表示程序已在后台运行。
-
程序会持续在后台运行,并提供获取活跃网络接口信息的服务。
-
Web 服务器将在本地启动,可以通过浏览器访问查看网络接口信息。
-
右键托盘图标可以退出当前程序。
程序的主入口,负责初始化日志系统、确保单例运行、创建托盘图标和菜单、启动 Web 服务器,以及运行事件循环来处理用户交互。
包含通用功能,例如日志配置和端口查找。
包含客户端逻辑。
包含服务器端逻辑,负责启动 Web 服务器和处理网络接口信息。
包含单元测试。
包含程序的图标文件。
存储程序的运行日志,文件名包含当前日期。
该应用程序使用了以下 crate:
actix-cors: 用于处理 CORS。actix-rt: 用于 Actix Web 的运行时环境。actix-web: 用于创建 Web 服务器。chrono: 用于处理日期和时间。if-addrs: 用于获取网络接口信息。log: 用于日志记录。mac_address: 用于获取 MAC 地址。open: 用于在浏览器中打开 URL。serde: 用于序列化和反序列化数据。serde_json: 用于处理 JSON 数据。simplelog: 用于配置日志系统。single-instance: 用于确保程序单例运行。thiserror: 用于自定义错误类型。tokio: 用于异步运行时。tray-icon: 用于创建系统托盘图标和菜单。winit: 用于创建事件循环。windows: 提供 Windows API 绑定。