mirror of
https://github.com/LHY0125/PathEditor.git
synced 2026-07-01 19:55:54 +08:00
build: 迁移构建系统至CMake,重写README文档
将GNU Makefile构建系统迁移到CMake 3.15+,新增CLAUDE.md项目指南, 重写README.md补充项目结构、工作原理和详细构建说明。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -1,82 +1,123 @@
|
||||
# Path Editor (系统环境变量编辑器)
|
||||
# Path Editor — Windows 系统环境变量编辑器
|
||||
|
||||
一个简单、轻量级的 Windows 系统环境变量(PATH)编辑器,基于 C 语言和 IUP 图形库开发。
|
||||
一个轻量级的 Windows 系统环境变量(PATH)编辑器,使用 C 语言和 [IUP](https://www.tecgraf.puc-rio.br/iup/) 图形库开发。
|
||||
|
||||
## ✨ 功能特点
|
||||
## 项目结构
|
||||
|
||||
* **可视化编辑**:直观地查看和管理系统 PATH 环境变量。
|
||||
* **安全操作**:必须以管理员身份运行才能保存更改,防止误操作。
|
||||
* **便捷管理**:
|
||||
* ➕ **新建**:添加新路径到列表。
|
||||
* 📂 **浏览**:直接从文件资源管理器选择目录添加。
|
||||
* ✏️ **编辑**:修改现有路径。
|
||||
* 🗑️ **删除**:移除不需要的路径。
|
||||
* ⬆️⬇️ **排序**:上移/下移调整路径优先级。
|
||||
* **轻量级**:原生 C 语言编写,运行速度快,占用资源少。
|
||||
```
|
||||
PathEditor/
|
||||
├── src/
|
||||
│ ├── main.c # 程序入口,构建 UI 布局
|
||||
│ ├── callbacks.c # 按钮回调 + 自定义输入对话框
|
||||
│ ├── registry.c # 注册表读写操作
|
||||
│ └── utils.c # 编码转换 + 权限检测 + 斑马纹样式
|
||||
├── include/
|
||||
│ ├── globals.h # 全局控件句柄与常量
|
||||
│ ├── callbacks.h
|
||||
│ ├── registry.h
|
||||
│ └── utils.h
|
||||
├── libs/ # IUP 3.31 库文件(预编译)
|
||||
├── ico/ # 应用图标与资源文件
|
||||
├── dist/
|
||||
│ └── installer.iss # Inno Setup 安装包脚本
|
||||
├── ManagePath.bat # 备用的命令行 PATH 管理脚本
|
||||
├── CMakeLists.txt # CMake 构建配置
|
||||
├── Makefile # GNU Make 构建配置(备用)
|
||||
└── CLAUDE.md # Claude Code 项目指南
|
||||
```
|
||||
|
||||
## 📦 下载与安装
|
||||
## 功能特点
|
||||
|
||||
您可以从 [Releases](https://github.com/LHY0125/PathEditor/releases) 页面下载最新的安装包 (`PathEditorSetup.exe`)。
|
||||
- **可视化编辑** — 以列表形式直观查看和管理系统 PATH 变量
|
||||
- **增删改查** — 新建、编辑、删除条目,支持从文件管理器直接选择目录
|
||||
- **拖拽排序** — 上移/下移按钮调整路径优先级
|
||||
- **权限检测** — 非管理员模式自动切换为只读,防止误操作
|
||||
- **自定义输入框** — 支持超长路径的编辑(80 字符可见宽度)
|
||||
- **斑马纹列表** — 交替行背景色,方便阅读
|
||||
- **双击编辑** — 双击列表项直接编辑对应路径
|
||||
- **即时广播** — 保存后通过 `WM_SETTINGCHANGE` 通知系统
|
||||
|
||||
安装完成后,请**以管理员身份运行**程序以确保能够保存对系统环境变量的修改。
|
||||
## 工作原理
|
||||
|
||||
## 🛠️ 构建指南
|
||||
程序直接读写 Windows 注册表键:
|
||||
|
||||
如果您想从源码构建本项目,请按照以下步骤操作:
|
||||
```
|
||||
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path
|
||||
```
|
||||
|
||||
PATH 值使用 `REG_EXPAND_SZ` 类型,支持 `%SystemRoot%` 等环境变量展开。
|
||||
|
||||
**编码转换**:IUP 控件使用 UTF-8,Windows 注册表 API 使用 UTF-16,`utils.c` 提供 `wide_to_utf8()` 和 `utf8_to_wide()` 完成双向转换。
|
||||
|
||||
## 下载与安装
|
||||
|
||||
从 [Releases](https://github.com/LHY0125/PathEditor/releases) 页面下载 `PathEditorSetup.exe` 安装包。
|
||||
|
||||
> **注意:** 安装后必须以管理员身份运行,否则只能查看,无法保存更改。
|
||||
|
||||
## 从源码构建
|
||||
|
||||
### 环境要求
|
||||
|
||||
* Windows 操作系统
|
||||
* GCC 编译器 (推荐 MinGW-w64)
|
||||
* Make 工具
|
||||
* IUP 库 (已包含在 `libs` 目录下)
|
||||
| 工具 | 说明 |
|
||||
|------|------|
|
||||
| Windows 操作系统 | 需 Windows API 支持 |
|
||||
| MinGW-w64 (GCC) | 编译器,路径 `D:\settings\Language\C\mingw64` |
|
||||
| CMake 3.15+ | 构建工具 |
|
||||
| IUP 3.31 | GUI 库(已包含在 `libs/` 中) |
|
||||
|
||||
### 编译步骤
|
||||
### 编译
|
||||
|
||||
1. 克隆仓库:
|
||||
```bash
|
||||
git clone https://github.com/LHY0125/PathEditor.git
|
||||
cd PathEditor
|
||||
|
||||
```bash
|
||||
git clone https://github.com/LHY0125/PathEditor.git
|
||||
cd PathEditor
|
||||
```
|
||||
# 配置(MinGW Makefiles 生成器)
|
||||
cmake -B build -G "MinGW Makefiles"
|
||||
|
||||
2. 编译项目:
|
||||
# 编译
|
||||
cmake --build build
|
||||
```
|
||||
|
||||
```bash
|
||||
mingw32-make
|
||||
```
|
||||
编译产出在 `bin/PathEditor.exe`。
|
||||
|
||||
3. 运行:
|
||||
编译成功后,可执行文件位于 `bin/PathEditor.exe`。
|
||||
**其他 CMake 选项:**
|
||||
|
||||
### 打包 (可选)
|
||||
```bash
|
||||
# Debug 模式(带调试符号)
|
||||
cmake -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug
|
||||
cmake --build build
|
||||
|
||||
本项目使用 Inno Setup 生成安装包。
|
||||
# Release 优化
|
||||
cmake -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
```
|
||||
|
||||
1. 确保已安装 [Inno Setup 6](https://jrsoftware.org/isdl.php)。
|
||||
2. 编译项目生成 exe 文件。
|
||||
3. 使用 Inno Setup 编译 `dist/installer.iss` 脚本。
|
||||
### 打包安装程序
|
||||
|
||||
## 📝 使用说明
|
||||
使用 [Inno Setup 6](https://jrsoftware.org/isdl.php) 生成 `.exe` 安装包:
|
||||
|
||||
1. **启动**:右键点击程序图标,选择“以管理员身份运行”。
|
||||
2. **查看**:程序启动后会自动加载当前的系统 PATH 变量。
|
||||
3. **修改**:使用右侧按钮栏进行添加、删除、移动等操作。
|
||||
4. **保存**:操作完成后,务必点击底部的【确定】按钮保存更改。
|
||||
5. **生效**:保存后,某些正在运行的程序可能需要重启才能识别新的环境变量。CMD 或 PowerShell 窗口需要重新打开。
|
||||
1. 确保已安装 Inno Setup 6
|
||||
2. 先编译项目生成 `bin/PathEditor.exe` 及所需 DLL
|
||||
3. 用 Inno Setup 编译 `dist/installer.iss`
|
||||
4. 安装包输出至 `dist/dist/PathEditorSetup.exe`
|
||||
|
||||
## 👤 作者信息
|
||||
## 使用说明
|
||||
|
||||
* **作者**:LHY
|
||||
* **邮箱**:<3364451258@qq.com>
|
||||
* **GitHub**:[https://github.com/LHY0125/PathEditor](https://github.com/LHY0125/PathEditor)
|
||||
1. **启动** — 右键程序图标,选择「以管理员身份运行」
|
||||
2. **查看** — 程序启动后自动加载当前系统 PATH 到列表
|
||||
3. **新建** — 点击「新建」按钮,输入路径后确认,新条目追加到列表末尾
|
||||
4. **编辑** — 选中条目后点击「编辑」,或直接双击条目
|
||||
5. **浏览** — 点击「浏览」打开文件夹选择器,选中目录后自动添加
|
||||
6. **删除** — 选中条目后点击「删除」
|
||||
7. **排序** — 选中条目后点击「上移」或「下移」调整顺序
|
||||
8. **保存** — 操作完成后点击「确定」写入注册表并广播变更
|
||||
9. **生效** — CMD / PowerShell 窗口需要重新打开才能识别新变量;部分程序可能需要重启
|
||||
|
||||
如果您觉得这个工具对您有帮助,请给我的 GitHub 仓库点个 Star ⭐️!
|
||||
**命令行备选方案:** 项目附带 `ManagePath.bat` 脚本,提供导出、导入和备份 PATH 的功能,无需 GUI 也可操作。
|
||||
|
||||
## 📄 许可证
|
||||
## 许可证
|
||||
|
||||
本项目基于 MIT 许可证开源,您可以在遵守许可证条款的前提下自由使用、修改和分发本项目的代码。
|
||||
本项目基于 [MIT License](LICENSE) 开源。
|
||||
|
||||
详细信息请参阅 [LICENSE](LICENSE) 文件。
|
||||
|
||||
Copyright © 2026 LHY. All Rights Reserved.
|
||||
Copyright (c) 2026 LHY
|
||||
|
||||
Reference in New Issue
Block a user