拓冰建站拓冰建站
首页 / 资讯中心 / 正文

SystemInformer 汉化实操指南:把系统监控工具界面改成中文的完整流程

SystemInformer 汉化实操指南把系统监控工具界面改成中文的完整流程【免费下载链接】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/systeminformerSystemInformer 是一款免费开源的系统监控工具但默认界面全是英文。本文带你逐项完成中文配置替换语言标识、翻译资源字符串、修正源码里的硬编码文本最后编译验证。跟着做一遍大约一小时后就能得到一个中文的监控界面。前置条件目标读者在 Windows 上用过 SystemInformer、会基本命令行操作的开发者装有 Visual Studio 2022含 C 工作负载或 CMake ≥ 3.30 加 MSVC 工具链克隆仓库并进入根目录git clone https://gitcode.com/GitHub_Trending/sy/systeminformer预计耗时约 60 分钟含编译模块速览SystemInformer/主程序对话框和菜单文本大多写在SystemInformer.rc里少数页面名直接硬编码在 C 源码中plugins/插件集每个插件有独立的.rc资源文件和自己的语言声明cmake/toolchain/构建工具链提供 MSVC 编译器源码里的中文字符要靠它编译生效分步实操替换主程序的语言标识行这一步先让编译器知道资源按简体中文处理后面的字体与编码选择才会走中文路径。打开SystemInformer/SystemInformer.rc改动在第 20 行附近。注意LANGUAGE上方的#if宏条件要一起换版本资源SystemInformer/version.rc同样处理#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ZHCS) // 原为 AFX_TARG_ENU LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED // 原为 LANG_ENGLISH, SUBLANG_ENGLISH_US确认方式重新构建后用资源查看器查看可执行文件的资源段语言应显示为简体中文zh-CN。语言标识就位后开始真正的翻译工作对话框文字就写在资源文件里。把资源文件的对话框文字换成中文这一步解决所有对话框的窗口标题和按钮文本。打开SystemInformer/SystemInformer.rc以第 358 行附近的僵尸进程对话框为例。改 CAPTION 和按钮文字后面的控件 ID 和坐标保持不变CAPTION Zombie Processes PUSHBUTTON Terminate,IDC_TERMINATE,115,200,50,14 PUSHBUTTON Save...,IDC_SAVE,170,200,50,14改成CAPTION 僵尸进程 PUSHBUTTON 结束,IDC_TERMINATE,115,200,50,14 PUSHBUTTON 保存...,IDC_SAVE,170,200,50,14想保留键盘快捷键时给快捷字符前加如Scan。确认方式运行 exe 打开该对话框标题和按钮已是中文。还有部分文字根本不在资源文件里而是直接写在 C 代码中。翻译源码里硬编码的页面名这一步解决主窗口左侧导航的页面名称。在SystemInformer/mainwnd.c中搜索PhMwpCreateInternalPage第 656 行附近有三处PhMwpCreateInternalPage(LProcesses, 0, PhMwpProcessesPageCallback); PhMwpCreateInternalPage(LServices, 0, PhMwpServicesPageCallback); PhMwpCreateInternalPage(LNetwork, 0, PhMwpNetworkPageCallback);只改第一个参数LProcesses改L进程LServices改L服务LNetwork改L网络。L前缀必须保留否则会被按窄字符串处理导致乱码。确认方式左侧导航的三个页面名显示为中文。只改主程序的话插件对话框还是英文的。统一所有插件的语言标识这一步解决自带插件的对话框语言。每个插件的.rc第 19 行附近和version.rc都有独立声明例如plugins/ExtendedTools/ExtendedTools.rc、plugins/DotNetTools/DotNetTools.rc、plugins/HardwareDevices/HardwareDevices.rc内容都是同一行LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US全部替换为LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED。确认方式打开任一插件对话框其资源语言与主程序一致。文字改完重新构建后才会真正生效。编译验证中文版这一步产出最终可执行程序。在仓库根目录执行下面两条命令工具链指向cmake/toolchain/里的 MSVC 配置cmake -B build -DCMAKE_TOOLCHAIN_FILEcmake/toolchain/msvc-amd64.cmake cmake --build build --config Release也可以直接用 Visual Studio 打开SystemInformer.sln选 Release 构建。内核驱动KSystemInformer默认不参与构建不影响用户态界面。确认方式运行新的 exe逐页走一遍主界面剩余英文处就是漏翻的字符串。排查与纠错如果你看到中文变成方框或乱码 → 多半是文件编码与编译器编码不一致MSVC 默认按系统代码页读源码 → 把改过的.rc和.c存为带 BOM 的 UTF-8或给构建加/utf-8参数再重新编译。如果你重新构建后界面还是全英文 → 多半是运行的旧二进制或构建没包含插件SI_WITH_PLUGINS默认关闭→ 先确认可执行文件的时间戳需要插件时配置阶段加-DSI_WITH_PLUGINSON。如果你主程序是中文、某个插件对话框仍是英文 → 多半是漏改了该插件的 LANGUAGE 行每个插件都是独立声明 → 全局搜索LANG_ENGLISH把剩余文件逐个改完。维护与贡献上游发新版时先对照新增的对话框和字符串再重跑一遍「语言标识 字符串」的批量替换跟版成本低向社区提交fork 仓库 → 拉分支 → 翻译并验证 → 提交 PR描述里附上界面前后对比建议维护一份统一术语表例如 Handles 统一译「句柄」、Processes 统一译「进程」主程序与插件用词一致写在最后做完这几步你的 SystemInformer 不再是满屏英文而是可以逐字读懂的系统监控工具。接下来构建完把主窗口每个页面过一遍把漏翻的字符串记成清单下次再坐下来改就快很多了。【免费下载链接】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),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门