From 1d19e21bb2fc4f59de018c3a6dcdd8bc4296cd9a Mon Sep 17 00:00:00 2001 From: Crudelis Date: Fri, 5 Sep 2025 20:43:59 +0900 Subject: [PATCH] =?UTF-8?q?PathCombine=20=ED=86=B5=ED=95=A9=20=EC=9E=91?= =?UTF-8?q?=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CommonLibrary/Extensions.cs | 62 +++++-------------- Mitria_Minecraft_Launcher/AuditFile.cs | 4 +- Mitria_Minecraft_Launcher/LauncherForm.cs | 10 +-- .../LauncherSetupForm.cs | 2 +- Mitria_Minecraft_Launcher/Program.cs | 4 +- Mitria_Minecraft_Launcher/Settings.cs | 4 +- .../Updater/GameUpdateManager.cs | 49 +++++++-------- .../Updater/LauncherUpdate.cs | 6 +- 8 files changed, 56 insertions(+), 85 deletions(-) diff --git a/CommonLibrary/Extensions.cs b/CommonLibrary/Extensions.cs index ab3f1a3..c79e79b 100644 --- a/CommonLibrary/Extensions.cs +++ b/CommonLibrary/Extensions.cs @@ -5,55 +5,27 @@ namespace CommonLibrary { public static class Extensions { - //TODO: 제거후 PathCombine 에 통합 - public static string PathCombineL(params string[] paths) + /// 경로를 일관된 포맷으로 변경 + /// 경로 리스트들 + /// 폴더 구분자가 / 로 일관되게 변경된 경로 + public static string PathCombine(params string[] paths) { - var directorySeparatorChar = System.IO.Path.AltDirectorySeparatorChar.ToString(); - return PathCombine(directorySeparatorChar, paths).Replace("\\", "/"); - } + if (paths == null || paths.Length == 0) + return string.Empty; - //TODO: 제거예정 - public static string PathCombineW(params string[] paths) - { - var directorySeparatorChar = System.IO.Path.DirectorySeparatorChar.ToString(); - return PathCombine(directorySeparatorChar, paths).Replace("/", "\\"); - } - - static string PathCombine(string directorySeparator, params string[] paths) - { - if (paths.Length == 0) return string.Empty; - - var path = new StringBuilder(); - path.Append(paths[0]); - - for (int i = 1; i < paths.Length; i++) + var sb = new StringBuilder(); + for (int i = 0; i < paths.Length; i++) { - if (path.ToString().Substring(path.Length - 1, 1) == directorySeparator) - { - if (paths[i].Substring(0, 1) == directorySeparator) - { - path.Append(paths[i].Substring(1, paths[i].Length - 1)); - } - else - { - path.Append(paths[i]); - } - } - else - { - if (paths[i].Substring(0, 1) == directorySeparator) - { - path.Append(paths[i]); - } - else - { - path.Append(directorySeparator); - path.Append(paths[i]); - } - } - } + if (string.IsNullOrEmpty(paths[i])) + continue; - return path.ToString(); + var part = paths[i].Replace("\\", "/").Trim('/'); + if (sb.Length > 0) + sb.Append('/'); + + sb.Append(part); + } + return sb.ToString(); } public static bool IsDefault(ref this T data) where T : struct diff --git a/Mitria_Minecraft_Launcher/AuditFile.cs b/Mitria_Minecraft_Launcher/AuditFile.cs index 79ff676..bdedb6e 100644 --- a/Mitria_Minecraft_Launcher/AuditFile.cs +++ b/Mitria_Minecraft_Launcher/AuditFile.cs @@ -31,7 +31,7 @@ namespace Mitria_Minecraft_Launcher List directoryInfos = new List(); foreach (string directory in directorys) { - System.IO.DirectoryInfo directoryInfo = new DirectoryInfo(CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory,Settings.NowProfile.ServerName, directory)); + System.IO.DirectoryInfo directoryInfo = new DirectoryInfo(CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory,Settings.NowProfile.ServerName, directory)); directoryInfos.Add(directoryInfo); } return GetLocalFileList(directoryInfos); @@ -53,7 +53,7 @@ namespace Mitria_Minecraft_Launcher foreach (var file in files) { FileDetail fileDetail = new FileDetail(); - fileDetail.Directory = file.DirectoryName.Replace(CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName) + "\\", "").Replace("\\", "/"); + fileDetail.Directory = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName); fileDetail.FileName = file.Name; fileDetail.FileSize = file.Length; fileDetail.HashCode = GetFileHash(file); diff --git a/Mitria_Minecraft_Launcher/LauncherForm.cs b/Mitria_Minecraft_Launcher/LauncherForm.cs index ae37600..f0137ef 100644 --- a/Mitria_Minecraft_Launcher/LauncherForm.cs +++ b/Mitria_Minecraft_Launcher/LauncherForm.cs @@ -169,7 +169,7 @@ namespace Mitria_Minecraft_Launcher Settings.SaveUserLauncherConfig(); Settings.SaveUserClientVersion(); - string runtime = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.RuntimeLocation , Settings.NowProfile.ServerName, "\\bin\\javaw.exe")); + string runtime = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine(Settings.RuntimeLocation , Settings.NowProfile.ServerName, "/bin/javaw.exe")); if (!System.IO.File.Exists(runtime)) { CommonLibrary.Log.FATAL("not found java"); @@ -178,11 +178,11 @@ namespace Mitria_Minecraft_Launcher Settings.NowProfile.RuntimeVersion = "0.0.0.0"; // 버전초기화 return; } - string excuteArgumentXml = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, @"\Mitria\ExcuteArgument.xml"); + string excuteArgumentXml = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, @"/Mitria/ExcuteArgument.xml"); ExcuteArgument excuteArgument = CommonLibrary.XmlSystem.LoadFromPath(excuteArgumentXml); List launcherParameters = new List(); - launcherParameters.Add(new Parameter("GameDirectory", "\"" + CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName) + "\"")); + launcherParameters.Add(new Parameter("GameDirectory", CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName) )); launcherParameters.Add(new Parameter("argument", Settings.NowProfile.Argument)); launcherParameters.Add(new Parameter("userName", Settings.UserLauncherConfig.MinecraftPlayerName)); launcherParameters.Add(new Parameter("uuid", "uuid")); @@ -199,7 +199,7 @@ namespace Mitria_Minecraft_Launcher CreateNoWindow = true, Arguments = argumentsCommand, UseShellExecute = Settings.UserLauncherConfig.ShellView, - WorkingDirectory = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory , Settings.NowProfile.ServerName), + WorkingDirectory = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory , Settings.NowProfile.ServerName), }; process.StartInfo = processStartInfo; @@ -239,7 +239,7 @@ namespace Mitria_Minecraft_Launcher private string ReportCheck(DateTime criteriaDateTime) { - string crashDirectory = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfigPath, "crash-reports"); + string crashDirectory = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfigPath, "crash-reports"); string lastFileName = string.Empty; if (System.IO.Directory.Exists(crashDirectory)) { diff --git a/Mitria_Minecraft_Launcher/LauncherSetupForm.cs b/Mitria_Minecraft_Launcher/LauncherSetupForm.cs index 834b2a8..536fac9 100644 --- a/Mitria_Minecraft_Launcher/LauncherSetupForm.cs +++ b/Mitria_Minecraft_Launcher/LauncherSetupForm.cs @@ -24,7 +24,7 @@ namespace Mitria_Minecraft_Launcher DialogResult result = folderBrowserDialog.ShowDialog(); if(result == DialogResult.OK) { - textBox_GameDirectory.Text = CommonLibrary.Extensions.PathCombineW(folderBrowserDialog.SelectedPath,"Mitria"); + textBox_GameDirectory.Text = CommonLibrary.Extensions.PathCombine(folderBrowserDialog.SelectedPath,"Mitria"); } } diff --git a/Mitria_Minecraft_Launcher/Program.cs b/Mitria_Minecraft_Launcher/Program.cs index db0778a..772a0ad 100644 --- a/Mitria_Minecraft_Launcher/Program.cs +++ b/Mitria_Minecraft_Launcher/Program.cs @@ -88,12 +88,12 @@ namespace Mitria_Minecraft_Launcher if (!existence) { newList.Remove(Settings.UserLauncherConfig.Profiles[i]); - string path = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.UserLauncherConfig.Profiles[i].ServerName); + string path = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.UserLauncherConfig.Profiles[i].ServerName); if (File.Exists(path)) { Directory.Delete(path, true); } - path = CommonLibrary.Extensions.PathCombineW(Settings.CustomDataDirectory, Settings.UserLauncherConfig.Profiles[i].ServerName); + path = CommonLibrary.Extensions.PathCombine(Settings.CustomDataDirectory, Settings.UserLauncherConfig.Profiles[i].ServerName); if (System.IO.Directory.Exists(path)) { System.IO.Directory.Delete(path, true); diff --git a/Mitria_Minecraft_Launcher/Settings.cs b/Mitria_Minecraft_Launcher/Settings.cs index 98b80e5..3adf51a 100644 --- a/Mitria_Minecraft_Launcher/Settings.cs +++ b/Mitria_Minecraft_Launcher/Settings.cs @@ -116,7 +116,7 @@ namespace Mitria_Minecraft_Launcher } public static void LoadUserClientVersion() { - string path = CommonLibrary.Extensions.PathCombineW(UserLauncherConfig.GameDirectory, NowProfile.ServerName, UserClientVersionPath); + string path = CommonLibrary.Extensions.PathCombine(UserLauncherConfig.GameDirectory, NowProfile.ServerName, UserClientVersionPath); if (System.IO.File.Exists(path)) { UserClientVersion = CommonLibrary.XmlSystem.LoadFromPath(path); @@ -134,7 +134,7 @@ namespace Mitria_Minecraft_Launcher public static void SaveUserClientVersion() { - string path = CommonLibrary.Extensions.PathCombineW(UserLauncherConfig.GameDirectory, NowProfile.ServerName, UserClientVersionPath); + string path = CommonLibrary.Extensions.PathCombine(UserLauncherConfig.GameDirectory, NowProfile.ServerName, UserClientVersionPath); string pathDirectory = System.IO.Path.GetDirectoryName(path); if (!System.IO.Directory.Exists(pathDirectory)) { diff --git a/Mitria_Minecraft_Launcher/Updater/GameUpdateManager.cs b/Mitria_Minecraft_Launcher/Updater/GameUpdateManager.cs index 09f5ef8..45698b2 100644 --- a/Mitria_Minecraft_Launcher/Updater/GameUpdateManager.cs +++ b/Mitria_Minecraft_Launcher/Updater/GameUpdateManager.cs @@ -27,7 +27,7 @@ namespace Mitria_Minecraft_Launcher.Updater // Version File Download CommonLibrary.Log.INFO("download version file."); - var verionData = downloader.DownloadString(CommonLibrary.Extensions.PathCombineL(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, Settings.ServerDataPatchInformationFile)); + var verionData = downloader.DownloadString(CommonLibrary.Extensions.PathCombine(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, Settings.ServerDataPatchInformationFile)); // Versoin File 받기에 실패하였을때 업데이트 전체 실패처리 if (verionData == string.Empty) @@ -74,7 +74,7 @@ namespace Mitria_Minecraft_Launcher.Updater CommonLibrary.Log.INFO("Runtime delete it for update."); // 런타임 폴더 경로 가져오기 - var rootDirectoryInfo = new System.IO.DirectoryInfo(System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.RuntimeLocation, Settings.NowProfile.ServerName))); + var rootDirectoryInfo = new System.IO.DirectoryInfo(System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine(Settings.RuntimeLocation, Settings.NowProfile.ServerName))); // 런타임 폴더 삭제후 새로만들기 if (!rootDirectoryInfo.Exists) @@ -93,7 +93,7 @@ namespace Mitria_Minecraft_Launcher.Updater // 런타임 다운로드 시작 GameUpdateManagerMessage(this, new GameUpdateManagerMessageEventArgs(GameUpdateManagerMessageType.First, 2, 9, "[2/9] Runtime Download")); Log.INFO("[Runtime] Data Download Start"); - var downloadUrl = CommonLibrary.Extensions.PathCombineL(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, dataPatchInformation.RuntimeUrl, dataPatchInformation.RuntimeFileName); + var downloadUrl = CommonLibrary.Extensions.PathCombine(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, dataPatchInformation.RuntimeUrl, dataPatchInformation.RuntimeFileName); var targetPath = System.IO.Path.Combine(tempDirectory, dataPatchInformation.RuntimeFileName); // 임시폴더에 다운로드 downloader.DownloadFile(downloadUrl, targetPath); Log.INFO("[Runtime] Data Download End"); @@ -150,14 +150,14 @@ namespace Mitria_Minecraft_Launcher.Updater CommonLibrary.Log.INFO("[Package] update."); } // 패키지 다운로드 - var downloadUrl = CommonLibrary.Extensions.PathCombineL(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, dataPatchInformation.PackageUrl, dataPatchInformation.PackageFileName); + var downloadUrl = CommonLibrary.Extensions.PathCombine(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, dataPatchInformation.PackageUrl, dataPatchInformation.PackageFileName); var targetPath = System.IO.Path.Combine(tempDirectory, dataPatchInformation.PackageFileName); GameUpdateManagerMessage(this, new GameUpdateManagerMessageEventArgs(GameUpdateManagerMessageType.First, 5, 9, "[5/9] Package Download")); Log.INFO("[Package] Download Start"); downloader.DownloadFile(downloadUrl, targetPath); Log.INFO("[Package] Download End"); - var rootDirectoryInfo = new System.IO.DirectoryInfo(System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName))); + var rootDirectoryInfo = new System.IO.DirectoryInfo(System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName))); if (!rootDirectoryInfo.Exists) { @@ -168,7 +168,7 @@ namespace Mitria_Minecraft_Launcher.Updater { Log.INFO("[Package] Empty GameDirectory Start"); // 비우기 전에 스크린샷폴더 보존 /screenshots - string oldScreenshotsDirectory = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, "screenshots"); + string oldScreenshotsDirectory = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, "screenshots"); string newScreenshotsDirectory = System.IO.Path.GetFullPath("screenshots_" + DateTime.Now.ToString("yyyyMMddHHmmss")); if (System.IO.Directory.Exists(oldScreenshotsDirectory) && System.IO.Directory.GetFiles(oldScreenshotsDirectory, "*", System.IO.SearchOption.AllDirectories).Length > 0) { @@ -189,7 +189,7 @@ namespace Mitria_Minecraft_Launcher.Updater // 리스트에 있는 디렉토리와 파일 삭제 foreach (var item in list) { - string target = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, item.Name); + string target = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, item.Name); if (item.IsDirectory) { Extensions.DeleteDirectory(target); @@ -250,7 +250,7 @@ namespace Mitria_Minecraft_Launcher.Updater } foreach (var directory in resultDirectorys) { - var directoryPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, directory)); + var directoryPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine (Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, directory)); if (System.IO.Directory.Exists(directoryPath)) { @@ -261,17 +261,16 @@ namespace Mitria_Minecraft_Launcher.Updater var reverseDirectorys = dataPatchInformation.ComponentDirectorys; reverseDirectorys.Reverse(); - string gameDirectory = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName) + "\\"; + string gameDirectory = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName); foreach (var directory in reverseDirectorys) { - var directoryPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, directory)); + var directoryPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, directory)); if (System.IO.Directory.Exists(directoryPath)) { var lowDirectorys = System.IO.Directory.GetDirectories(directoryPath); foreach (var lowDirectory in lowDirectorys) { var directoryName = lowDirectory.Replace(gameDirectory, string.Empty); - directoryName = directoryName.Replace("\\", "/"); if (!dataPatchInformation.ComponentDirectorys.Contains(directoryName)) { System.IO.Directory.Delete(lowDirectory, true); @@ -283,7 +282,7 @@ namespace Mitria_Minecraft_Launcher.Updater foreach (var directory in dataPatchInformation.ComponentDirectorys) { - var directoryPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, directory)); + var directoryPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, directory)); if (!System.IO.Directory.Exists(directoryPath)) { @@ -301,7 +300,7 @@ namespace Mitria_Minecraft_Launcher.Updater foreach (var fileDetail in removeFiles) { - var filePath = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, fileDetail.Directory, fileDetail.FileName); + var filePath = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, fileDetail.Directory, fileDetail.FileName); FileInfo fileInfo = new FileInfo(filePath); fileInfo.IsReadOnly = false; if (fileInfo.Exists) @@ -315,8 +314,8 @@ namespace Mitria_Minecraft_Launcher.Updater Log.INFO("[Component] Download Start"); for (int i = 0; i < needFiles.Count; i++) { - var url = CommonLibrary.Extensions.PathCombineL(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, dataPatchInformation.ComponentUrl, needFiles[i].Directory, needFiles[i].FileName); - var path = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, needFiles[i].Directory, needFiles[i].FileName); + var url = CommonLibrary.Extensions.PathCombine(Settings.ServerBaseUrl, "Servers", Settings.NowProfile.ServerName, dataPatchInformation.ComponentUrl, needFiles[i].Directory, needFiles[i].FileName); + var path = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, needFiles[i].Directory, needFiles[i].FileName); downloader.DownloadFile(url, path); Log.INFO("[Component] +[F] " + path); } @@ -332,27 +331,27 @@ namespace Mitria_Minecraft_Launcher.Updater // 삭제된 파일 찾기 - string rootCustomPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombineW(Settings.CustomDataDirectory, Settings.NowProfile.ServerName)); - if (!System.IO.Directory.Exists(CommonLibrary.Extensions.PathCombineW(rootCustomPath, "config"))) + string rootCustomPath = System.IO.Path.GetFullPath(CommonLibrary.Extensions.PathCombine(Settings.CustomDataDirectory, Settings.NowProfile.ServerName)); + if (!System.IO.Directory.Exists(CommonLibrary.Extensions.PathCombine(rootCustomPath, "config"))) { - System.IO.Directory.CreateDirectory(CommonLibrary.Extensions.PathCombineW(rootCustomPath, "config")); + System.IO.Directory.CreateDirectory(CommonLibrary.Extensions.PathCombine(rootCustomPath, "config")); } - if (!System.IO.Directory.Exists(CommonLibrary.Extensions.PathCombineW(rootCustomPath, "mods"))) + if (!System.IO.Directory.Exists(CommonLibrary.Extensions.PathCombine(rootCustomPath, "mods"))) { - System.IO.Directory.CreateDirectory(CommonLibrary.Extensions.PathCombineW(rootCustomPath, "mods")); + System.IO.Directory.CreateDirectory(CommonLibrary.Extensions.PathCombine(rootCustomPath, "mods")); } List files = new List(); - files.AddRange(System.IO.Directory.GetFiles(CommonLibrary.Extensions.PathCombineW(rootCustomPath, "config"))); - files.AddRange(System.IO.Directory.GetFiles(CommonLibrary.Extensions.PathCombineW(rootCustomPath, "mods"))); + files.AddRange(System.IO.Directory.GetFiles(CommonLibrary.Extensions.PathCombine(rootCustomPath, "config"))); + files.AddRange(System.IO.Directory.GetFiles(CommonLibrary.Extensions.PathCombine(rootCustomPath, "mods"))); for (int i = 0; i < files.Count; i++) { - files[i] = files[i].Replace(rootCustomPath + '\\', string.Empty); + files[i] = files[i].Replace(rootCustomPath + '/', string.Empty); } foreach (var file in files) { - string sourcePath = CommonLibrary.Extensions.PathCombineW(rootCustomPath, file); - string targetPath = CommonLibrary.Extensions.PathCombineW(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, file); + string sourcePath = CommonLibrary.Extensions.PathCombine(rootCustomPath, file); + string targetPath = CommonLibrary.Extensions.PathCombine(Settings.UserLauncherConfig.GameDirectory, Settings.NowProfile.ServerName, file); if (System.IO.File.Exists(targetPath)) { diff --git a/Mitria_Minecraft_Launcher/Updater/LauncherUpdate.cs b/Mitria_Minecraft_Launcher/Updater/LauncherUpdate.cs index 28634ea..a3ac815 100644 --- a/Mitria_Minecraft_Launcher/Updater/LauncherUpdate.cs +++ b/Mitria_Minecraft_Launcher/Updater/LauncherUpdate.cs @@ -37,15 +37,15 @@ namespace Mitria_Minecraft_Launcher.Updater System.IO.Directory.CreateDirectory("temp"); } - string downloadUrl = CommonLibrary.Extensions.PathCombineL(Settings.ServerBaseUrl, launcherPatchInformation.LauncherUrl, launcherPatchInformation.LauncherFileName); - string launcherPackFile = CommonLibrary.Extensions.PathCombineW(tempDirectory, launcherPatchInformation.LauncherFileName); + string downloadUrl = CommonLibrary.Extensions.PathCombine(Settings.ServerBaseUrl, launcherPatchInformation.LauncherUrl, launcherPatchInformation.LauncherFileName); + string launcherPackFile = CommonLibrary.Extensions.PathCombine(tempDirectory, launcherPatchInformation.LauncherFileName); downloader.DownloadFile(downloadUrl, launcherPackFile); string launcherFile = System.Reflection.Assembly.GetExecutingAssembly().Location; string launcherPath = System.IO.Path.GetDirectoryName(launcherFile); // 기존 파일 파일명 변경후 temp 디렉토리로 이전 - string oldLauncherFile = CommonLibrary.Extensions.PathCombineW(tempDirectory, System.Reflection.Assembly.GetExecutingAssembly().GetName().Name + "_old"); + string oldLauncherFile = CommonLibrary.Extensions.PathCombine(tempDirectory, System.Reflection.Assembly.GetExecutingAssembly().GetName().Name + "_old"); System.IO.File.Move(launcherFile, oldLauncherFile); // 언패킹 과정