Serendipity a8f1bfeaab build: 迁移构建系统至CMake,重写README文档
将GNU Makefile构建系统迁移到CMake 3.15+,新增CLAUDE.md项目指南,
重写README.md补充项目结构、工作原理和详细构建说明。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-14 22:27:20 +08:00
2026-03-16 18:48:19 +08:00

Path Editor — Windows 系统环境变量编辑器

一个轻量级的 Windows 系统环境变量(PATH)编辑器,使用 C 语言和 IUP 图形库开发。

项目结构

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 项目指南

功能特点

  • 可视化编辑 — 以列表形式直观查看和管理系统 PATH 变量
  • 增删改查 — 新建、编辑、删除条目,支持从文件管理器直接选择目录
  • 拖拽排序 — 上移/下移按钮调整路径优先级
  • 权限检测 — 非管理员模式自动切换为只读,防止误操作
  • 自定义输入框 — 支持超长路径的编辑(80 字符可见宽度)
  • 斑马纹列表 — 交替行背景色,方便阅读
  • 双击编辑 — 双击列表项直接编辑对应路径
  • 即时广播 — 保存后通过 WM_SETTINGCHANGE 通知系统

工作原理

程序直接读写 Windows 注册表键:

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path

PATH 值使用 REG_EXPAND_SZ 类型,支持 %SystemRoot% 等环境变量展开。

编码转换IUP 控件使用 UTF-8Windows 注册表 API 使用 UTF-16utils.c 提供 wide_to_utf8()utf8_to_wide() 完成双向转换。

下载与安装

Releases 页面下载 PathEditorSetup.exe 安装包。

注意: 安装后必须以管理员身份运行,否则只能查看,无法保存更改。

从源码构建

环境要求

工具 说明
Windows 操作系统 需 Windows API 支持
MinGW-w64 (GCC) 编译器,路径 D:\settings\Language\C\mingw64
CMake 3.15+ 构建工具
IUP 3.31 GUI 库(已包含在 libs/ 中)

编译

git clone https://github.com/LHY0125/PathEditor.git
cd PathEditor

# 配置(MinGW Makefiles 生成器)
cmake -B build -G "MinGW Makefiles"

# 编译
cmake --build build

编译产出在 bin/PathEditor.exe

其他 CMake 选项:

# Debug 模式(带调试符号)
cmake -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug
cmake --build build

# Release 优化
cmake -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
cmake --build build

打包安装程序

使用 Inno Setup 6 生成 .exe 安装包:

  1. 确保已安装 Inno Setup 6
  2. 先编译项目生成 bin/PathEditor.exe 及所需 DLL
  3. 用 Inno Setup 编译 dist/installer.iss
  4. 安装包输出至 dist/dist/PathEditorSetup.exe

使用说明

  1. 启动 — 右键程序图标,选择「以管理员身份运行」
  2. 查看 — 程序启动后自动加载当前系统 PATH 到列表
  3. 新建 — 点击「新建」按钮,输入路径后确认,新条目追加到列表末尾
  4. 编辑 — 选中条目后点击「编辑」,或直接双击条目
  5. 浏览 — 点击「浏览」打开文件夹选择器,选中目录后自动添加
  6. 删除 — 选中条目后点击「删除」
  7. 排序 — 选中条目后点击「上移」或「下移」调整顺序
  8. 保存 — 操作完成后点击「确定」写入注册表并广播变更
  9. 生效 — CMD / PowerShell 窗口需要重新打开才能识别新变量;部分程序可能需要重启

命令行备选方案: 项目附带 ManagePath.bat 脚本,提供导出、导入和备份 PATH 的功能,无需 GUI 也可操作。

许可证

本项目基于 MIT License 开源。

Copyright (c) 2026 LHY

S
Description
Path Editor 是一个专为 Windows 用户设计的系统环境变量(PATH)管理工具。它基于原生 C 语言和 IUP 图形库开发,旨在替代 Windows 自带的简陋编辑界面。 相比系统自带的编辑器,Path Editor 提供了更加直观的双视图(系统/用户变量)界面、智能的路径有效性检测、自动备份机制以及便捷的拖拽操作,让环境变量的管理变得安全、高效且轻松。无论您是开发者还是系统管理员,它都是您配置开发环境的得力助手。
https://github.com/LHY0125/PathEditor Readme MIT 15 MiB
Languages
C 70.8%
C++ 26.7%
Batchfile 1.1%
CMake 0.8%
Lua 0.6%