From f774879a1b79ec97c23f76b6dd688dd75043cdab Mon Sep 17 00:00:00 2001
From: 1415ddfer <1783488228@qq.com>
Date: Tue, 19 Mar 2024 12:09:31 +0800
Subject: [PATCH] release
---
App.xaml.cs | 24 ++++++++++--------------
Manager/EngineManager.cs | 11 +++++------
Manager/UpDateManager.cs | 15 ++++++++++-----
Manager/WebApiManager.cs | 2 +-
Zerolauncher.csproj | 7 +++++++
controls/MemberControl.xaml.cs | 4 +---
6 files changed, 34 insertions(+), 29 deletions(-)
diff --git a/App.xaml.cs b/App.xaml.cs
index 88b9a68..9bd69b6 100644
--- a/App.xaml.cs
+++ b/App.xaml.cs
@@ -19,7 +19,7 @@ namespace Zerolauncher
Directory.Delete(path, recursive);
return true;
}
- catch (IOException)
+ catch (UnauthorizedAccessException)
{
return false;
}
@@ -28,18 +28,6 @@ namespace Zerolauncher
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
- if (e.Args.Length == 1)
- {
- switch (e.Args[0])
- {
- case "updateDone":
- {
- for (int i = 0; i < 3 && !TryDeleteDirectory(@"./cache", true); i++)
- Thread.Sleep(3000);
- }
- break;
- }
- }
Task.Run(async () =>
{
@@ -50,9 +38,17 @@ namespace Zerolauncher
UpDateManager.DoUpdate();
}
});
+ Task.Run(async () =>
+ {
+ if (Directory.Exists("./cache/"))
+ {
+ for (int i = 0; i < 3 && !TryDeleteDirectory(@"./cache", true); i++) await Task.Delay(3000);
+ }
+ });
DataStream.Load();
_ = WebApiManager.StartListener();
- AccountManager.initLoadData(); }
+ AccountManager.initLoadData();
+ }
protected override void OnExit(ExitEventArgs e)
{
diff --git a/Manager/EngineManager.cs b/Manager/EngineManager.cs
index 6846213..2288d58 100644
--- a/Manager/EngineManager.cs
+++ b/Manager/EngineManager.cs
@@ -17,9 +17,8 @@ namespace Zerolauncher.Manager
return string.Format("{0}{1}{2}", account.providerId, account.serverId, account.userName);
}
- public static bool CreateGame(Account account, out bool showDialog)
+ public static bool CreateGame(Account account)
{
- showDialog = false;
if (UpDateData.is_check == false)
{
MessageBox.Show("正在更新游戏数据,请等待1-3秒。\n 请检查网络", "错误", MessageBoxButton.OK, MessageBoxImage.Warning);
@@ -27,7 +26,7 @@ namespace Zerolauncher.Manager
}
if (UpDateData.state)
{
- showDialog = true;
+ UpDateManager.DoUpdate();
return true;
}
var key = AccToKey(account);
@@ -57,9 +56,9 @@ namespace Zerolauncher.Manager
return true;
}
- public static bool CreateGame(int memberId, out bool showDialog)
+ public static bool CreateGame(int memberId)
{
- return CreateGame(AccountManager.accountsList[memberId], out showDialog);
+ return CreateGame(AccountManager.accountsList[memberId]);
}
public static int CheckGameState(Account account)
@@ -237,7 +236,7 @@ namespace Zerolauncher.Manager
bool is_first_luancher = EngineManager.CheckEmpy();
if (mod == StaticHandleA.UpdateMode)
{
- if (DataStream.dataStream.ecs != "")
+ if (DataStream.dataStream.ecs.Length > 10)
{
string? now_bit;
using (SHA256 sha256 = SHA256.Create())
diff --git a/Manager/UpDateManager.cs b/Manager/UpDateManager.cs
index 449d3c0..c54cfee 100644
--- a/Manager/UpDateManager.cs
+++ b/Manager/UpDateManager.cs
@@ -85,9 +85,13 @@ namespace Zerolauncher.Manager
public static void DoUpdate1()
{
- updateProcess.Send($"{StaticHandleS.ShowWindow} 自助更新");
- updateProcess.Send($"{StaticHandleS.UseBrowser} {UpDateData.lanzou + UpDateData.auto_packet_url}");
- updateProcess.Send($"{StaticHandleS.UpdateInfo} {UpDateData.tis}");
+ Task.Run(async () =>
+ {
+ updateProcess.Send($"{StaticHandleS.ShowWindow} 自助更新");
+ await Task.Delay(1000);
+ updateProcess.Send($"{StaticHandleS.UpdateInfo} {UpDateData.tis}");
+ updateProcess.Send($"{StaticHandleS.UseBrowser} {UpDateData.lanzou + UpDateData.auto_packet_url}");
+ });
}
public static void OnDownLoadDone(string path)
@@ -95,15 +99,16 @@ namespace Zerolauncher.Manager
updateProcess.Send(StaticHandleS.CloseGame);
try
{
+ if (Directory.Exists("./cache/")) Directory.Delete("./cache/", true);
ZipFile.ExtractToDirectory(path, "./cache/");
File.Delete(path);
}catch(Exception e)
{
- MessageBox.Show($"尝试更新文件时发生错误\n{e.Message}", "错误", MessageBoxButton.OKCancel, MessageBoxImage.Error);
+ MessageBox.Show($"尝试更新文件时发生错误\n{e.Message}", "错误", MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
App.needUpdate = true;
- MainWindow.Instance.Close();
+ Application.Current.Dispatcher.Invoke(() => Application.Current.Shutdown());
}
}
diff --git a/Manager/WebApiManager.cs b/Manager/WebApiManager.cs
index b0e633f..c4b9703 100644
--- a/Manager/WebApiManager.cs
+++ b/Manager/WebApiManager.cs
@@ -80,7 +80,7 @@ namespace Zerolauncher.Manager
break;
case "/LoginGame":
{
- if (EngineManager.CreateGame(acc, out _))
+ if (EngineManager.CreateGame(acc))
{
rb = new ResponesBody(0, 0, $"Account [{nick}] successful to start.");
}
diff --git a/Zerolauncher.csproj b/Zerolauncher.csproj
index b03a03e..806bfaa 100644
--- a/Zerolauncher.csproj
+++ b/Zerolauncher.csproj
@@ -19,6 +19,13 @@
full
+
+
+
+
+
+
+
diff --git a/controls/MemberControl.xaml.cs b/controls/MemberControl.xaml.cs
index 026aaf0..57544d0 100644
--- a/controls/MemberControl.xaml.cs
+++ b/controls/MemberControl.xaml.cs
@@ -35,9 +35,7 @@ namespace Zerolauncher.controls
if (!isMouseDown) return;
RenderTransform = new TranslateTransform(0, 0);
if (e.ChangedButton == MouseButton.Right) return;
- bool needDialog;
- if (!EngineManager.CreateGame(memberId, out needDialog)) MessageBox.Show("账号已启动!请勿重复启动", "提示");
- if (needDialog) UpdateDialog.CreateDailog();
+ if (!EngineManager.CreateGame(memberId)) MessageBox.Show("账号已启动!请勿重复启动", "提示");
};
// 鼠标离开事件