青青草 发表于 2022-2-17 12:39:10

【已解决】如何解决批处理中文变问号问题

本帖最后由 青青草 于 2022-2-17 14:51 编辑

今天有空,试着对mas 1.5进行汉化,开头很顺利,显示中文正常。
当汉化到
echo.             激活 - Windows
echo.             Activate - Office
echo.             Activate - All时,运行批处理,中文字 “激活”变成了问号。
这是什么原因造成的呢?请大神们赐教!谢谢!

感谢 hua_wuxin 大神!

不好意思,发错位置了,应该发到脚本讨论区才对。烦请版主移贴。谢谢!

窄口牛 发表于 2022-2-17 12:44:04

改成ansi就好了。

2010techon 发表于 2022-2-17 12:44:58

压缩包有密码?,请把批处理文件完整上传

青青草 发表于 2022-2-17 12:46:02

2010techon 发表于 2022-2-17 12:44
压缩包有密码?,请把批处理文件完整上传

密码:1234

青青草 发表于 2022-2-17 12:48:14

2010techon 发表于 2022-2-17 12:44
压缩包有密码?,请把批处理文件完整上传

已上传。
谢谢!

青青草 发表于 2022-2-17 12:48:49

窄口牛 发表于 2022-2-17 12:44
改成ansi就好了。

应该不是这原因。

2010techon 发表于 2022-2-17 13:15:02

一万多行的批处理,看着让人头大,中文问号一般是编码问题或者命令行模式的事

青青草 发表于 2022-2-17 13:23:33

2010techon 发表于 2022-2-17 13:15
一万多行的批处理,看着让人头大,中文问号一般是编码问题或者命令行模式的事

就"在线kms激活“部分的内容汉化出问题。你可直接关注"在线kms激活“部分。

nclnum1 发表于 2022-2-17 13:27:22

路过

laozhao 发表于 2022-2-17 13:31:25

mode con 语句去掉试试

青青草 发表于 2022-2-17 13:38:17

laozhao 发表于 2022-2-17 13:31
mode con 语句去掉试试

与 mode con 无关。

sunsea 发表于 2022-2-17 13:40:31

明确在显示信息之前加入chcp 936然后用记事本 ANSI保存?

青青草 发表于 2022-2-17 13:45:23

sunsea 发表于 2022-2-17 13:40
明确在显示信息之前加入chcp 936然后用记事本 ANSI保存?

试过,没有效果。

青青草 发表于 2022-2-17 13:46:13

青青草 发表于 2022-2-17 13:45
试过,没有效果。

ANSI保存的

hu.man 发表于 2022-2-17 14:07:47

本帖最后由 hu.man 于 2022-2-17 14:16 编辑

路過看看

hua_wuxin 发表于 2022-2-17 14:12:07

把616行由
%nul% %_psc% "$f=::ReadAllText('!_batp!') -split \":%~1\:.*`r`n\"; ::WriteAllText('%~2',$f.Trim(),::%~3);"

改为
%nul% %_psc% "$f=::ReadAllText('!_batp!',::Default) -split \":%~1\:.*`r`n\"; ::WriteAllText('%~2',$f.Trim(),::Default);"
621行可能也要改。

青青草 发表于 2022-2-17 14:16:24

hua_wuxin 发表于 2022-2-17 14:12
把616行由
%nul% %_psc% "$f=::ReadAllText('!_batp!') -split \":%~1\:.*`r`n\"; ::WriteAllText('%~2',$ ...

我试试

青青草 发表于 2022-2-17 14:48:15

hua_wuxin 发表于 2022-2-17 14:12
把616行由
%nul% %_psc% "$f=::ReadAllText('!_batp!') -split \":%~1\:.*`r`n\"; ::WriteAllText('%~2',$ ...

解决了!
谢谢!

2010techon 发表于 2022-2-17 14:56:33

本帖最后由 2010techon 于 2022-2-17 15:00 编辑

青青草 发表于 2022-2-17 13:23
就"在线kms激活“部分的内容汉化出问题。你可直接关注"在线kms激活“部分。-----发完才看到已解决,删了吧
:MainMenu 主界面:
:MainMenu

cls
color 07
titleMicrosoft Activation Scripts AIO 1.5
mode 76, 30
if exist "%mastemp%\.*" rmdir /s /q "%mastemp%\" %nul%

echo:
echo:
echo:
echo:
echo:       ______________________________________________________________
echo:
echo:               Activation Methods:
echo:
echo:             HWID      ^|Permanent^|Win 10-11
echo:             KMS38       ^|Till 2038^|Win 10-11-Server
echo:             Online KMS^|180 Days   ^|Win / Office      
echo:             __________________________________________________      
echo:                                                                     
echo:             Check Activation Status
echo:             Check Activation Status
echo:             Extras                                             
echo:             __________________________________________________      
echo:                                                                     
echo:             Read Me
echo:             Exit                              
echo:       ______________________________________________________________
echo:
call :_color2 %_White% "         " %_Green% "Enter a menu option in the Keyboard :"
choice /C:12345678 /N
set _erl=%errorlevel%

if %_erl%==8 exit /b
if %_erl%==7 start https://windowsaddict.ml & goto :MainMenu
if %_erl%==6 goto:Extras
if %_erl%==5 setlocal & call :_Check_Status_wmi_ext & cls & endlocal & goto :MainMenu
if %_erl%==4 setlocal & call :_Check_Status_vbs & cls & endlocal & goto :MainMenu
if %_erl%==3 setlocal & call :KMSActivation   & cls & endlocal & goto :MainMenu是号选项吧? 执行 call :KMSActivation
在 :KMSActivation 内有:
call :_export kacttxt "%mastemp%\Activate.cmd" ASCII
call "%mastemp%\Activate.cmd"
:_export部分:
::Extract the text from batch script without character issue

:_Export

%nul% %_psc% "$f=::ReadAllText('!_batp!') -split \":%~1\:.*`r`n\"; ::WriteAllText('%~2',$f.Trim(),::%~3);"
exit /b
很可能是这里调用powershell 将编码转为ASCII的原因。。。

青青草 发表于 2022-2-17 18:11:05

2010techon 发表于 2022-2-17 14:56
-----发完才看到已解决,删了吧
:MainMenu 主界面:
是号选项吧? 执行 call :KMSActivation


谢谢!
页: [1]
查看完整版本: 【已解决】如何解决批处理中文变问号问题