From 73d705aa5b0ccb92121f801b4f62b8abbdab0bef Mon Sep 17 00:00:00 2001 From: wyc-26 Date: Sat, 31 May 2025 23:08:11 +0800 Subject: [PATCH] =?UTF-8?q?fix(PageVersionOverall):=20=E9=87=8D=E5=91=BD?= =?UTF-8?q?=E5=90=8D=E7=89=88=E6=9C=AC=E6=97=B6=E4=BC=9A=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=90=8E=E7=BC=80=E5=90=8D=E4=B8=94=E4=BC=9A=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=B8=8D=E5=BA=94=E9=87=8D=E5=91=BD=E5=90=8D=E7=9A=84=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=88=96=E6=96=87=E4=BB=B6=E5=A4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PageVersion/PageVersionOverall.xaml.vb | 37 +++++++++++-------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb b/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb index 2f03cf4..3e724d1 100644 --- a/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb +++ b/Plain Craft Launcher 2/Pages/PageVersion/PageVersionOverall.xaml.vb @@ -129,27 +129,34 @@ My.Computer.FileSystem.RenameDirectory(TempPath, NewName) '清理 ini 缓存 IniClearCache(PageVersionLeft.Version.Path & "PCL\Setup.ini") - '遍历重命名所有文件与文件夹 - For Each Entry As DirectoryInfo In New DirectoryInfo(NewPath).EnumerateDirectories - If Not Entry.Name.Contains(OldName) Then Continue For + '重命名 JAR 文件、JSON 文件与 natives 文件夹 + If Directory.Exists(NewPath & OldName & "-natives") Then If IsCaseChangedOnly Then - My.Computer.FileSystem.RenameDirectory(Entry.FullName, Entry.Name & "_temp") - My.Computer.FileSystem.RenameDirectory(Entry.FullName & "_temp", Entry.Name.Replace(OldName, NewName)) + My.Computer.FileSystem.RenameDirectory(NewPath & OldName & "-natives", OldName & "natives" & "_temp") + My.Computer.FileSystem.RenameDirectory(NewPath & OldName & "-natives" & "_temp", NewName & "-natives") Else - DeleteDirectory(NewPath & Entry.Name.Replace(OldName, NewName)) - My.Computer.FileSystem.RenameDirectory(Entry.FullName, Entry.Name.Replace(OldName, NewName)) + DeleteDirectory(NewPath & NewName & "-natives") + My.Computer.FileSystem.RenameDirectory(NewPath & OldName & "-natives", NewName & "-natives") End If - Next - For Each Entry As FileInfo In New DirectoryInfo(NewPath).EnumerateFiles - If Not Entry.Name.Contains(OldName) Then Continue For + End If + If File.Exists(NewPath & OldName & ".jar") Then If IsCaseChangedOnly Then - My.Computer.FileSystem.RenameFile(Entry.FullName, Entry.Name & "_temp") - My.Computer.FileSystem.RenameFile(Entry.FullName & "_temp", Entry.Name.Replace(OldName, NewName)) + My.Computer.FileSystem.RenameFile(NewPath & OldName & ".jar", OldName & "_temp" & ".jar") + My.Computer.FileSystem.RenameFile(NewPath & OldName & "_temp" & ".jar", NewName & ".jar") Else - If File.Exists(NewPath & Entry.Name.Replace(OldName, NewName)) Then File.Delete(NewPath & Entry.Name.Replace(OldName, NewName)) - My.Computer.FileSystem.RenameFile(Entry.FullName, Entry.Name.Replace(OldName, NewName)) + File.Delete(NewPath & NewName & ".jar") + My.Computer.FileSystem.RenameFile(NewPath & OldName & ".jar", NewName & ".jar") End If - Next + End If + If File.Exists(NewPath & OldName & ".json") Then + If IsCaseChangedOnly Then + My.Computer.FileSystem.RenameFile(NewPath & OldName & ".json", OldName & "_temp" & ".json") + My.Computer.FileSystem.RenameFile(NewPath & OldName & "_temp" & ".json", NewName & ".json") + Else + File.Delete(NewPath & NewName & ".json") + My.Computer.FileSystem.RenameFile(NewPath & OldName & ".json", NewName & ".json") + End If + End If '替换版本设置文件中的路径 If File.Exists(NewPath & "PCL\Setup.ini") Then WriteFile(NewPath & "PCL\Setup.ini", ReadFile(NewPath & "PCL\Setup.ini").Replace(OldPath, NewPath))