Telegram 官方版默认只有英文界面,对于习惯中文的用户来说,每次安装后都需要手动下载汉化包、复制文件、修改配置,操作繁琐且容易出错。尤其是在多台电脑或需要频繁重装系统时,这种重复劳动更是浪费时间。本文将介绍一种基于 PowerShell 脚本的自动部署方法,只需双击运行一次脚本,即可自动完成 Telegram 汉化包的全部安装流程,实现真正的一键汉化。
准备工作:下载官方 Telegram 与汉化包
在编写脚本之前,请确保你拥有以下两个核心文件:
- Telegram Desktop 官方安装包:请从 Telegram 官网(telegram.org)下载 Windows 版安装包,并完成基础安装。注意不要使用来路不明的修改版,以保证安全。
- 汉化语言包文件:通常是 .tdesktop 格式的文件,例如
zh-hans-custom.tdesktop。你可以从 Telegram 官方汉化频道或可信的翻译项目获取。将语言包文件放在一个固定目录,例如D:\TelegramLang\。
为了后续脚本能稳定工作,建议将语言包文件名保持为简单的英文,如 zh.tdesktop,并确保 Telegram 的安装路径不包含空格(默认是 %AppData%\Telegram Desktop,但建议自定义到 C:\Telegram\ 等路径)。
PowerShell 脚本核心逻辑
自动部署脚本的核心思路是:
- 定义 Telegram 安装路径和语言包文件路径。
- 检测 Telegram 是否正在运行,若运行则先关闭,避免文件占用。
- 将语言包文件复制到 Telegram 的
Languages子目录(通常为安装目录\Languages)。 - 修改 Telegram 的配置文件
tdata\config或使用内置命令参数使语言包生效。 - 自动重启 Telegram,完成汉化。
在实际操作中,最可靠的方式是使用 Telegram 的 -lang=<路径> 命令行参数,但为了持久生效,我们更推荐修改配置文件。下面给出的脚本兼容这两种方式,并优先使用修改配置的方法。
完整 PowerShell 脚本示例
以下是一次性完成全部步骤的 PowerShell 脚本,你可以复制后保存为 deploy-telegram-lang.ps1。请根据实际路径修改变量。
# Telegram 汉化包自动部署脚本
# 适用:Windows 10/11
# === 配置区 ===
$TelegramPath = "C:\Telegram\Telegram.exe" # Telegram 可执行文件路径
$LangSource = "D:\TelegramLang\zh.tdesktop" # 汉化包文件路径
$LangDestDir = Split-Path $TelegramPath -Parent # 得到 Telegram 安装目录
$ConfigFile = Join-Path (Split-Path $TelegramPath -Parent) "tdata\config"
# === 检查文件是否存在 ===
if (!(Test-Path $TelegramPath)) {
Write-Host "错误:找不到 Telegram.exe,请检查路径" -ForegroundColor Red
exit 1
}
if (!(Test-Path $LangSource)) {
Write-Host "错误:找不到汉化包文件,请检查源路径" -ForegroundColor Red
exit 1
}
# === 关闭正在运行的 Telegram ===
$proc = Get-Process -Name "Telegram" -ErrorAction SilentlyContinue
if ($proc) {
Write-Host "检测到 Telegram 正在运行,正在关闭..." -ForegroundColor Yellow
$proc | Stop-Process -Force
Start-Sleep -Seconds 2
}
# === 复制语言包 ===
$LangDest = Join-Path $LangDestDir "Languages\zh.tdesktop"
New-Item -ItemType Directory -Path (Join-Path $LangDestDir "Languages") -Force | Out-Null
Copy-Item -Path $LangSource -Destination $LangDest -Force
Write-Host "语言包已复制到:$LangDest" -ForegroundColor Green
# === 修改配置文件 ===
# 如果 config 不存在,使用 -lang 参数方式;否则尝试写入 language 键值
if (Test-Path $ConfigFile) {
# 备份原文件
Copy-Item $ConfigFile "$ConfigFile.bak" -Force
try {
$config = Get-Content $ConfigFile -Raw -Encoding UTF8
# 替换或新增 language 字段(此处根据 Telegram 的配置格式进行简单处理)
if ($config -match '"language":"[^"]*"') {
$config = $config -replace '"language":"[^"]*"', '"language":"zh"'
} else {
$config = $config.TrimEnd('}') + ', "language":"zh"}'
}
Set-Content -Path $ConfigFile -Value $config -Encoding UTF8 -NoNewline
Write-Host "配置文件已更新" -ForegroundColor Green
} catch {
Write-Host "修改配置失败,将使用命令行参数方式" -ForegroundColor Yellow
$args = "-lang=$LangDest"
}
} else {
$args = "-lang=$LangDest"
}
# === 启动 Telegram ===
if ($args) {
Start-Process -FilePath $TelegramPath -ArgumentList $args
} else {
Start-Process -FilePath $TelegramPath
}
Write-Host "Telegram 已启动,汉化部署完成!" -ForegroundColor Green
使用方法:三步完成汉化部署
使用该脚本非常简单,只需按照以下步骤操作:
- 保存脚本:将上面的代码复制到记事本,另存为
deploy-telegram-lang.ps1,注意编码选择 UTF-8。同时将汉化包放到步骤中指定的路径。 - 运行脚本:右键点击“开始”按钮,选择“Windows PowerShell (管理员)”,在打开的窗口中执行以下命令:
Set-ExecutionPolicy Bypass -Scope Process -Force\.\deploy-telegram-lang.ps1 - 验证汉化:脚本执行完毕后,Telegram 会自动打开。如果一切正常,你将看到全中文的界面。如果仍显示英文,请检查第 6 节中的故障排查。
自动化进阶:计划任务与批量部署
上述脚本还可以结合 Windows 任务计划程序,实现登录系统时自动部署,尤其适合最新版 Telegram 频繁更新的场景。
- 登录时自动汉化:打开“任务计划程序”,创建基本任务,触发器选择“当前用户登录时”,操作选择“启动程序”,程序填
powershell.exe,参数填-ExecutionPolicy Bypass -File "D:\Scripts\deploy-telegram-lang.ps1"。这样每次登录系统都会自动执行,即使 Telegram 更新重置了语言设置,也能自动修正。 - 企业批量部署:如果你需要在公司多台电脑上统一汉化,可以通过 Group Policy 或 PowerShell 远程会话(Invoke-Command)将脚本分发到各客户端执行。建议将脚本和语言包放在共享网络位置,并设置好适当的读取权限。
常见问题与故障排查
问题 1:脚本执行被阻止,提示“无法加载脚本,因为在此系统上禁止运行脚本”?
这是 PowerShell 默认执行策略的限制。解决方法是:在运行当前脚本前先执行 Set-ExecutionPolicy Bypass -Scope Process,或使用 powershell -ExecutionPolicy Bypass -File script.ps1。如果你经常运行,也可以永久修改策略为 RemoteSigned,但要注意安全风险。
问题 2:脚本执行成功,但 Telegram 仍显示英文。
首先确认语言包文件复制是否成功,检查 Languages 目录下是否有对应文件。其次,Telegram 某些版本禁止通过修改配置文件切换语言,你需要改用命令行参数方式,即直接在 Telegram 快捷方式的目标末尾添加 -lang="D:\TelegramLang\zh.tdesktop"。另外,请确保语言包版本与 Telegram 当前版本兼容,过旧的语言包可能只会部分生效。
问题 3:Telegram 更新后汉化失效。
官方版本更新时会覆盖语言包或重置配置。此时只需重新运行一次部署脚本即可。如果设置每周运行一次任务计划,就能在绝大多数更新后自动修复,无需人工介入。
总结
通过 PowerShell 脚本自动部署 Telegram 汉化包,可以将繁琐的手动操作浓缩为一条命令,极大地提升了效率。本文提供的脚本覆盖了关闭进程、复制文件、修改配置、重启应用的全部环节,并提供了自动化扩展方案。无论你是个人用户还是系统管理员,都值得尝试这一方法。如果你在部署过程中遇到任何问题,欢迎在评论区留言交流。