如何快速打包 ProcessHacker 免安装便携版:完整指南
【免费下载链接】systeminformerA free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware. Brought to you by Winsider Seminars & Solutions, Inc. @ https://windows-internals.com项目地址: https://gitcode.com/GitHub_Trending/sy/systeminformer
借别人的电脑排障时,最烦的就是先装工具、干完活再卸载。如果 U 盘里有一个文件夹,拷上就能双击运行,查进程、看网络、盯资源占用,走时直接拔走——这就是 ProcessHacker 免安装便携版的全部意义:一个随身携带、即拷即用的绿色文件夹。
便携版和安装版,先说清区别
动手前有个预期要对齐,省得做完发现"不是这么回事"。
能带走的:
- 主程序
SystemInformer.exe本身,单文件即可启动 plugins/下的插件目录,拷走即生效- 运行时的设置文件——官方支持让配置存在程序同目录,跟着文件夹一起迁移
带不走的:
- 内核驱动(
KSystemInformer/)相关的深度功能。驱动需要签名和安装,不属于绿色范畴;纯用户态功能不受影响 - 系统级权限。便携版免的是"安装",不免"权限"——在目标机器上跑,依然受该机器的账户权限约束
一句话:便携版带走的是程序和配置,带不走的是系统本身的能力边界。
路线图:三步走全局概览
整个过程可以拆成三段,心里先有地图 🗺️
- 拿源码:把仓库克隆到本地,一次性初始化第三方库
- 出产物:编译 Release 版本,把 exe 落到一个独立输出目录
- 补依赖、组文件夹:补齐插件和资源,按固定结构装进一个文件夹,再拷进 U 盘
下面按"动作单元"逐个展开,每一步都能独立验证,卡住也能定位。
第一步:把可编译的源码搞到手
克隆仓库
在终端里执行(这是唯一必须贴出的命令):
git clone https://gitcode.com/GitHub_Trending/sy/systeminformer准备编译环境
这台机器上需要 Visual Studio2022 或更高版本,装的时候勾上 C++ 桌面开发和 Windows SDK 即可,免费的社区版就能用。
初始化第三方依赖
克隆完成后,进build/目录,运行一次build_init.cmd。它会拉取并构建项目依赖的工具与第三方库。这个脚本只需跑一次——除非后续更新涉及这些库,否则不用重复。编译路上遇到任何报错,build/README.md 里有一份按症状分类的排错清单,值得留着备查。
第二步:把产物输出到独立目录
有两条路,挑顺手的:
- 脚本路线(推荐新手):还是
build/目录,直接运行build_release.cmd。它替你调好平台、配置和输出位置,跑完就能拿到 Release 版本 - IDE 路线:用 Visual Studio 打开根目录的
SystemInformer.sln,选 Release 配置后生成解决方案;插件则再打开Plugins.sln
跑完你会得到一个独立目录,里面躺着主程序SystemInformer.exe。这个目录就是将来便携版的核心——先把它原样留在手里,别急着拷走。
习惯 CMake 的话,根目录的 CMakeLists.txt 也支持完整构建,输出目录可通过
SI_OUTPUT_DIR变量指到你想要的任意位置,默认是bin-cmake。
第三步:补齐运行依赖、插件与资源
这是最容易被忽略的一步,也是"拷到 U 盘就少东西"的根源。逐项过一遍:
1. 主程序:上一步产出的SystemInformer.exe,一个就够了。
2. 插件:源码的 plugins/ 下有 11 个插件工程(扩展服务、硬件设备、网络工具、窗口管理器……)。用 IDE 的话,把Plugins.sln也生成一遍即可;用 CMake 的话,配置时打开SI_WITH_PLUGINS选项,插件会被输出到和主程序同层的plugins子目录。主程序和插件用同一次构建链产出,能避免版本错位。
3. 资源文件:大部分图标、搜索图样等资源在编译时已经嵌入 exe(见 SystemInformer/CMakeLists.txt 里的 RESOURCES 列表),正常情况下不用单独拷。如果发现个别功能缺文件显示,再从源码SystemInformer/resources里对照补齐。
4. 运行时库:大多数现代 Windows 机器开箱即用。目标机器如果很老、启动时报缺少 DLL,装一份 Visual C++ 可再发行组件包,或者干脆把它也塞进文件夹一起带走。
第四步:组装文件夹,让配置跟着走
按这个结构摆好,就是一个能直接跑的便携版:
PH-Portable/ ├── SystemInformer.exe 主程序 ├── SystemInformer.exe.settings.xml 设置文件(见下) └── plugins/ 各插件目录关键动作——让设置可迁移:官方在 README.md 里留了一个专门给 U 盘用户的技巧:在 exe 同目录创建一个空文件,命名为SystemInformer.exe.settings.xml。有了它,程序会把设置写进这个文件而不是注册表,你改过的选项、布局下次换台机器打开依然在。
顺手可以放个两行的启动.bat,内容就一句start SystemInformer.exe,双击就能进,省得别人再点一层文件夹。
最后,把整个文件夹拷进 U 盘。完事 ✅
验收清单:怎么算做成了
在另一台机器(最好就是 U 盘直接跑)上逐条勾:
- 双击 exe 能启动,主界面正常显示,无"缺少 DLL"弹窗
- 插件菜单里能看到
plugins/里装的功能项 - 改一项设置(比如换列布局)→ 关闭 → 重开,设置保留
- 运行期间程序在 U 盘目录里写的是
SystemInformer.exe.settings.xml,而不是只往注册表里塞东西 - 把文件夹改名、挪到别的路径,照样能跑
五条全勾,恭喜,便携版成立。
按症状排错:现象 → 原因 → 解法
| 现象 | 可能原因 | 解法 |
|---|---|---|
| 双击后闪退或提示缺 DLL | 目标机器缺 VC++ 运行时,或 exe 与运行环境架构不符 | 安装 Visual C++ 可再发行组件包;确认 64 位 exe 配 64 位系统 |
| 插件不加载 | 插件与主程序构建链/版本不一致 | 用同一套构建(同一个build_release.cmd或 CMake 配置)同时产出主程序和插件 |
| 插件在启用内核驱动时被拦 | 有意的安全设计:驱动拒绝未签名的插件 | 给插件签名,或在高级设置中关闭镜像加载限制(此时对驱动的访问也会受限,详见 KSystemInformer/README.md) |
| 换机器后设置丢失 | 没建便携设置文件,配置写进了原机器的用户目录 | 在 exe 同目录创建空的SystemInformer.exe.settings.xml,之后设置会落在文件里 |
编译报C1047 (thirdparty.lib) | 第三方库是用别的编译器构建的 | 运行build/build_thirdparty.cmd重新构建该库 |
写在最后
做到这里,你手里就有一个几 MB 起步、拷走即用的 ProcessHacker 绿色版——U 盘里的排障随军包。如果还想深入定制或继续踩坑,项目自带的 HACKING.md 和 build/README.md 是最好的两份后续读物。
【免费下载链接】systeminformerA free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware. Brought to you by Winsider Seminars & Solutions, Inc. @ https://windows-internals.com项目地址: https://gitcode.com/GitHub_Trending/sy/systeminformer
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考