diff --git a/launcher-client-avalonia/.run/launcher-client-avalonia-win64.run.xml b/Launcher.Client.Avalonia/.run/launcher-client-avalonia-win64.run.xml
similarity index 100%
rename from launcher-client-avalonia/.run/launcher-client-avalonia-win64.run.xml
rename to Launcher.Client.Avalonia/.run/launcher-client-avalonia-win64.run.xml
diff --git a/launcher-client-avalonia/GUI/App.axaml b/Launcher.Client.Avalonia/GUI/App.axaml
similarity index 100%
rename from launcher-client-avalonia/GUI/App.axaml
rename to Launcher.Client.Avalonia/GUI/App.axaml
diff --git a/launcher-client-avalonia/GUI/App.axaml.cs b/Launcher.Client.Avalonia/GUI/App.axaml.cs
similarity index 100%
rename from launcher-client-avalonia/GUI/App.axaml.cs
rename to Launcher.Client.Avalonia/GUI/App.axaml.cs
diff --git a/launcher-client-avalonia/GUI/LauncherWindow.axaml b/Launcher.Client.Avalonia/GUI/LauncherWindow.axaml
similarity index 100%
rename from launcher-client-avalonia/GUI/LauncherWindow.axaml
rename to Launcher.Client.Avalonia/GUI/LauncherWindow.axaml
diff --git a/launcher-client-avalonia/GUI/LauncherWindow.axaml.cs b/Launcher.Client.Avalonia/GUI/LauncherWindow.axaml.cs
similarity index 65%
rename from launcher-client-avalonia/GUI/LauncherWindow.axaml.cs
rename to Launcher.Client.Avalonia/GUI/LauncherWindow.axaml.cs
index 80c769a..aa4bfbd 100644
--- a/launcher-client-avalonia/GUI/LauncherWindow.axaml.cs
+++ b/Launcher.Client.Avalonia/GUI/LauncherWindow.axaml.cs
@@ -7,31 +7,26 @@ public partial class LauncherWindow : Window
{
public LauncherWindow()
{
- try
- {
- InitializeComponent();
- LogBox.Text = Logger.Buffer;
- Logger.MessageSent += LogHandler;
- LogfileLabel.Content = Logger.LogfileName.Remove(0,Logger.LogfileName.LastIndexOf(Путь.Разд)+1);
- LogfileLabel.PointerPressed += (_,_)=>
- Process.Start("explorer.exe", LauncherLogger.LogfileDir);
- LogfileLabel.PointerEnter += (_,_)=>LogfileLabel.Foreground=App.MySelectionColor;
- LogfileLabel.PointerLeave += (_,_)=>LogfileLabel.Foreground=App.MyWhite;
- LibraryButton.TabGrid = LibraryGrid;
- DownloadsButton.TabGrid = DownloadsGrid;
- LogButton.TabGrid = LogGrid;
- SettingsButton.TabGrid = SettingsGrid;
- LibraryButton.Click += SelectTab;
- DownloadsButton.Click += SelectTab;
- LogButton.Click += SelectTab;
- SettingsButton.Click += SelectTab;
- ProgramGrid.IsVisible = false;
- SelectTab(LibraryButton, null);
- FillProgramsPanel();
- Logger.Log("launcher started");
- }
- catch(Exception ex)
- { LogError("LAUNCHER WINDOW INIT",ex); }
+ InitializeComponent();
+ LogBox.Text = Logger.Buffer;
+ Logger.MessageSent += LogHandler;
+ LogfileLabel.Content = Logger.LogfileName.Remove(0,Logger.LogfileName.LastIndexOf(Путь.Разд)+1);
+ LogfileLabel.PointerPressed += (_,_)=>
+ Process.Start("explorer.exe", LauncherLogger.LogfileDir);
+ LogfileLabel.PointerEnter += (_,_)=>LogfileLabel.Foreground=App.MySelectionColor;
+ LogfileLabel.PointerLeave += (_,_)=>LogfileLabel.Foreground=App.MyWhite;
+ LibraryButton.TabGrid = LibraryGrid;
+ DownloadsButton.TabGrid = DownloadsGrid;
+ LogButton.TabGrid = LogGrid;
+ SettingsButton.TabGrid = SettingsGrid;
+ LibraryButton.Click += SelectTab;
+ DownloadsButton.Click += SelectTab;
+ LogButton.Click += SelectTab;
+ SettingsButton.Click += SelectTab;
+ ProgramGrid.IsVisible = false;
+ SelectTab(LibraryButton, null);
+ FillProgramsPanel();
+ Logger.Log("launcher started");
}
void LogHandler(string m) => Dispatcher.UIThread.InvokeAsync(()=>LogBox.Text += m);
diff --git a/launcher-client-avalonia/GUI/MessageBox.axaml b/Launcher.Client.Avalonia/GUI/MessageBox.axaml
similarity index 100%
rename from launcher-client-avalonia/GUI/MessageBox.axaml
rename to Launcher.Client.Avalonia/GUI/MessageBox.axaml
diff --git a/launcher-client-avalonia/GUI/MessageBox.axaml.cs b/Launcher.Client.Avalonia/GUI/MessageBox.axaml.cs
similarity index 100%
rename from launcher-client-avalonia/GUI/MessageBox.axaml.cs
rename to Launcher.Client.Avalonia/GUI/MessageBox.axaml.cs
diff --git a/launcher-client-avalonia/GUI/ProgramLabel.axaml b/Launcher.Client.Avalonia/GUI/ProgramLabel.axaml
similarity index 100%
rename from launcher-client-avalonia/GUI/ProgramLabel.axaml
rename to Launcher.Client.Avalonia/GUI/ProgramLabel.axaml
diff --git a/launcher-client-avalonia/GUI/ProgramLabel.axaml.cs b/Launcher.Client.Avalonia/GUI/ProgramLabel.axaml.cs
similarity index 100%
rename from launcher-client-avalonia/GUI/ProgramLabel.axaml.cs
rename to Launcher.Client.Avalonia/GUI/ProgramLabel.axaml.cs
diff --git a/launcher-client-avalonia/GUI/ProgramSettingsPanelItem.axaml b/Launcher.Client.Avalonia/GUI/ProgramSettingsPanelItem.axaml
similarity index 100%
rename from launcher-client-avalonia/GUI/ProgramSettingsPanelItem.axaml
rename to Launcher.Client.Avalonia/GUI/ProgramSettingsPanelItem.axaml
diff --git a/launcher-client-avalonia/GUI/ProgramSettingsPanelItem.axaml.cs b/Launcher.Client.Avalonia/GUI/ProgramSettingsPanelItem.axaml.cs
similarity index 100%
rename from launcher-client-avalonia/GUI/ProgramSettingsPanelItem.axaml.cs
rename to Launcher.Client.Avalonia/GUI/ProgramSettingsPanelItem.axaml.cs
diff --git a/launcher-client-avalonia/GUI/TabButton.cs b/Launcher.Client.Avalonia/GUI/TabButton.cs
similarity index 100%
rename from launcher-client-avalonia/GUI/TabButton.cs
rename to Launcher.Client.Avalonia/GUI/TabButton.cs
diff --git a/launcher-client-avalonia/launcher-client-avalonia.csproj b/Launcher.Client.Avalonia/Launcher.Client.Avalonia.csproj
similarity index 94%
rename from launcher-client-avalonia/launcher-client-avalonia.csproj
rename to Launcher.Client.Avalonia/Launcher.Client.Avalonia.csproj
index aefeec6..1ad4f1c 100644
--- a/launcher-client-avalonia/launcher-client-avalonia.csproj
+++ b/Launcher.Client.Avalonia/Launcher.Client.Avalonia.csproj
@@ -21,9 +21,16 @@
+
+
+
+
+
+
+
diff --git a/launcher-client-avalonia/LauncherMain.cs b/Launcher.Client.Avalonia/LauncherMain.cs
similarity index 57%
rename from launcher-client-avalonia/LauncherMain.cs
rename to Launcher.Client.Avalonia/LauncherMain.cs
index ab0cef5..3f2deae 100644
--- a/launcher-client-avalonia/LauncherMain.cs
+++ b/Launcher.Client.Avalonia/LauncherMain.cs
@@ -8,6 +8,8 @@ global using DTLib;
global using DTLib.Dtsod;
global using DTLib.Filesystem;
global using DTLib.Extensions;
+global using Launcher.Client;
+global using static Launcher.Client.LauncherClient;
global using static Launcher.Client.Avalonia.LauncherMain;
using Launcher.Client.Avalonia.GUI;
@@ -15,31 +17,24 @@ namespace Launcher.Client.Avalonia;
public static class LauncherMain
{
- public static LauncherConfig Config;
- public static readonly LauncherLogger Logger = new();
public static LauncherWindow CurrentLauncherWindow;
+ public static AppBuilder BuildAvaloniaApp() =>
+ AppBuilder.Configure()
+ .UsePlatformDetect()
+ .LogToTrace();
+
public static void Main(string[] args)
{
try
{
- Config = new LauncherConfig();
- Directory.Create("descriptors");
- Directory.Create("icons");
- Directory.Create("backgrounds");
- Directory.Create("installed");
- Directory.Create("settings");
- File.WriteAllText($"descriptors{Путь.Разд}default.descriptor.template",
- EmbeddedResources.ReadText("Launcher.Client.Avalonia.Resources.default.descriptor.template"));
+ LauncherClient.Init();
var traceHandler = new ConsoleTraceListener();
Trace.AutoFlush = true;
Trace.Listeners.Add(traceHandler);
-
- AppBuilder.Configure()
- .UsePlatformDetect()
- .LogToTrace()
- .StartWithClassicDesktopLifetime(args);
+ BuildAvaloniaApp().StartWithClassicDesktopLifetime(args);
+ throw new Exception("aaa");
}
catch (Exception ex)
{
diff --git a/launcher-client-avalonia/Program.cs b/Launcher.Client.Avalonia/Program.cs
similarity index 100%
rename from launcher-client-avalonia/Program.cs
rename to Launcher.Client.Avalonia/Program.cs
diff --git a/launcher-client-avalonia/Resources/logo-D.ico b/Launcher.Client.Avalonia/Resources/logo-D.ico
similarity index 100%
rename from launcher-client-avalonia/Resources/logo-D.ico
rename to Launcher.Client.Avalonia/Resources/logo-D.ico
diff --git a/launcher-client-wpf/GUI/App.xaml b/Launcher.Client.WPF/GUI/App.xaml
similarity index 100%
rename from launcher-client-wpf/GUI/App.xaml
rename to Launcher.Client.WPF/GUI/App.xaml
diff --git a/launcher-client-wpf/GUI/App.xaml.cs b/Launcher.Client.WPF/GUI/App.xaml.cs
similarity index 87%
rename from launcher-client-wpf/GUI/App.xaml.cs
rename to Launcher.Client.WPF/GUI/App.xaml.cs
index 65aea7f..c013c6f 100644
--- a/launcher-client-wpf/GUI/App.xaml.cs
+++ b/Launcher.Client.WPF/GUI/App.xaml.cs
@@ -21,7 +21,10 @@ public partial class App : Application
_Main(e.Args);
}
catch(Exception ex)
- { LogError("STARTUP",ex); }
+ {
+ LogError("STARTUP",ex);
+ Shutdown();
+ }
}
}
diff --git a/launcher-client-wpf/GUI/LauncherWindow.xaml b/Launcher.Client.WPF/GUI/LauncherWindow.xaml
similarity index 100%
rename from launcher-client-wpf/GUI/LauncherWindow.xaml
rename to Launcher.Client.WPF/GUI/LauncherWindow.xaml
diff --git a/launcher-client-wpf/GUI/LauncherWindow.xaml.cs b/Launcher.Client.WPF/GUI/LauncherWindow.xaml.cs
similarity index 65%
rename from launcher-client-wpf/GUI/LauncherWindow.xaml.cs
rename to Launcher.Client.WPF/GUI/LauncherWindow.xaml.cs
index 2c1a048..870c24e 100644
--- a/launcher-client-wpf/GUI/LauncherWindow.xaml.cs
+++ b/Launcher.Client.WPF/GUI/LauncherWindow.xaml.cs
@@ -6,31 +6,26 @@ public partial class LauncherWindow : Window
{
public LauncherWindow()
{
- try
- {
- InitializeComponent();
- LogBox.Text = Logger.Buffer;
- Logger.MessageSent += LogHandler;
- LogfileLabel.Content = Logger.LogfileName.Remove(0,Logger.LogfileName.LastIndexOf(Путь.Разд)+1);
- LogfileLabel.MouseLeftButtonDown += (_,_)=>
- Process.Start("explorer.exe", LauncherLogger.LogfileDir);
- LogfileLabel.MouseEnter += (_,_)=>LogfileLabel.Foreground=App.MySelectionColor;
- LogfileLabel.MouseLeave += (_,_)=>LogfileLabel.Foreground=App.MyWhite;
- LibraryButton.TabGrid = LibraryGrid;
- DownloadsButton.TabGrid = DownloadsGrid;
- LogButton.TabGrid = LogGrid;
- SettingsButton.TabGrid = SettingsGrid;
- LibraryButton.Click += SelectTab;
- DownloadsButton.Click += SelectTab;
- LogButton.Click += SelectTab;
- SettingsButton.Click += SelectTab;
- ProgramGrid.Visibility = Visibility.Hidden;
- SelectTab(LibraryButton, null);
- FillProgramsPanel();
- Logger.Log("launcher started");
- }
- catch(Exception ex)
- { LogError("LAUNCHER WINDOW INIT",ex); }
+ InitializeComponent();
+ LogBox.Text = Logger.Buffer;
+ Logger.MessageSent += LogHandler;
+ LogfileLabel.Content = Logger.LogfileName.Remove(0,Logger.LogfileName.LastIndexOf(Путь.Разд)+1);
+ LogfileLabel.MouseLeftButtonDown += (_,_)=>
+ Process.Start("explorer.exe", LauncherLogger.LogfileDir);
+ LogfileLabel.MouseEnter += (_,_)=>LogfileLabel.Foreground=App.MySelectionColor;
+ LogfileLabel.MouseLeave += (_,_)=>LogfileLabel.Foreground=App.MyWhite;
+ LibraryButton.TabGrid = LibraryGrid;
+ DownloadsButton.TabGrid = DownloadsGrid;
+ LogButton.TabGrid = LogGrid;
+ SettingsButton.TabGrid = SettingsGrid;
+ LibraryButton.Click += SelectTab;
+ DownloadsButton.Click += SelectTab;
+ LogButton.Click += SelectTab;
+ SettingsButton.Click += SelectTab;
+ ProgramGrid.Visibility = Visibility.Hidden;
+ SelectTab(LibraryButton, null);
+ FillProgramsPanel();
+ Logger.Log("launcher started");
}
void LogHandler(string m) => Dispatcher.Invoke(()=>LogBox.Text += m);
diff --git a/launcher-client-wpf/GUI/ProgramLabel.xaml b/Launcher.Client.WPF/GUI/ProgramLabel.xaml
similarity index 100%
rename from launcher-client-wpf/GUI/ProgramLabel.xaml
rename to Launcher.Client.WPF/GUI/ProgramLabel.xaml
diff --git a/launcher-client-wpf/GUI/ProgramLabel.xaml.cs b/Launcher.Client.WPF/GUI/ProgramLabel.xaml.cs
similarity index 100%
rename from launcher-client-wpf/GUI/ProgramLabel.xaml.cs
rename to Launcher.Client.WPF/GUI/ProgramLabel.xaml.cs
diff --git a/launcher-client-wpf/GUI/ProgramSettingsPanelItem.xaml b/Launcher.Client.WPF/GUI/ProgramSettingsPanelItem.xaml
similarity index 100%
rename from launcher-client-wpf/GUI/ProgramSettingsPanelItem.xaml
rename to Launcher.Client.WPF/GUI/ProgramSettingsPanelItem.xaml
diff --git a/launcher-client-wpf/GUI/ProgramSettingsPanelItem.xaml.cs b/Launcher.Client.WPF/GUI/ProgramSettingsPanelItem.xaml.cs
similarity index 100%
rename from launcher-client-wpf/GUI/ProgramSettingsPanelItem.xaml.cs
rename to Launcher.Client.WPF/GUI/ProgramSettingsPanelItem.xaml.cs
diff --git a/launcher-client-wpf/GUI/TabButton.cs b/Launcher.Client.WPF/GUI/TabButton.cs
similarity index 100%
rename from launcher-client-wpf/GUI/TabButton.cs
rename to Launcher.Client.WPF/GUI/TabButton.cs
diff --git a/launcher-client-wpf/launcher-client-wpf.csproj b/Launcher.Client.WPF/Launcher.Client.WPF.csproj
similarity index 90%
rename from launcher-client-wpf/launcher-client-wpf.csproj
rename to Launcher.Client.WPF/Launcher.Client.WPF.csproj
index ec1e4ca..6e169a7 100644
--- a/launcher-client-wpf/launcher-client-wpf.csproj
+++ b/Launcher.Client.WPF/Launcher.Client.WPF.csproj
@@ -25,6 +25,7 @@
+
diff --git a/launcher-client-wpf/LauncherMain.cs b/Launcher.Client.WPF/LauncherMain.cs
similarity index 56%
rename from launcher-client-wpf/LauncherMain.cs
rename to Launcher.Client.WPF/LauncherMain.cs
index e46d303..5bfd066 100644
--- a/launcher-client-wpf/LauncherMain.cs
+++ b/Launcher.Client.WPF/LauncherMain.cs
@@ -9,27 +9,20 @@ global using System.Text;
global using System.Collections.Generic;
global using System.Linq;
global using System.Windows;
-global using static Launcher.Client.WPF.LauncherMain;
+global using Launcher.Client;
+global using static Launcher.Client.LauncherClient;
+global using static Launcher.Client.WPF.LauncherMain;
using Launcher.Client.WPF.GUI;
namespace Launcher.Client.WPF;
public static class LauncherMain
{
- public static LauncherConfig Config;
- public static readonly LauncherLogger Logger = new();
public static LauncherWindow CurrentLauncherWindow;
public static void _Main(string[] args)
{
- Config = new LauncherConfig();
- Directory.Create("descriptors");
- Directory.Create("icons");
- Directory.Create("backgrounds");
- Directory.Create("installed");
- Directory.Create("settings");
- File.WriteAllText($"descriptors{Путь.Разд}default.descriptor.template",
- EmbeddedResources.ReadText("Launcher.Client.WPF.Resources.default.descriptor.template"));
+ LauncherClient.Init();
CurrentLauncherWindow = new LauncherWindow();
CurrentLauncherWindow.Show();
}
diff --git a/launcher-client-wpf/Program.cs b/Launcher.Client.WPF/Program.cs
similarity index 100%
rename from launcher-client-wpf/Program.cs
rename to Launcher.Client.WPF/Program.cs
diff --git a/launcher-client-wpf/Resources/logo-D.ico b/Launcher.Client.WPF/Resources/logo-D.ico
similarity index 100%
rename from launcher-client-wpf/Resources/logo-D.ico
rename to Launcher.Client.WPF/Resources/logo-D.ico
diff --git a/Launcher.Client/Launcher.Client.csproj b/Launcher.Client/Launcher.Client.csproj
new file mode 100644
index 0000000..c48f9b3
--- /dev/null
+++ b/Launcher.Client/Launcher.Client.csproj
@@ -0,0 +1,24 @@
+
+
+
+ net6.0
+ disable
+ disable
+ Launcher.Client
+ full
+ Debug;Release
+ AnyCPU
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Launcher.Client/LauncherClient.cs b/Launcher.Client/LauncherClient.cs
new file mode 100644
index 0000000..636ae8b
--- /dev/null
+++ b/Launcher.Client/LauncherClient.cs
@@ -0,0 +1,31 @@
+global using System;
+global using System.Diagnostics;
+global using System.Net;
+global using System.Text;
+global using System.Collections.Generic;
+global using System.Linq;
+global using DTLib;
+global using DTLib.Dtsod;
+global using DTLib.Filesystem;
+global using DTLib.Extensions;
+
+namespace Launcher.Client;
+
+public static class LauncherClient
+{
+ public static LauncherConfig Config;
+ public static readonly LauncherLogger Logger = new();
+
+ public static void Init()
+ {
+ Logger.Log("launcher starting...");
+ Config = new LauncherConfig();
+ Directory.Create("descriptors");
+ Directory.Create("icons");
+ Directory.Create("backgrounds");
+ Directory.Create("installed");
+ Directory.Create("settings");
+ File.WriteAllText($"descriptors{Путь.Разд}default.descriptor.template",
+ EmbeddedResources.ReadText("Launcher.Client.Resources.default.descriptor.template"));
+ }
+}
\ No newline at end of file
diff --git a/launcher-client-wpf/LauncherConfig.cs b/Launcher.Client/LauncherConfig.cs
similarity index 93%
rename from launcher-client-wpf/LauncherConfig.cs
rename to Launcher.Client/LauncherConfig.cs
index 165bec3..9a396f0 100644
--- a/launcher-client-wpf/LauncherConfig.cs
+++ b/Launcher.Client/LauncherConfig.cs
@@ -1,4 +1,4 @@
-namespace Launcher.Client.WPF;
+namespace Launcher.Client;
public class LauncherConfig
{
@@ -21,7 +21,7 @@ public class LauncherConfig
{
// читает дефолтный конфиг из ресурсов
DtsodV23 updatedConfig;
- DtsodV23 updatedDefault = new(EmbeddedResources.ReadText("Launcher.Client.WPF.Resources.launcher.dtsod"));
+ DtsodV23 updatedDefault = new(EmbeddedResources.ReadText("Launcher.Client.Resources.launcher.dtsod"));
// проверка и обновление конфига
if (File.Exists(configFile))
{
diff --git a/launcher-client-wpf/LauncherLogger.cs b/Launcher.Client/LauncherLogger.cs
similarity index 78%
rename from launcher-client-wpf/LauncherLogger.cs
rename to Launcher.Client/LauncherLogger.cs
index 4cd5ddf..7943a7d 100644
--- a/launcher-client-wpf/LauncherLogger.cs
+++ b/Launcher.Client/LauncherLogger.cs
@@ -1,15 +1,14 @@
-using DTLib.Loggers;
+using DTLib.Logging;
-namespace Launcher.Client.WPF;
+namespace Launcher.Client;
public class LauncherLogger : ConsoleLogger
{
public const string LogfileDir = "launcher-logs";
- public LauncherLogger() : base(LogfileDir,"launcher-client-wpf")
- { }
+ public LauncherLogger() : base(LogfileDir,"launcher-client") {}
private readonly StringBuilder _buffer = new();
- public string Buffer
+ public string Buffer
{
get { lock (_buffer) return _buffer.ToString(); }
}
diff --git a/launcher-client-avalonia/Resources/default.descriptor.template b/Launcher.Client/Resources/default.descriptor.template
similarity index 100%
rename from launcher-client-avalonia/Resources/default.descriptor.template
rename to Launcher.Client/Resources/default.descriptor.template
diff --git a/launcher-client-avalonia/Resources/launcher.dtsod b/Launcher.Client/Resources/launcher.dtsod
similarity index 100%
rename from launcher-client-avalonia/Resources/launcher.dtsod
rename to Launcher.Client/Resources/launcher.dtsod
diff --git a/launcher-server/launcher-server.csproj b/Launcher.Server/Launcher.Server.csproj
similarity index 100%
rename from launcher-server/launcher-server.csproj
rename to Launcher.Server/Launcher.Server.csproj
diff --git a/launcher-server/Server.cs b/Launcher.Server/Server.cs
similarity index 96%
rename from launcher-server/Server.cs
rename to Launcher.Server/Server.cs
index b558b15..3d00c06 100644
--- a/launcher-server/Server.cs
+++ b/Launcher.Server/Server.cs
@@ -10,6 +10,7 @@ global using System.Text;
global using System.Threading;
global using System.Linq;
using System.Globalization;
+using DTLib.Logging;
namespace Launcher.Server;
@@ -17,7 +18,7 @@ static class Server
{
static readonly Socket mainSocket = new(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
static DtsodV23 config;
- private static readonly DTLib.Loggers.ConsoleLogger Logger = new("logs", "launcher-server");
+ private static readonly ConsoleLogger Logger = new("logs", "launcher-server");
static readonly object manifestLocker = new();
@@ -29,7 +30,6 @@ static class Server
Console.InputEncoding = Encoding.Unicode;
Console.OutputEncoding = Encoding.Unicode;
PublicLog.LogEvent += Logger.Log;
- PublicLog.LogNoTimeEvent += Logger.Log;
config = new DtsodV23(File.ReadAllText("launcher-server.dtsod"));
Logger.Log("b", "local address: <", "c", config["local_ip"], "b",
">\npublic address: <", "c", OldNetwork.GetPublicIP(), "b",
diff --git a/launcher-server/launcher-server.dtsod b/Launcher.Server/launcher-server.dtsod
similarity index 100%
rename from launcher-server/launcher-server.dtsod
rename to Launcher.Server/launcher-server.dtsod
diff --git a/dtlauncher.sln b/dtlauncher.sln
index e873814..6b5e35f 100644
--- a/dtlauncher.sln
+++ b/dtlauncher.sln
@@ -3,9 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.1.32104.313
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "launcher-server", "launcher-server\launcher-server.csproj", "{1F4D14EB-AF48-4B6C-A91B-B294D4281173}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Launcher.Server", "Launcher.Server\Launcher.Server.csproj", "{1F4D14EB-AF48-4B6C-A91B-B294D4281173}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "launcher-client-wpf", "launcher-client-wpf\launcher-client-wpf.csproj", "{A1F770F3-F6B1-4854-9BF0-093F85064B88}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Launcher.Client.WPF", "Launcher.Client.WPF\Launcher.Client.WPF.csproj", "{A1F770F3-F6B1-4854-9BF0-093F85064B88}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Files", "Solution Files", "{F567AA49-E96B-43BD-95B5-A71F9FCB64E1}"
ProjectSection(SolutionItems) = preProject
@@ -13,7 +13,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Files", "Solution
README.md = README.md
EndProjectSection
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "launcher-client-avalonia", "launcher-client-avalonia\launcher-client-avalonia.csproj", "{BC1FC2A0-159A-4F17-B076-B39775FB6AAC}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Launcher.Client.Avalonia", "Launcher.Client.Avalonia\Launcher.Client.Avalonia.csproj", "{BC1FC2A0-159A-4F17-B076-B39775FB6AAC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Launcher.Client", "Launcher.Client\Launcher.Client.csproj", "{87427137-840D-4D09-A101-9481110682BD}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -33,6 +35,10 @@ Global
{BC1FC2A0-159A-4F17-B076-B39775FB6AAC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BC1FC2A0-159A-4F17-B076-B39775FB6AAC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BC1FC2A0-159A-4F17-B076-B39775FB6AAC}.Release|Any CPU.Build.0 = Release|Any CPU
+ {87427137-840D-4D09-A101-9481110682BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {87427137-840D-4D09-A101-9481110682BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {87427137-840D-4D09-A101-9481110682BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {87427137-840D-4D09-A101-9481110682BD}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/launcher-client-avalonia/LauncherConfig.cs b/launcher-client-avalonia/LauncherConfig.cs
deleted file mode 100644
index 27564a9..0000000
--- a/launcher-client-avalonia/LauncherConfig.cs
+++ /dev/null
@@ -1,65 +0,0 @@
-namespace Launcher.Client.Avalonia;
-
-public class LauncherConfig
-{
-
- public record struct Server(IPEndPoint EndPoint, string Domain)
- {
- public Server(string domain, int port) : this
- (new IPEndPoint(Dns.GetHostAddresses(domain)[0], port), domain)
- { }
- public Server(IPAddress address, int port) : this
- (new IPEndPoint(address, port), "")
- { }
- }
-
- public const int Version=1;
- public Server[] ServerAddresses;
-
- const string configFile = "launcher.dtsod";
- public LauncherConfig()
- {
- // читает дефолтный конфиг из ресурсов
- DtsodV23 updatedConfig;
- DtsodV23 updatedDefault = new(EmbeddedResources.ReadText("Launcher.Client.Avalonia.Resources.launcher.dtsod"));
- // проверка и обновление конфига
- if (File.Exists(configFile))
- {
- DtsodV23 oldConfig = new(File.ReadAllText(configFile));
- updatedConfig = DtsodConverter.UpdateByDefault(oldConfig, updatedDefault);
- }
- else updatedConfig = updatedDefault;
-
- // парсит парсит полученный дтсод в LauncherConfig
- List