ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

SystemInformer 切中文界面:官方没开关,3 条真实路径照着做

SystemInformer 切中文界面:官方没开关,3 条真实路径照着做 SystemInformer 切中文界面:官方没开关,3 条真实路径照着做【免费下载链接】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装好 SystemInformer 想找个界面语言下拉框?官方版本里根本没有这个选项,当前仓库也只有一套美式英语资源,没有任何语言包文件。但这不代表只能干瞪着英文界面——下面 3 条路都是能落地的,难度从花 5 分钟确认到自己编译一个中文版不等,你对号入座就行。先说清效果:搞定后是什么样子把预期摆正,免得白忙活:官方安装包:永远是英文。菜单、进程属性页、对话框全部如此,没有任何运行时开关可以改。自己编译的中文版:能做到界面文字变中文,但改动范围取决于你走到哪条路径。只改资源文件(.rc):进程属性对话框的标题和按钮会变,比如 SystemInformer/SystemInformer.rc 里CAPTION General这种对话框标题、Permissions、Terminate按钮文字,能改成常规权限结束。连 C 源码一起改:列标题、右键菜单这些写死在代码里的字符串(例如LProcess、LName这类)也会变中文,界面基本全中文化。一句话:中文界面 自己编译出来的版本,不存在下载个语言包这条路。路径总览:该走哪条看这张表路径难度耗时适合谁结果① 界面自查,确认现状★5 分钟所有人不折腾,知道该在哪找、为什么找不到② 改.rc资源重新编译★★★半天会用 Visual Studio 编译过 C 项目的人对话框/菜单类文字变中文,部分界面③ 改 C 源码字符串全量翻译★★★★★数天想要完整中文界面、愿意逐行翻的人基本全中文界面④ 把翻译成果提交给社区★顺手做了②③还想帮别人的贡献入口见文末路径一:5 分钟自查,别再满世界找语言选项很多人卡在这里:看别的文章说打开设置就能切语言,结果找不到,怀疑自己装错了。其实不是你装错,是这个功能在源码里就不存在。自查步骤:以管理员身份运行SystemInformer.exe,等进程列表加载出来。看顶部菜单栏,打开Options菜单,进入Settings设置对话框。把设置里的各个选项卡翻一遍。你会确认:没有 Language 下拉框,也没有任何界面语言项。顺便解释下这个程序对语言的真实处理逻辑,代码在 phlib/util.c:PhGetUserDefaultUILanguage会依次问系统NtQueryDefaultUILanguage和NtQueryInstallUILanguage,拿不到才回落到美式英语——它只负责读取你的系统语言,用来做数字、日期格式,并不会拿它去换界面文字。结论:官方版本里找语言开关 白找。要中文化,往下走路径②或③。路径二:改.rc资源,编译一个半中文版本这是动手党的最小路径:只改资源脚本,翻译量可控,适合先把流程跑通。准备工作:需要 Windows 环境 Visual Studio 2022(含 C 工作负载)或 CMake 3.30。先在仓库里把源码拉下来:git clone https://gitcode.com/GitHub_Trending/sy/systeminformer第 1 步:翻译资源文件里的字符串打开 SystemInformer/SystemInformer.rc,把对话框、菜单里要翻的英文直接替换成中文,比如:- CAPTION General CAPTION 常规 - PUSHBUTTON Terminate, IDC_TERMINATE, 197, 218, 50, 14 PUSHBUTTON 结束, IDC_TERMINATE, 197, 218, 50, 14文件开头的这一行:- LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED改它不是必须的——这行只声明资源属于哪种语言,不翻译文字它不会自动变中文;改了它但只翻译一半,反而可能让资源匹配变乱。新手建议先不动这行,只换文字。第 2 步:编译两种方式二选一,都在仓库根目录执行:cmake -B build -G Visual Studio 17 2022 cmake --build build --config Release用 CMake 的话产物落在bin-cmake目录(见 CMakeLists.txt 的SI_OUTPUT_DIR)。注意:CMake 里内核项目(SI_WITH_KERNEL)会直接报Kernel mode projects are not supported,所以想要驱动完整功能,用 Visual Studio 打开根目录的SystemInformer.sln整个解决方案编译更稳。第 3 步:验证与回退运行编译出的 exe,打开进程属性,看 General 页是不是已经变中文。改乱了想恢复:git checkout -- .一条命令回到原始状态;或者干脆重新下载源码,你的原始克隆不动也行。风险提醒:插件(plugins/ 下各目录)各自带一份.rc,比如 plugins/HardwareDevices/HardwareDevices.rc,不同步改的话会出现主程序中文、插件界面英文的混搭;另外自编译版的完整能力依赖内核驱动,驱动加载不上的话部分监控功能不可用,别当成程序坏了。路径三:改 C 源码,做全量翻译(硬核).rc只覆盖了对话框和菜单的一部分。列标题、右键菜单项这类文字是直接写在 C 代码里的字符串字面量,比如 SystemInformer/findobj.c 里PhAddTreeNewColumn(..., LProcess, ...)、SystemInformer/hndlmenu.c 里的LGo to process...。想全中文化就得:按模块搜索源码里的L...字符串,建一张英文 → 中文对照表,逐处替换(保持字符串长度不至于撑爆控件,长句适当精简)。按路径二的方法编译。逐页过一遍主界面、进程属性各选项卡、各插件,查漏。工作量随你翻的模块线性增长,建议先只翻最常用的进程/内存/句柄几个页面,别一上来全库硬翻。翻译对照表建议存成独立文件,方便后续提交社区。常见问题与避坑Q1:把LANGUAGE改成LANG_CHINESE后编译成功,为什么界面还是英文?那行只是给资源块打语言标签,不会翻译任何文字。文字不变,界面就不变。别在这一行上反复纠结。Q2:网上文章说Settings 里选 Chinese (Simplified) 重启生效,为什么我找不到?那是对本项目的错误描述。当前源码里设置模块(见 SystemInformer/settings.c)没有任何语言相关配置项,CMake 构建参数里也没有所谓的多语言开关(实际选项就是SI_WITH_CORE、SI_WITH_PLUGINS这几个,见 CMakeLists.txt)。以仓库源码为准。Q3:Linux 或 Mac 上能编译这个中文版吗?不行。GUI 依赖 MSVC 工具链和 Windows 头文件,构建链(cmake/toolchain/下也全是 msvc/clang-msvc 工具链)只面向 Windows。借一台 Windows 机器或云开发环境来干。Q4:改坏了想彻底回到原样,怎么办?两个办法:在克隆目录执行git checkout -- .还原所有改动;或者删掉改动、直接重新下载官方 Release 包覆盖使用。官方包本来就是英文,不存在恢复成中文的问题。Q5:编译提示缺少内核相关文件/驱动签名失败?内核项目(KSystemInformer)需要 WDK,且驱动必须签名才能加载。只想看 UI 中文化效果的话,只编用户态主程序即可,别被驱动部分卡住。延伸:顺手帮社区一把翻译对照表整理好之后,可以按仓库贡献指南 CONTRIBUTING.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),仅供参考
返回列表