|
|
@@ -1317,14 +1317,15 @@ Retry:
|
|
|
McLaunchLog("开始获取 Minecraft 启动参数")
|
|
|
'获取基准字符串与参数信息
|
|
|
Dim Arguments As String
|
|
|
+ Arguments = If(McLaunchJavaSelected.VersionCode > 8, "-Dfile.encoding=UTF-8 -Dstdout.encoding=UTF-8 -Dstderr.encoding=UTF-8 ", Nothing) '#4700
|
|
|
If McVersionCurrent.JsonObject("arguments") IsNot Nothing AndAlso McVersionCurrent.JsonObject("arguments")("jvm") IsNot Nothing Then
|
|
|
McLaunchLog("获取新版 JVM 参数")
|
|
|
- Arguments = McLaunchArgumentsJvmNew(McVersionCurrent)
|
|
|
+ Arguments += McLaunchArgumentsJvmNew(McVersionCurrent)
|
|
|
McLaunchLog("新版 JVM 参数获取成功:")
|
|
|
McLaunchLog(Arguments)
|
|
|
Else
|
|
|
McLaunchLog("获取旧版 JVM 参数")
|
|
|
- Arguments = McLaunchArgumentsJvmOld(McVersionCurrent)
|
|
|
+ Arguments += McLaunchArgumentsJvmOld(McVersionCurrent)
|
|
|
McLaunchLog("旧版 JVM 参数获取成功:")
|
|
|
McLaunchLog(Arguments)
|
|
|
End If
|
|
|
@@ -2050,6 +2051,7 @@ IgnoreCustomSkin:
|
|
|
'输出 bat
|
|
|
Try
|
|
|
Dim CmdString As String =
|
|
|
+ $"{If(McLaunchJavaSelected.VersionCode > 8, "chcp 65001>nul" & vbCrLf, Nothing)}" &
|
|
|
"@echo off" & vbCrLf &
|
|
|
"title 启动 - " & McVersionCurrent.Name & vbCrLf &
|
|
|
"echo 游戏正在启动,请稍候。" & vbCrLf &
|
|
|
@@ -2142,8 +2144,8 @@ IgnoreCustomSkin:
|
|
|
StartInfo.EnvironmentVariables("Path") = Join(Paths.Distinct.ToList, ";")
|
|
|
|
|
|
'设置其他参数
|
|
|
- StartInfo.StandardErrorEncoding = Encoding.UTF8
|
|
|
- StartInfo.StandardOutputEncoding = Encoding.UTF8
|
|
|
+ StartInfo.StandardErrorEncoding = If(McLaunchJavaSelected.VersionCode > 8, Encoding.UTF8, Nothing)
|
|
|
+ StartInfo.StandardOutputEncoding = If(McLaunchJavaSelected.VersionCode > 8, Encoding.UTF8, Nothing)
|
|
|
StartInfo.WorkingDirectory = ShortenPath(McVersionCurrent.PathIndie)
|
|
|
StartInfo.UseShellExecute = False
|
|
|
StartInfo.RedirectStandardOutput = True
|