Expand description
§windows_tool
面向 Windows 的实用库:提权检测、注册表与命令行辅助、基于 netsh 的 IPv4 端口代理、Steam VDF/启动项/语言,以及部分游戏(PUBG、Apex、EA Desktop)的封装。
平台:除 crate::utils 外,各功能模块在 target_os = "windows" 下才可用;文档在 docs.rs 上针对 Windows 目标构建。若在非 Windows 上依赖本库,请关闭不需要的特性并注意编译条件。
§特性(Cargo features)
| 特性 | 说明 |
|---|---|
elevated | 检测是否管理员提升、请求以管理员重启当前可执行文件 |
registry | 注册表相关(含 Steam 安装路径等) |
port_forwarding | netsh interface portproxy 封装(依赖 serde) |
vdf | Steam KeyValues(VDF)解析与读写(依赖 indexmap、winreg) |
steam | 在 vdf 之上读写 localconfig、库文件夹、启动项等 |
game | 启用 steam 并包含 game::pubg、game::apex、game::ea 等 |
默认特性:elevated、registry、port_forwarding、game。
关闭默认特性时,请自行启用所需模块;elevated 与 registry 会拉取 encoding_rs,以便命令行输出按 GBK 解码。registry 与 port_forwarding 还会拉取 winapi(utils::path 等需要)。
§模块概览
utils:IPv4 校验、时间格式、在管理员上下文中执行命令、控制台输出等(依赖 Windows 进程扩展)。elevated(feature = "elevated"):elevated::is_elevated、elevated::request_restart_with_privileges_elevate。port_forwarding(feature = "port_forwarding"):port_forwarding::PortForwarding。registry(feature = "registry"):注册表备份、Steam 路径、Windows 更新暂停天数等。vdf(feature = "vdf"):vdf::VdfValue、vdf::parse_vdf_string。steam(feature = "steam"):启动项、语言、库路径、用户枚举等;Steam 用户 ID 与游戏 App ID 均为usize。game(feature = "game"):具体游戏封装。
更完整的依赖写法与示例见本仓库根目录的 README.md(与 docs.rs 文档)。
Modules§
- elevated
- 检测/请求管理员权限(仅 Windows)。
- game
- 游戏相关封装(PUBG、Apex、EA Desktop 等)。
各游戏在 Steam / EA Desktop 上的便捷 API(需
feature = "game")。 - port_
forwarding - 基于
netsh的 IPv4 端口转发(仅 Windows)。 Windowsnetsh interface portproxy的封装(当前仅 IPv4→IPv4)。 - registry
- 注册表读写与备份等(仅 Windows)。 Windows 注册表相关工具:资源管理器项备份、已知文件夹、Steam 安装路径与活动用户等。
- steam
- Steam 安装目录、
localconfig.vdf、启动项与库路径等。 Steam 客户端数据访问:注册表状态、localconfig.vdf、libraryfolders.vdf、启动项与游戏语言等。 - utils
- 通用工具:IPv4 校验、管理员上下文执行命令、控制台 GBK 输出、路径与时间格式等。
- vdf
- Steam KeyValues(VDF)解析与修改。 Valve KeyValues(VDF)文本格式的解析、遍历与写回文件。