From 80a004ceefaee837b4013ad5c81b758da9c91253 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=96=84=E5=A5=9A=E6=A2=A6=E7=81=B5?= <188181427+shimoranla@users.noreply.github.com> Date: Tue, 4 Mar 2025 12:04:17 +0800 Subject: [PATCH] =?UTF-8?q?fix(BtnDisplayRename=5FClick)=EF=BC=9A=E5=9C=A8?= =?UTF-8?q?=E9=87=8D=E5=91=BD=E5=90=8D=E5=89=8D=E6=A3=80=E6=9F=A5=E8=B7=AF?= =?UTF-8?q?=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Modules/Base/ModValidate.vb | 2 -- .../Pages/PageVersion/PageVersionOverall.xaml.vb | 11 +++++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Plain Craft Launcher 2/Modules/Base/ModValidate.vb b/Plain Craft Launcher 2/Modules/Base/ModValidate.vb index 0dd9352..0394060 100644 --- a/Plain Craft Launcher 2/Modules/Base/ModValidate.vb +++ b/Plain Craft Launcher 2/Modules/Base/ModValidate.vb @@ -216,8 +216,6 @@ Public Class ValidateFolderName End Sub Public Overrides Function Validate(Str As String) As String Try - '检查是否已存在 - If Not Str = "" AndAlso Directory.Exists($"{Path}\{Str}") Then Return "指定的名称已存在" '检查是否为空 Dim LengthCheck As String = New ValidateNullOrWhiteSpace().Validate(Str) If Not LengthCheck = "" Then Return LengthCheck diff --git a/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb b/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb index 7a975a4..08ce7c4 100644 --- a/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb +++ b/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb @@ -124,6 +124,17 @@ Log(ex, "重命名读取 json 时失败") JsonObject = PageVersionLeft.Version.JsonObject End Try + If Directory.Exists(NewPath) OrElse Directory.Exists(TempName) Then + Select Case MyMsgBox("当前文件夹已存在此名称,请重新输入一个有效的名称。", "重命名失败", Button1:="确定", Button2:="取消") + Case 1 + GoTo ReType + Case 2 + Exit Sub + End Select + ElseIf Not Directory.Exists($"{PathMcFolder}\versions") Then + MyMsgBox("当前版本文件夹无效,请检查版本文件夹。", "重命名失败") + Exit Sub + End If '重命名主文件夹 My.Computer.FileSystem.RenameDirectory(OldPath, TempName) My.Computer.FileSystem.RenameDirectory(TempPath, NewName)