Added launcher !

This commit is contained in:
Marvelco
2024-02-25 13:13:41 +02:00
committed by GitHub
parent fc192d27fc
commit 650799ed56
51 changed files with 4861 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.5.33530.505
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Fortnite launcher", "Fortnite launcher\Fortnite launcher.csproj", "{355A0DBF-B506-4AFC-9C0E-2884A2169337}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{355A0DBF-B506-4AFC-9C0E-2884A2169337}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{355A0DBF-B506-4AFC-9C0E-2884A2169337}.Debug|Any CPU.Build.0 = Debug|Any CPU
{355A0DBF-B506-4AFC-9C0E-2884A2169337}.Release|Any CPU.ActiveCfg = Release|Any CPU
{355A0DBF-B506-4AFC-9C0E-2884A2169337}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {13A9430D-AC9A-43D0-92CB-D4263C2DCE35}
EndGlobalSection
EndGlobal
+16
View File
@@ -0,0 +1,16 @@
<Application x:Class="WpfApp6.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApp6"
xmlns:ui="http://schemas.modernwpf.com/2019"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ui:ThemeResources />
<ui:XamlControlsResources />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
+37
View File
@@ -0,0 +1,37 @@
using System.Windows;
using WpfApp6.Pages;
namespace WpfApp6
{
public partial class App : Application
{
private bool mainAppOpened = false;
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
// Set to dark so it doesn't break UI
ModernWpf.ThemeManager.Current.ApplicationTheme = ModernWpf.ApplicationTheme.Dark;
ShutdownMode = ShutdownMode.OnExplicitShutdown;
LoginWindow loginWindow = new LoginWindow();
loginWindow.ShowDialog();
if (loginWindow.LoginSuccessful && !mainAppOpened)
{
mainAppOpened = true;
ShutdownMode = ShutdownMode.OnMainWindowClose;
Home mainWindow = new Home();
}
else
{
Shutdown();
}
}
}
}
+10
View File
@@ -0,0 +1,10 @@
using System.Windows;
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]
Binary file not shown.

After

Width:  |  Height:  |  Size: 937 KiB

@@ -0,0 +1,59 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWPF>true</UseWPF>
<ApplicationIcon>logo1.ico</ApplicationIcon>
<AssemblyName>Fortnite launcher</AssemblyName>
</PropertyGroup>
<ItemGroup>
<None Remove="LoginBackground.png" />
<None Remove="logo1.ico" />
<None Remove="Pages\Banner.png" />
<None Remove="Pages\Discord.png" />
<None Remove="Pages\Fortnites11.png" />
<None Remove="Pages\fortnites12.png" />
<None Remove="Pages\Snow.png" />
<None Remove="Pages\snowflake.png.png" />
<None Remove="Pages\trashbin.png" />
</ItemGroup>
<ItemGroup>
<Content Include="logo1.ico" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="DiscordRichPresence" Version="1.2.1.24" />
<PackageReference Include="Extended.Wpf.Toolkit" Version="4.6.0" />
<PackageReference Include="HMBSbige.SingleInstance" Version="6.0.1" />
<PackageReference Include="ini-parser" Version="2.5.2" />
<PackageReference Include="MaterialDesign.Icons" Version="1.1.0" />
<PackageReference Include="ModernWpfUI" Version="0.9.6" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="SingleInstanceCore" Version="2.2.2" />
<PackageReference Include="SingleInstanceHelper" Version="1.0.3" />
<PackageReference Include="WindowsAPICodePack.Shell.CommonFileDialogs" Version="1.1.5" />
<PackageReference Include="WpfSnowfall" Version="1.1.0" />
</ItemGroup>
<ItemGroup>
<Resource Include="LoginBackground.png" />
<Resource Include="Pages\Banner.png" />
<Resource Include="Pages\Discord.png" />
<Resource Include="Pages\Fortnites11.png" />
<Resource Include="Pages\fortnites12.png" />
<Resource Include="Pages\trashbin.png">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</Resource>
</ItemGroup>
<ItemGroup>
<None Update="config.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
Binary file not shown.

After

Width:  |  Height:  |  Size: 363 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

+50
View File
@@ -0,0 +1,50 @@
<Window x:Class="WpfApp6.LoginWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ui="http://schemas.modernwpf.com/2019"
Title=""
Height="330"
Width="600"
ResizeMode="NoResize"
ui:WindowHelper.UseModernWindowStyle="True"
Background="#1f1f1f">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="19*"/>
<ColumnDefinition Width="281*"/>
</Grid.ColumnDefinitions>
<Image Margin="0,-41,0,0" Source="/LoginBackground.png" Stretch="Fill" Grid.ColumnSpan="2"/>
<Border BorderBrush="#FF111111" BorderThickness="2" CornerRadius="10" Opacity="0.9"
HorizontalAlignment="Left" VerticalAlignment="Center"
Padding="20" Background="#FF111111" Width="244" Height="226" Grid.Column="1" Margin="140,0,0,0">
<StackPanel Margin="0,-12,0,0">
<TextBlock TextWrapping="Wrap" Height="37" Width="64" FontWeight="Bold" FontSize="20" FontFamily="Arial Black" Text="Login"/>
<TextBlock x:Name="ErrorMessage" Foreground="Red" Height="17" />
<TextBox x:Name="Email" Height="32"
Background="Black" Foreground="White" Text="Email"
GotFocus="Email_GotFocus" LostFocus="Email_LostFocus" />
<TextBlock Text="Email" Foreground="Black" Visibility="Collapsed" Margin="5,0"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="7*"/>
</Grid.ColumnDefinitions>
<TextBox x:Name="PasswordPlaceholder" Text="Password"
Height="32" VerticalAlignment="Top"
Background="Black" Foreground="Gray" GotFocus="PasswordPlaceholder_GotFocus"
Visibility="Visible" Grid.ColumnSpan="2" Margin="0,5,0,0"/>
<PasswordBox x:Name="PasswordBoxControl" Height="32" Background="Black"
LostFocus="PasswordBox_LostFocus"
PasswordChanged="PasswordBox_PasswordChanged"
Visibility="Collapsed" Grid.ColumnSpan="2" Margin="0,5,0,5"/>
</Grid>
</StackPanel>
</Border>
<Button Content="Login" Click="Login_Click" Height="30" Background="#357EC7" Foreground="White" FontWeight="Bold" Margin="208,220,0,0" VerticalAlignment="Top" Width="108" Grid.Column="1"/>
<CheckBox x:Name="RememberMeCheckBox" Content="Remember Me" Margin="161,183,0,0" VerticalAlignment="Top" Grid.Column="1"/>
</Grid>
</Window>
+231
View File
@@ -0,0 +1,231 @@
using DiscordRPC;
using DiscordRPC.Logging;
using System;
using System.IO;
using System.Net;
using System.Windows;
using Newtonsoft.Json;
using System.Windows.Controls;
using System.Windows.Media;
using System.CodeDom;
using Newtonsoft.Json.Linq;
namespace WpfApp6
{
public partial class LoginWindow : Window
{
private bool rememberMe = false;
public bool LoginSuccessful { get; private set; }
private DiscordRpcClient client;
public LoginWindow()
{
InitializeComponent();
LoadRememberMeState();
AutoFillIfRemembered();
// not working
client = new DiscordRpcClient("1206183757434847283");
client.Initialize();
}
private void Email_GotFocus(object sender, RoutedEventArgs e)
{
if (Email.Text == "Email")
{
Email.Text = "";
Email.Foreground = Brushes.Gray;
}
}
private void Email_LostFocus(object sender, RoutedEventArgs e)
{
if (string.IsNullOrWhiteSpace(Email.Text))
{
Email.Text = "Email";
Email.Foreground = Brushes.Gray;
}
}
private void PasswordBox_GotFocus(object sender, RoutedEventArgs e)
{
PasswordPlaceholder.Visibility = Visibility.Collapsed;
PasswordBoxControl.Visibility = Visibility.Visible;
PasswordBoxControl.Focus();
}
private void PasswordBox_LostFocus(object sender, RoutedEventArgs e)
{
if (string.IsNullOrEmpty(PasswordBoxControl.Password) && !PasswordBoxControl.IsFocused)
{
PasswordPlaceholder.Visibility = Visibility.Visible;
PasswordBoxControl.Visibility = Visibility.Collapsed;
}
}
private void PasswordBox_PasswordChanged(object sender, RoutedEventArgs e)
{
if (!string.IsNullOrEmpty(PasswordBoxControl.Password))
{
PasswordPlaceholder.Visibility = Visibility.Collapsed;
}
}
private void PasswordPlaceholder_GotFocus(object sender, RoutedEventArgs e)
{
PasswordPlaceholder.Visibility = Visibility.Collapsed;
PasswordBoxControl.Visibility = Visibility.Visible;
PasswordBoxControl.Focus();
}
private void SaveCredentials(string email, string password, bool rememberMe)
{
try
{
dynamic credentials = new
{
Email = email,
Password = password,
RememberMe = rememberMe
};
string json = JsonConvert.SerializeObject(credentials);
string directoryPath = AppDomain.CurrentDomain.BaseDirectory;
string filePath = Path.Combine(directoryPath, "credentials.json");
File.WriteAllText(filePath, json);
}
catch (Exception ex)
{
MessageBox.Show($"Error saving credentials: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void LoadRememberMeState()
{
try
{
if (File.Exists("credentials.json"))
{
string json = File.ReadAllText("credentials.json");
dynamic credentials = JsonConvert.DeserializeObject(json);
bool? rememberMe = credentials.RememberMe;
if (rememberMe != null)
{
RememberMeCheckBox.IsChecked = rememberMe;
if (rememberMe == true)
{
Email.Text = credentials.Email;
PasswordBoxControl.Password = credentials.Password;
PasswordPlaceholder.Visibility = Visibility.Collapsed;
PasswordBoxControl.Visibility = Visibility.Visible;
}
}
}
}
catch (Exception ex)
{
MessageBox.Show($"Error loading Remember Me state: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void AutoFillIfRemembered()
{
if (RememberMeCheckBox.IsChecked == true)
{
LoadCredentials();
}
}
private void LoadCredentials()
{
try
{
if (File.Exists("credentials.json"))
{
string json = File.ReadAllText("credentials.json");
dynamic credentials = JsonConvert.DeserializeObject(json);
string email = credentials.Email;
string password = credentials.Password;
Email.Text = email;
PasswordBoxControl.Password = password;
}
}
catch (Exception ex)
{
MessageBox.Show($"Error loading credentials: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void RememberMeCheckBox_Checked(object sender, RoutedEventArgs e)
{
rememberMe = true;
SaveCredentials(Email.Text, PasswordBoxControl.Password, true);
}
private void RememberMeCheckBox_Unchecked(object sender, RoutedEventArgs e)
{
rememberMe = false;
SaveCredentials("", "", false);
}
private void Login_Click(object sender, RoutedEventArgs e)
{
string email = Email.Text;
string password = PasswordBoxControl.Password;
bool rememberMe = RememberMeCheckBox.IsChecked ?? false;
if (string.IsNullOrEmpty(email) || string.IsNullOrEmpty(password))
{
ErrorMessage.Text = "Email and Password are required.";
return;
}
SaveCredentials(email, password, rememberMe);
UpdatePresence(email);
LoginSuccessful = true;
Close();
}
private void UpdatePresence(string Page)
{
var presence = new RichPresence()
{
Details = $"Login",
State = "https://github.com/MarvelcoDev",
Assets = new Assets()
{
LargeImageKey = "48595",
LargeImageText = "Fortnite OG launcher",
SmallImageText = "48595"
}
};
}
}
}
+49
View File
@@ -0,0 +1,49 @@
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfApp6"
xmlns:ui="http://schemas.modernwpf.com/2019"
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
x:Class="WpfApp6.MainWindow"
mc:Ignorable="d"
Title="Fortnite launcher"
Height="650"
Width="900"
ui:WindowHelper.UseModernWindowStyle="True"
ResizeMode="NoResize"
Background="#1f1f1f">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="101*"/>
<RowDefinition Height="533*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="0*"/>
<ColumnDefinition Width="0*"/>
<ColumnDefinition Width="0*"/>
<ColumnDefinition Width="0*"/>
<ColumnDefinition Width="0*"/>
<ColumnDefinition Width="143*"/>
<ColumnDefinition Width="0*"/>
</Grid.ColumnDefinitions>
<Grid.Background>
<SolidColorBrush Color="#1f1f1f"/>
</Grid.Background>
<ui:NavigationView x:Name="NavView" Loaded="NavView_Loaded" SelectionChanged="NavView_SelectionChanged" PaneDisplayMode="Left" IsBackButtonVisible="Collapsed" IsPaneToggleButtonVisible="False" IsPaneOpen="false" HorizontalAlignment="Left" Width="800" Grid.ColumnSpan="7" Grid.RowSpan="2">
<ui:NavigationView.MenuItems>
<ui:NavigationViewItem x:Name="HomeItem" Icon="Play" Content="Home" Tag="Home"/>
<ui:NavigationViewItem Icon="download" Content="Download" Tag="download"/>
</ui:NavigationView.MenuItems>
</ui:NavigationView>
<ui:Frame x:Name="ContentFrame" Margin="0,10,0,10" Grid.ColumnSpan="4" Background="#1f1f1f" Grid.Column="3" Grid.RowSpan="2">
<ui:Frame.ContentTransitions >
<ui:TransitionCollection>
<ui:NavigationThemeTransition />
</ui:TransitionCollection>
</ui:Frame.ContentTransitions>
</ui:Frame>
</Grid>
</Window>
+91
View File
@@ -0,0 +1,91 @@
using DiscordRPC;
using System;
using System.Windows;
using System.Windows.Navigation;
using ModernWpf.Controls;
using System.Net;
using WpfApp6.Pages;
namespace WpfApp6
{
public partial class MainWindow : Window
{
Home home = new Home();
Settings settings = new Settings();
download downloud = new download();
DiscordRpcClient client;
public MainWindow()
{
InitializeComponent();
// Works
client = new DiscordRpcClient("1206183757434847283");
client.Initialize();
/* api just change google.com to your api
WebClient omg = new WebClient();
try
{
string fds = omg.DownloadString("http://google.com/");
}
catch (Exception ex)
{
MessageBox.Show("Failed Connecting To Servers");
Application.Current.Shutdown();
} */
}
private void NavView_Loaded(object sender, RoutedEventArgs e)
{
HomeItem.IsSelected = true;
}
private void NavView_SelectionChanged(ModernWpf.Controls.NavigationView sender, ModernWpf.Controls.NavigationViewSelectionChangedEventArgs args)
{
if (args.IsSettingsSelected)
{
ContentFrame.Navigate(settings);
}
else
{
NavigationViewItem item = args.SelectedItem as NavigationViewItem;
if (item.Tag.ToString() == "Home")
{
ContentFrame.Navigate(home);
UpdatePresence("Home");
}
else if (item.Tag.ToString() == "download")
{
ContentFrame.Navigate(downloud);
UpdatePresence("Download");
}
}
}
private void ContentFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
{
throw new Exception("Failed to load Page.");
}
private void UpdatePresence(string Page)
{
var presence = new RichPresence()
{
Details = $"OG launcher Made by Marvelco",
State = "https://github.com/MarvelcoDev",
Assets = new Assets()
{
LargeImageKey = "48595",
LargeImageText = "Fortnite OG launcher",
SmallImageText = "48595"
}
};
client.SetPresence(presence);
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 KiB

+50
View File
@@ -0,0 +1,50 @@
<UserControl x:Class="WpfApp6.Pages.Home"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:local="clr-namespace:WpfApp6.Pages"
mc:Ignorable="d" Width="890" Height="650">
<Grid Background="#1f1f1f">
<Image HorizontalAlignment="Left" Height="300" VerticalAlignment="Top" Width="818" Source="/Pages/banner.png" RenderTransformOrigin="1.268,0.599" Margin="44,0,0,0"/>
<Grid>
<TextBlock x:Name="digitalClock" HorizontalAlignment="Center" VerticalAlignment="Top" FontSize="50" Margin="45,136,0,0" Width="242" Height="61" FontFamily="Impact"/>
<TextBlock x:Name="hourText" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Left" Margin="10" FontFamily="Impact"/>
<TextBlock x:Name="minuteText" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Center" FontFamily="Impact"/>
<TextBlock x:Name="secondText" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0,0,10,0" FontFamily="Impact"/>
<Border BorderThickness="0.5" HorizontalAlignment="Left" Height="2" Margin="15,0,0,0" VerticalAlignment="Center" Width="825" Background="White" Opacity="0.4"/>
<Rectangle Fill="#FF111111" Margin="30,346,720,118" RadiusX="10" RadiusY="10"/>
<Button x:Name="Browse" Content="Find Build" Margin="43,492,0,0" VerticalAlignment="Top" Width="111" Height="31" Click="FindBuild"/>
<Image HorizontalAlignment="Left" Height="108" VerticalAlignment="Top" Width="123" Source="/Pages/fortnites12.png" RenderTransformOrigin="1.268,0.599" Margin="46,360,0,0"/>
<ItemsControl x:Name="versionList" Grid.Column="0" Visibility="Visible" ItemsSource="{Binding VersionItems}" Margin="175,326,10,98">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border BorderThickness="0.5" BorderBrush="#FF111111" Background="#FF111111" Margin="5" CornerRadius="10" Width="140" Height="186">
<Grid>
<Image Source="{Binding FullImagePath}" Width="108" Height="109" Margin="16,13,10,9" HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="UniformToFill">
<Image.Clip>
<RectangleGeometry RadiusX="10" RadiusY="10" Rect="0,0,108,109"/>
</Image.Clip>
</Image>
<Button Content="Launch" Margin="-40,10,0,8" VerticalAlignment="Bottom" HorizontalAlignment="Center" Width="80" Height="32" Click="LaunchButton" Tag="{Binding}"/>
<Button Margin="100,10,2,8" VerticalAlignment="Bottom" HorizontalAlignment="Left" Width="35" Height="32" Click="DeleteVersion">
<Image Source="trashbin.png" Width="20" Height="18" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Button>
</Grid>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
<TextBlock TextWrapping="Wrap" Height="26" Width="72" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="20" Margin="16,300,0,0" FontFamily="Arial Black" Text="Builds"/>
</Grid>
</Grid>
</UserControl>
+396
View File
@@ -0,0 +1,396 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Reflection;
using System.Security.Policy;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using WpfApp6.Services;
using WpfApp6.Services.Launch;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Collections.ObjectModel;
using System.Windows.Forms;
using System.Windows.Threading;
namespace WpfApp6.Pages
{
public partial class Home : System.Windows.Controls.UserControl
{
private DispatcherTimer clockTimer;
public ObservableCollection<VersionItem> VersionItems { get; set; }
private int versionNumber = 1;
public Home()
{
InitializeComponent();
InitializeClockTimer();
VersionItems = new ObservableCollection<VersionItem>();
versionList.ItemsSource = VersionItems;
LoadConfigFile();
}
private void InitializeClockTimer()
{
clockTimer = new DispatcherTimer();
clockTimer.Interval = TimeSpan.FromSeconds(1);
clockTimer.Tick += ClockTimer_Tick;
clockTimer.Start();
UpdateDigitalClock();
}
private void ClockTimer_Tick(object sender, EventArgs e)
{
UpdateDigitalClock();
}
private void UpdateDigitalClock()
{
digitalClock.Text = DateTime.Now.ToString("HH:mm:ss");
}
private void LoadConfigFile()
{
try
{
string configFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config.json");
if (File.Exists(configFilePath))
{
string jsonText = File.ReadAllText(configFilePath);
JObject json = JObject.Parse(jsonText);
JArray folderPathsArray = (JArray)json["FolderPaths"];
VersionItems.Clear();
versionNumber = 1;
foreach (var folderPathToken in folderPathsArray)
{
string folderPath = folderPathToken.ToString();
DisplayBuilds(folderPath, versionNumber);
versionNumber++;
}
}
else
{
System.Windows.MessageBox.Show("Configuration file does not exist.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
catch (Exception ex)
{
System.Windows.MessageBox.Show($"Error loading configuration file: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void DisplayBuilds(string selectedFolderPath, int versionNumber)
{
try
{
string[] buildFiles = Directory.GetFiles(selectedFolderPath, "Splash.bmp", SearchOption.AllDirectories);
foreach (string buildFile in buildFiles)
{
BitmapImage bitmap = new BitmapImage();
bitmap.BeginInit();
bitmap.UriSource = new Uri(buildFile, UriKind.Absolute);
bitmap.CacheOption = BitmapCacheOption.OnLoad;
bitmap.EndInit();
VersionItem versionItem = new VersionItem
{
FullImagePath = buildFile,
ImageSource = bitmap,
CornerRadius = new CornerRadius(10),
VersionNumber = versionNumber
};
VersionItems.Add(versionItem);
}
versionList.Visibility = Visibility.Visible;
}
catch (Exception ex)
{
System.Windows.MessageBox.Show($"Error loading builds: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
versionList.Visibility = Visibility.Collapsed;
}
}
private void LaunchButton(object sender, RoutedEventArgs e)
{
try
{
if (sender is System.Windows.Controls.Button launchButton && launchButton.Tag is VersionItem versionItem)
{
string configFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config.json");
if (File.Exists(configFilePath))
{
string jsonText = File.ReadAllText(configFilePath);
JObject json = JObject.Parse(jsonText);
JArray folderPathsArray = (JArray)json["FolderPaths"];
// Retrieve the index of the version item
int index = VersionItems.IndexOf(versionItem);
if (index >= 0 && index < folderPathsArray.Count)
{
string selectedFolderPath = folderPathsArray[index].ToString();
string executablePath = Path.Combine(selectedFolderPath, "FortniteGame\\Binaries\\Win64\\FortniteClient-Win64-Shipping.exe");
if (File.Exists(executablePath))
{
string credentialsFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "credentials.json");
if (File.Exists(credentialsFilePath))
{
string credentialsText = File.ReadAllText(credentialsFilePath);
JObject credentialsJson = JObject.Parse(credentialsText);
string email = credentialsJson["Email"].ToString();
string password = credentialsJson["Password"].ToString();
if (email == "NONE" || password == "NONE")
{
System.Windows.MessageBox.Show("Error code 1", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
WebClient OMG = new WebClient();
string dllPath = Path.Combine(selectedFolderPath, "Engine\\Binaries\\ThirdParty\\NVIDIA\\NVaftermath\\Win64", "GFSDK_Aftermath_Lib.x64.dll");
OMG.DownloadFile("Your Dll", dllPath);
PSBasics.Start(selectedFolderPath, "-epicapp=Fortnite -epicenv=Prod -epiclocale=en-us -epicportal -noeac -fromfl=be -fltoken=h1cdhchd10150221h130eB56 -skippatchcheck", email, password);
FakeAC.Start(selectedFolderPath, "FortniteClient-Win64-Shipping_BE.exe", $"-epicapp=Fortnite -epicenv=Prod -epiclocale=en-us -epicportal -noeac -fromfl=be -fltoken=h1cdhchd10150221h130eB56 -skippatchcheck", "r");
FakeAC.Start(selectedFolderPath, "FortniteLauncher.exe", $"-epicapp=Fortnite -epicenv=Prod -epiclocale=en-us -epicportal -noeac -fromfl=be -fltoken=h1cdhchd10150221h130eB56 -skippatchcheck", "dsf");
PSBasics._FortniteProcess.WaitForExit();
try
{
FakeAC._FNLauncherProcess.Close();
FakeAC._FNAntiCheatProcess.Close();
}
catch (Exception ex)
{
System.Windows.MessageBox.Show("There was an error closing: " + ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
}
else
{
System.Windows.MessageBox.Show("Fortnite executable not found.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
else
{
System.Windows.MessageBox.Show("Invalid version item index.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
else
{
System.Windows.MessageBox.Show("Configuration file does not exist.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
}
catch (Exception ex)
{
System.Windows.MessageBox.Show($"Error launching Fortnite: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void FindBuild(object sender, RoutedEventArgs e)
{
try
{
string configFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config.json");
if (File.Exists(configFilePath))
{
string jsonText = File.ReadAllText(configFilePath);
JObject json = JObject.Parse(jsonText);
JArray folderPathsArray = (JArray)json["FolderPaths"];
if (folderPathsArray.Count >= 4)
{
System.Windows.MessageBox.Show("You cannot add more than 4 versions please delete one.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
}
var dialog = new FolderBrowserDialog();
DialogResult result = dialog.ShowDialog();
if (result == DialogResult.OK)
{
string selectedFolderPath = dialog.SelectedPath;
SaveSelectedFolderPath(selectedFolderPath);
LoadConfigFile();
}
}
catch (Exception ex) {
System.Windows.MessageBox.Show($"Error finding build: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void SaveSelectedFolderPath(string selectedFolderPath)
{
try
{
string configFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config.json");
JObject json = new JObject();
if (File.Exists(configFilePath))
{
string jsonText = File.ReadAllText(configFilePath);
json = JObject.Parse(jsonText);
}
JArray folderPathsArray = json.ContainsKey("FolderPaths") ? (JArray)json["FolderPaths"] : new JArray();
folderPathsArray.Add(selectedFolderPath);
json["FolderPaths"] = folderPathsArray;
string output = json.ToString();
File.WriteAllText(configFilePath, output);
Console.WriteLine($"Selected Folder Path saved to config file: {configFilePath}");
}
catch (Exception ex)
{
System.Windows.MessageBox.Show($"Error saving selected folder path: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void DeleteVersion(object sender, RoutedEventArgs e)
{
if (sender is System.Windows.Controls.Button button && button.DataContext is VersionItem version)
{
VersionItems.Remove(version);
SaveConfigFile();
}
}
private void SaveConfigFile()
{
try
{
string configFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config.json");
JObject json;
JArray folderPathsArray;
if (File.Exists(configFilePath))
{
string existingJson = File.ReadAllText(configFilePath);
json = JObject.Parse(existingJson);
if (json["FolderPaths"] == null)
{
folderPathsArray = new JArray();
json["FolderPaths"] = folderPathsArray;
}
else
{
folderPathsArray = (JArray)json["FolderPaths"];
}
}
else
{
json = new JObject();
folderPathsArray = new JArray();
json["FolderPaths"] = folderPathsArray;
}
if (folderPathsArray.Count > 0)
{
folderPathsArray.RemoveAt(0);
}
string output = json.ToString();
File.WriteAllText(configFilePath, output);
Console.WriteLine($"Configuration file updated: {configFilePath}");
}
catch (Exception ex)
{
System.Windows.MessageBox.Show($"Error saving configuration file: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
//class
public class VersionItem
{
public string FullImagePath { get; set; }
public BitmapImage ImageSource { get; set; }
public CornerRadius CornerRadius { get; set; } = new CornerRadius(10);
public int VersionNumber { get; set; }
}
}
}
+42
View File
@@ -0,0 +1,42 @@
<UserControl x:Class="WpfApp6.Pages.Settings"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:WpfApp6.Pages"
mc:Ignorable="d" d:DesignWidth="890" Height="650" Visibility="Visible">
<Grid Background="#1f1f1f">
<Rectangle Fill="#FF111111" Margin="238,393,322,205" RadiusX="10" RadiusY="10"/>
<Image HorizontalAlignment="Left" Height="300" VerticalAlignment="Top" Width="818" Source="/Pages/Banner.png" RenderTransformOrigin="1.268,0.599" Margin="44,0,0,0"/>
<PasswordBox x:Name="PasswordBox" Margin="345,340,345,278" Padding="5"/>
<TextBlock Text="Password:" Foreground="White" Margin="256,346,481,288" FontFamily="Arial Black" FontSize="15"/>
<TextBlock x:Name="clock"
Height="61"
Margin="270,139,344,0"
VerticalAlignment="Top"
Padding="70,0,0,0"
FontFamily="Impact"
TextAlignment="Center"
Foreground="White"
FontSize="50"><InlineUIContainer/></TextBlock>
<TextBlock Text="Email:" Foreground="White" Margin="16,346,786,278" FontFamily="Arial Black" FontSize="15"/>
<Button Content="Save Settings" Click="SaveSettings_Click" Margin="659,339,0,0" VerticalAlignment="Top"/>
<TextBox x:Name="EmailTextBox" Margin="78,340,612,278" Padding="5" Text="Email" Foreground="Gray" GotFocus="EmailTextBox_GotFocus" LostFocus="EmailTextBox_LostFocus"/>
<Border BorderThickness="0.5" HorizontalAlignment="Left" Height="2" Margin="15,0,0,0" VerticalAlignment="Center" Width="825" Background="White" Opacity="0.4"/>
<CheckBox x:Name="RememberMeCheckBox" Content="Remember Me" Foreground="White" Margin="525,340,0,0" VerticalAlignment="Top"/>
<TextBlock TextWrapping="Wrap" Height="26" Width="123" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="20" Margin="16,300,0,0" FontFamily="Arial Black" Text="Settings"/>
<TextBlock TextWrapping="Wrap" Height="26" Width="315" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="20" Margin="530,574,0,0" FontFamily="Arial Black" Text="Launcher made by Marvelco" RenderTransformOrigin="0.505,0.538"/>
<Grid Margin="238,403,322,205" MouseLeftButtonDown="DiscordLinkCard_MouseLeftButtonDown" MouseEnter="DiscordLinkCard_MouseEnter" MouseLeave="DiscordLinkCard_MouseLeave">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="/Pages/Discord.png" Stretch="Fill" Margin="-20,-38,200,-29" RenderTransformOrigin="0.865,0.452" Grid.ColumnSpan="2"/>
<StackPanel Grid.Column="1" Margin="17,-6,0,0"/>
<TextBlock Text=" Click here to join our Discord!" FontSize="12" TextWrapping="Wrap" FontFamily="Arial Black" Grid.ColumnSpan="2" Margin="17,21,3,1"/>
<TextBlock Text="Join our Discord!" FontSize="16" FontWeight="Bold" FontFamily="Arial Black" Grid.ColumnSpan="2" Margin="92,0,43,20"/>
</Grid>
</Grid>
</UserControl>
+122
View File
@@ -0,0 +1,122 @@
using System;
using System.IO;
using System.Windows;
using Newtonsoft.Json;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Threading;
using System.Diagnostics;
using System.Windows.Input;
namespace WpfApp6.Pages
{
public partial class Settings : UserControl
{
private DispatcherTimer timer;
public Settings()
{
InitializeComponent();
LoadSettings();
timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromSeconds(1);
timer.Tick += Timer_Tick;
timer.Start();
this.Visibility = Visibility.Visible;
}
private void Timer_Tick(object sender, EventArgs e)
{
clock.Text = DateTime.Now.ToString("HH:mm:ss");
}
private void DiscordLinkCard_MouseLeftButtonDown(object sender, RoutedEventArgs e)
{
Process process = new Process();
process.StartInfo.UseShellExecute = true;
process.StartInfo.FileName = "";
process.Start();
}
private void DiscordLinkCard_MouseEnter(object sender, MouseEventArgs e)
{
this.Cursor = Cursors.Hand;
}
private void DiscordLinkCard_MouseLeave(object sender, MouseEventArgs e)
{
this.Cursor = Cursors.Arrow;
}
private void LoadSettings()
{
try
{
if (File.Exists("credentials.json"))
{
string json = File.ReadAllText("credentials.json");
dynamic credentials = JsonConvert.DeserializeObject(json);
string email = credentials.Email;
string password = credentials.Password;
bool rememberMe = credentials.RememberMe;
EmailTextBox.Text = email;
PasswordBox.Password = password;
RememberMeCheckBox.IsChecked = rememberMe;
}
}
catch (Exception ex)
{
MessageBox.Show($"Error loading settings: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void SaveSettings_Click(object sender, RoutedEventArgs e)
{
try
{
string email = EmailTextBox.Text;
string password = PasswordBox.Password;
bool rememberMe = RememberMeCheckBox.IsChecked ?? false;
dynamic credentials = new
{
Email = email,
Password = password,
RememberMe = rememberMe
};
string json = JsonConvert.SerializeObject(credentials);
File.WriteAllText("credentials.json", json);
MessageBox.Show("Settings saved successfully.", "Success", MessageBoxButton.OK, MessageBoxImage.Information);
}
catch (Exception ex)
{
MessageBox.Show($"Error saving settings: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
private void EmailTextBox_GotFocus(object sender, RoutedEventArgs e)
{
if (EmailTextBox.Text == "Email")
{
EmailTextBox.Text = "";
EmailTextBox.Foreground = Brushes.White;
}
}
private void EmailTextBox_LostFocus(object sender, RoutedEventArgs e)
{
if (string.IsNullOrWhiteSpace(EmailTextBox.Text))
{
EmailTextBox.Text = "Email";
EmailTextBox.Foreground = Brushes.Gray;
}
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 937 KiB

+49
View File
@@ -0,0 +1,49 @@
<UserControl x:Class="WpfApp6.Pages.download"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:N="clr-namespace:WpfApp6.Pages"
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
xmlns:local="clr-namespace:WpfApp6.Pages"
mc:Ignorable="d" d:DesignWidth="890" Height="650">
<UserControl.Resources>
<ResourceDictionary>
<Style x:Key="CaptionTextBlockStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="14"/>
<Setter Property="FontWeight" Value="Bold"/>
</Style>
</ResourceDictionary>
</UserControl.Resources>
<Grid>
<Rectangle Fill="#FF111111" Margin="40,346,60,242" RadiusX="10" RadiusY="10"/>
<Image HorizontalAlignment="Left" Height="300" VerticalAlignment="Top" Width="818" Source="/Pages/Banner.png" RenderTransformOrigin="1.268,0.599" Margin="44,0,0,0"/>
<TextBlock TextWrapping="Wrap" Height="20" Width="154" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="14" Margin="120,354,0,0" FontFamily="Arial Black" Text="Fortnite Build: ??"/>
<Image HorizontalAlignment="Left" Height="50" VerticalAlignment="Top" Width="73" Source="/Pages/Fortnites11.png" RenderTransformOrigin="1.268,0.599" Margin="53,352,0,0"/>
<TextBlock x:Name="clock"
Height="61"
Margin="-70,136,0,0"
VerticalAlignment="Top"
Padding="70,0,0,0"
FontFamily="Impact"
TextAlignment="Center"
Foreground="White"
FontSize="50">
</TextBlock>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Button x:Name="DownloadBuild" Content="Start Download" Click="DownloadBuild_Click" Margin="658,361,0,0" VerticalAlignment="Top"/>
<Border BorderThickness="0.5" HorizontalAlignment="Left" Height="2" Margin="15,0,0,0" VerticalAlignment="Center" Width="825" Background="White" Opacity="0.4"/>
<TextBlock TextWrapping="Wrap" Height="26" Width="123" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="20" Margin="16,300,0,0" FontFamily="Arial Black" Text="Downloads"/>
</Grid>
<TextBlock TextWrapping="Wrap" Height="20" Width="232" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="14" Margin="120,379,0,0" FontFamily="Arial Black" Text="Released: ??"/>
<TextBlock TextWrapping="Wrap" Height="20" Width="48" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="14" Margin="445,369,0,0" FontFamily="Arial Black" Text="?? GB" RenderTransformOrigin="0.479,0.45"/>
</Grid>
</UserControl>
+43
View File
@@ -0,0 +1,43 @@
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Threading;
namespace WpfApp6.Pages
{
public partial class download : UserControl
{
private DispatcherTimer timer;
private void DownloadBuild_Click(object sender, RoutedEventArgs e)
{
Process process = new Process();
process.StartInfo.UseShellExecute = true;
process.StartInfo.FileName = "Your url for downloud";
process.Start();
}
public download()
{
InitializeComponent();
// Initialize and start the timer
timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromSeconds(1); // Update every second
timer.Tick += Timer_Tick;
timer.Start();
}
private void Timer_Tick(object sender, EventArgs e)
{
// Update the clock content here
clock.Text = DateTime.Now.ToString("HH:mm:ss");
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 548 B

@@ -0,0 +1 @@
Telerik.Windows.Controls.RadNotifyIcon, Telerik.Windows.Controls.Navigation, Version=2022.3.1109.310, Culture=neutral, PublicKeyToken=5803cfa389c90ce7
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project>
<PropertyGroup>
<Configuration>Release</Configuration>
<Platform>Any CPU</Platform>
<PublishDir>bin\Release\net6.0-windows\publish\win-x64\</PublishDir>
<PublishProtocol>FileSystem</PublishProtocol>
<_TargetId>Folder</_TargetId>
<TargetFramework>net6.0-windows</TargetFramework>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<SelfContained>true</SelfContained>
<PublishSingleFile>true</PublishSingleFile>
<PublishReadyToRun>false</PublishReadyToRun>
</PropertyGroup>
</Project>
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project>
<PropertyGroup>
<History>True|2023-07-04T20:49:13.1871919Z;True|2023-07-04T18:07:33.0033043+01:00;True|2023-07-03T19:28:33.2007094+01:00;True|2023-07-03T19:26:52.9596367+01:00;True|2023-07-03T14:33:19.6511979+01:00;True|2023-07-03T13:18:02.6330185+01:00;True|2023-07-03T12:59:35.6618992+01:00;True|2023-07-02T14:31:30.7023566+01:00;False|2023-07-02T14:28:00.9894053+01:00;True|2023-07-02T14:26:09.9688668+01:00;</History>
<LastFailureDetails />
</PropertyGroup>
</Project>
@@ -0,0 +1,55 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
namespace WpfApp6.Services.Launch
{
// Goofy Code Need To Improve On V2
public class FakeAC
{
public static Process _FNLauncherProcess;
public static Process _FNAntiCheatProcess;
public static void Start(string Path69, string FileName, string args = "", string t = "r")
{
try {
if (File.Exists(Path.Combine(Path69, "FortniteGame\\Binaries\\Win64\\", FileName)))
{
ProcessStartInfo ProcessIG = new ProcessStartInfo()
{
FileName = Path.Combine(Path69, "FortniteGame\\Binaries\\Win64\\", FileName),
Arguments = args,
CreateNoWindow = true,
};
if(t == "r")
{
_FNAntiCheatProcess = Process.Start(ProcessIG);
if (_FNAntiCheatProcess.Id == 0)
{
MessageBox.Show("FAILED STARTING!?!?!");
}
_FNAntiCheatProcess.Freeze();
}else
{
_FNLauncherProcess = Process.Start(ProcessIG);
if (_FNLauncherProcess.Id == 0)
{
MessageBox.Show("FAILED STARTING!?!?!");
}
_FNLauncherProcess.Freeze();
}
}
}catch (Exception ex)
{
MessageBox.Show("THERE BEEN A ERROR");
}
}
}
}
@@ -0,0 +1,31 @@
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
namespace WpfApp6.Services.Launch
{
public static class Freeze69
{
[DllImport("kernel32.dll")]
private static extern IntPtr OpenThread(int dwDesiredAccess, bool bInheritHandle, uint dwThreadId);
[DllImport("kernel32.dll")]
private static extern uint SuspendThread(IntPtr hThread);
public static void Freeze(this Process process)
{
foreach (object obj in process.Threads)
{
ProcessThread thread = (ProcessThread)obj;
var Thread = OpenThread(2, false, (uint)thread.Id);
if (Thread == IntPtr.Zero)
{
break;
}
SuspendThread(Thread);
}
}
}
}
@@ -0,0 +1,52 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
namespace WpfApp6.Services.Launch
{
public static class PSBasics
{
public static Process _FortniteProcess;
public static void Start(string PATH, string args, string Email, string Password)
{
if(Email == null || Password == null)
{
MessageBox.Show("Sorry Make Sure You Put Your Eon Logins");
return;
}
if (File.Exists(Path.Combine(PATH, "FortniteGame\\Binaries\\Win64\\", "FortniteClient-Win64-Shipping.exe")))
{
PSBasics._FortniteProcess = new Process()
{
StartInfo = new ProcessStartInfo()
{
Arguments = $"-AUTH_LOGIN={Email} -AUTH_PASSWORD={Password} -AUTH_TYPE=epic " + args,
FileName = Path.Combine(PATH, "FortniteGame\\Binaries\\Win64\\", "FortniteClient-Win64-Shipping.exe")
},
EnableRaisingEvents = true
};
PSBasics._FortniteProcess.Exited += new EventHandler(PSBasics.OnFortniteExit);
PSBasics._FortniteProcess.Start();
}
}
public static void OnFortniteExit(object sender, EventArgs e)
{
Process fortniteProcess = PSBasics._FortniteProcess;
if (fortniteProcess != null && fortniteProcess.HasExited)
{
PSBasics._FortniteProcess = (Process)null;
}
FakeAC._FNLauncherProcess?.Kill();
FakeAC._FNAntiCheatProcess?.Kill();
}
}
}
+4
View File
@@ -0,0 +1,4 @@
{
"FolderPaths": [
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

@@ -0,0 +1,91 @@
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "A72D5633CBCB07ACA1F164EFDD1E9D37C98511F1"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using ModernWpf;
using ModernWpf.Controls;
using ModernWpf.Controls.Primitives;
using ModernWpf.DesignTime;
using ModernWpf.Markup;
using ModernWpf.Media.Animation;
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms.Integration;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WpfApp6;
namespace WpfApp6 {
/// <summary>
/// App
/// </summary>
public partial class App : System.Windows.Application {
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
#line 6 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
#line default
#line hidden
System.Uri resourceLocater = new System.Uri("/Fortnite launcher;V1.0.0.0;component/app.xaml", System.UriKind.Relative);
#line 1 "..\..\..\App.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
/// <summary>
/// Application Entry Point.
/// </summary>
[System.STAThreadAttribute()]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public static void Main() {
WpfApp6.App app = new WpfApp6.App();
app.InitializeComponent();
app.Run();
}
}
}
@@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Fortnite launcher")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Fortnite launcher")]
[assembly: System.Reflection.AssemblyTitleAttribute("Fortnite launcher")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Generated by the MSBuild WriteCodeFragment class.
@@ -0,0 +1 @@
680f5bdbcbf54cdbc2505110cb6894bc382bdeb6c9b9e3db326cf55cfda169d3
@@ -0,0 +1,13 @@
is_global = true
build_property.TargetFramework = net6.0-windows
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Fortnite_launcher
build_property.ProjectDir = C:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
@@ -0,0 +1,13 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("logo1.ico")]
@@ -0,0 +1,20 @@
Fortnite launcher
1.0.0.0
winexe
C#
.cs
C:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\obj\Debug\net6.0-windows\
Fortnite_launcher
none
false
TRACE;DEBUG;NET;NET6_0;NETCOREAPP
C:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\App.xaml
51050247945
11052456543
122121742878
228-1443106567
LoginWindow.xaml;MainWindow.xaml;Pages\download.xaml;Pages\Home.xaml;Pages\Settings.xaml;
True
@@ -0,0 +1,7 @@
FC:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\App.xaml;;
FC:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\MainWindow.xaml;;
FC:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\Pages\download.xaml;;
FC:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\Pages\Home.xaml;;
FC:\Users\omarj\OneDrive\Desktop\LauncherV9\Fortnite launcher\Pages\Settings.xaml;;
@@ -0,0 +1,178 @@
#pragma checksum "..\..\..\LoginWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "72BB7893DFBCAD006A9C69F435E2F9786D2797E1"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using ModernWpf;
using ModernWpf.Controls;
using ModernWpf.Controls.Primitives;
using ModernWpf.DesignTime;
using ModernWpf.Markup;
using ModernWpf.Media.Animation;
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms.Integration;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
namespace WpfApp6 {
/// <summary>
/// LoginWindow
/// </summary>
public partial class LoginWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 22 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock ErrorMessage;
#line default
#line hidden
#line 23 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox Email;
#line default
#line hidden
#line 32 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox PasswordPlaceholder;
#line default
#line hidden
#line 37 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.PasswordBox PasswordBoxControl;
#line default
#line hidden
#line 47 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox RememberMeCheckBox;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Fortnite launcher;V1.0.0.0;component/loginwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\LoginWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.ErrorMessage = ((System.Windows.Controls.TextBlock)(target));
return;
case 2:
this.Email = ((System.Windows.Controls.TextBox)(target));
#line 25 "..\..\..\LoginWindow.xaml"
this.Email.GotFocus += new System.Windows.RoutedEventHandler(this.Email_GotFocus);
#line default
#line hidden
#line 25 "..\..\..\LoginWindow.xaml"
this.Email.LostFocus += new System.Windows.RoutedEventHandler(this.Email_LostFocus);
#line default
#line hidden
return;
case 3:
this.PasswordPlaceholder = ((System.Windows.Controls.TextBox)(target));
#line 34 "..\..\..\LoginWindow.xaml"
this.PasswordPlaceholder.GotFocus += new System.Windows.RoutedEventHandler(this.PasswordPlaceholder_GotFocus);
#line default
#line hidden
return;
case 4:
this.PasswordBoxControl = ((System.Windows.Controls.PasswordBox)(target));
#line 38 "..\..\..\LoginWindow.xaml"
this.PasswordBoxControl.LostFocus += new System.Windows.RoutedEventHandler(this.PasswordBox_LostFocus);
#line default
#line hidden
#line 39 "..\..\..\LoginWindow.xaml"
this.PasswordBoxControl.PasswordChanged += new System.Windows.RoutedEventHandler(this.PasswordBox_PasswordChanged);
#line default
#line hidden
return;
case 5:
#line 46 "..\..\..\LoginWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Login_Click);
#line default
#line hidden
return;
case 6:
this.RememberMeCheckBox = ((System.Windows.Controls.CheckBox)(target));
return;
}
this._contentLoaded = true;
}
}
}
@@ -0,0 +1,131 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "87DA075E600ED92F7AB3525B05AD1BC310B4732E"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using ModernWpf;
using ModernWpf.Controls;
using ModernWpf.Controls.Primitives;
using ModernWpf.DesignTime;
using ModernWpf.Markup;
using ModernWpf.Media.Animation;
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms.Integration;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WpfApp6;
namespace WpfApp6 {
/// <summary>
/// MainWindow
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 35 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal ModernWpf.Controls.NavigationView NavView;
#line default
#line hidden
#line 37 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal ModernWpf.Controls.NavigationViewItem HomeItem;
#line default
#line hidden
#line 41 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal ModernWpf.Controls.Frame ContentFrame;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Fortnite launcher;V1.0.0.0;component/mainwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\MainWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.NavView = ((ModernWpf.Controls.NavigationView)(target));
#line 35 "..\..\..\MainWindow.xaml"
this.NavView.Loaded += new System.Windows.RoutedEventHandler(this.NavView_Loaded);
#line default
#line hidden
#line 35 "..\..\..\MainWindow.xaml"
this.NavView.SelectionChanged += new ModernWpf.TypedEventHandler<ModernWpf.Controls.NavigationView, ModernWpf.Controls.NavigationViewSelectionChangedEventArgs>(this.NavView_SelectionChanged);
#line default
#line hidden
return;
case 2:
this.HomeItem = ((ModernWpf.Controls.NavigationViewItem)(target));
return;
case 3:
this.ContentFrame = ((ModernWpf.Controls.Frame)(target));
return;
}
this._contentLoaded = true;
}
}
}
@@ -0,0 +1,180 @@
#pragma checksum "..\..\..\..\Pages\Home.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "DDE61591A8FAC7BE99B080DAF9A091CE0F9E1843"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms.Integration;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WpfApp6.Pages;
namespace WpfApp6.Pages {
/// <summary>
/// Home
/// </summary>
public partial class Home : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector, System.Windows.Markup.IStyleConnector {
#line 13 "..\..\..\..\Pages\Home.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock digitalClock;
#line default
#line hidden
#line 14 "..\..\..\..\Pages\Home.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock hourText;
#line default
#line hidden
#line 15 "..\..\..\..\Pages\Home.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock minuteText;
#line default
#line hidden
#line 16 "..\..\..\..\Pages\Home.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock secondText;
#line default
#line hidden
#line 19 "..\..\..\..\Pages\Home.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button Browse;
#line default
#line hidden
#line 21 "..\..\..\..\Pages\Home.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.ItemsControl versionList;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Fortnite launcher;V1.0.0.0;component/pages/home.xaml", System.UriKind.Relative);
#line 1 "..\..\..\..\Pages\Home.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.digitalClock = ((System.Windows.Controls.TextBlock)(target));
return;
case 2:
this.hourText = ((System.Windows.Controls.TextBlock)(target));
return;
case 3:
this.minuteText = ((System.Windows.Controls.TextBlock)(target));
return;
case 4:
this.secondText = ((System.Windows.Controls.TextBlock)(target));
return;
case 5:
this.Browse = ((System.Windows.Controls.Button)(target));
#line 19 "..\..\..\..\Pages\Home.xaml"
this.Browse.Click += new System.Windows.RoutedEventHandler(this.FindBuild);
#line default
#line hidden
return;
case 6:
this.versionList = ((System.Windows.Controls.ItemsControl)(target));
return;
}
this._contentLoaded = true;
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 7:
#line 32 "..\..\..\..\Pages\Home.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.LaunchButton);
#line default
#line hidden
break;
case 8:
#line 34 "..\..\..\..\Pages\Home.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.DeleteVersion);
#line default
#line hidden
break;
}
}
}
}
@@ -0,0 +1,164 @@
#pragma checksum "..\..\..\..\Pages\Settings.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "79268F8851A48E778C468841E5BFC43BC564C574"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms.Integration;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WpfApp6.Pages;
namespace WpfApp6.Pages {
/// <summary>
/// Settings
/// </summary>
public partial class Settings : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector {
#line 12 "..\..\..\..\Pages\Settings.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.PasswordBox PasswordBox;
#line default
#line hidden
#line 14 "..\..\..\..\Pages\Settings.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock clock;
#line default
#line hidden
#line 25 "..\..\..\..\Pages\Settings.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox EmailTextBox;
#line default
#line hidden
#line 27 "..\..\..\..\Pages\Settings.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox RememberMeCheckBox;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Fortnite launcher;V1.0.0.0;component/pages/settings.xaml", System.UriKind.Relative);
#line 1 "..\..\..\..\Pages\Settings.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.PasswordBox = ((System.Windows.Controls.PasswordBox)(target));
return;
case 2:
this.clock = ((System.Windows.Controls.TextBlock)(target));
return;
case 3:
#line 24 "..\..\..\..\Pages\Settings.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.SaveSettings_Click);
#line default
#line hidden
return;
case 4:
this.EmailTextBox = ((System.Windows.Controls.TextBox)(target));
#line 25 "..\..\..\..\Pages\Settings.xaml"
this.EmailTextBox.GotFocus += new System.Windows.RoutedEventHandler(this.EmailTextBox_GotFocus);
#line default
#line hidden
#line 25 "..\..\..\..\Pages\Settings.xaml"
this.EmailTextBox.LostFocus += new System.Windows.RoutedEventHandler(this.EmailTextBox_LostFocus);
#line default
#line hidden
return;
case 5:
this.RememberMeCheckBox = ((System.Windows.Controls.CheckBox)(target));
return;
case 6:
#line 30 "..\..\..\..\Pages\Settings.xaml"
((System.Windows.Controls.Grid)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.DiscordLinkCard_MouseLeftButtonDown);
#line default
#line hidden
#line 30 "..\..\..\..\Pages\Settings.xaml"
((System.Windows.Controls.Grid)(target)).MouseEnter += new System.Windows.Input.MouseEventHandler(this.DiscordLinkCard_MouseEnter);
#line default
#line hidden
#line 30 "..\..\..\..\Pages\Settings.xaml"
((System.Windows.Controls.Grid)(target)).MouseLeave += new System.Windows.Input.MouseEventHandler(this.DiscordLinkCard_MouseLeave);
#line default
#line hidden
return;
}
this._contentLoaded = true;
}
}
}
@@ -0,0 +1,108 @@
#pragma checksum "..\..\..\..\Pages\download.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "F9A4DA6B659E73E81E6BE0FC73273C3080486513"
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Forms.Integration;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WpfApp6.Pages;
namespace WpfApp6.Pages {
/// <summary>
/// download
/// </summary>
public partial class download : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector {
#line 26 "..\..\..\..\Pages\download.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock clock;
#line default
#line hidden
#line 42 "..\..\..\..\Pages\download.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button DownloadBuild;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Fortnite launcher;V1.0.0.0;component/pages/download.xaml", System.UriKind.Relative);
#line 1 "..\..\..\..\Pages\download.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "8.0.2.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.clock = ((System.Windows.Controls.TextBlock)(target));
return;
case 2:
this.DownloadBuild = ((System.Windows.Controls.Button)(target));
#line 42 "..\..\..\..\Pages\download.xaml"
this.DownloadBuild.Click += new System.Windows.RoutedEventHandler(this.DownloadBuild_Click);
#line default
#line hidden
return;
}
this._contentLoaded = true;
}
}
}
@@ -0,0 +1,139 @@
{
"format": 1,
"restore": {
"C:\\Users\\omarj\\OneDrive\\Desktop\\LauncherV9\\Fortnite launcher\\Fortnite launcher.csproj": {}
},
"projects": {
"C:\\Users\\omarj\\OneDrive\\Desktop\\LauncherV9\\Fortnite launcher\\Fortnite launcher.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "C:\\Users\\omarj\\OneDrive\\Desktop\\LauncherV9\\Fortnite launcher\\Fortnite launcher.csproj",
"projectName": "Fortnite launcher",
"projectPath": "C:\\Users\\omarj\\OneDrive\\Desktop\\LauncherV9\\Fortnite launcher\\Fortnite launcher.csproj",
"packagesPath": "C:\\Users\\omarj\\.nuget\\packages\\",
"outputPath": "C:\\Users\\omarj\\OneDrive\\Desktop\\LauncherV9\\Fortnite launcher\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\omarj\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0-windows"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0-windows7.0": {
"targetAlias": "net6.0-windows",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net6.0-windows7.0": {
"targetAlias": "net6.0-windows",
"dependencies": {
"DiscordRichPresence": {
"target": "Package",
"version": "[1.2.1.24, )"
},
"Extended.Wpf.Toolkit": {
"target": "Package",
"version": "[4.6.0, )"
},
"HMBSbige.SingleInstance": {
"target": "Package",
"version": "[6.0.1, )"
},
"MaterialDesign.Icons": {
"target": "Package",
"version": "[1.1.0, )"
},
"ModernWpfUI": {
"target": "Package",
"version": "[0.9.6, )"
},
"Newtonsoft.Json": {
"target": "Package",
"version": "[13.0.3, )"
},
"SingleInstanceCore": {
"target": "Package",
"version": "[2.2.2, )"
},
"SingleInstanceHelper": {
"target": "Package",
"version": "[1.0.3, )"
},
"WindowsAPICodePack.Shell.CommonFileDialogs": {
"target": "Package",
"version": "[1.1.5, )"
},
"WpfSnowfall": {
"target": "Package",
"version": "[1.1.0, )"
},
"ini-parser": {
"target": "Package",
"version": "[2.5.2, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[6.0.27, 6.0.27]"
},
{
"name": "Microsoft.NETCore.App.Host.win-x64",
"version": "[6.0.27, 6.0.27]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[6.0.27, 6.0.27]"
},
{
"name": "Microsoft.WindowsDesktop.App.Ref",
"version": "[6.0.27, 6.0.27]"
}
],
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
},
"Microsoft.WindowsDesktop.App.WPF": {
"privateAssets": "none"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.200\\RuntimeIdentifierGraph.json"
}
}
}
}
}
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\omarj\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.9.1</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\omarj\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_VisualStudio_Threading_Analyzers Condition=" '$(PkgMicrosoft_VisualStudio_Threading_Analyzers)' == '' ">C:\Users\omarj\.nuget\packages\microsoft.visualstudio.threading.analyzers\17.0.64</PkgMicrosoft_VisualStudio_Threading_Analyzers>
<PkgExtended_Wpf_Toolkit Condition=" '$(PkgExtended_Wpf_Toolkit)' == '' ">C:\Users\omarj\.nuget\packages\extended.wpf.toolkit\4.6.0</PkgExtended_Wpf_Toolkit>
</PropertyGroup>
</Project>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
File diff suppressed because it is too large Load Diff
+50
View File
@@ -0,0 +1,50 @@
{
"version": 2,
"dgSpecHash": "l+680B63UCqrn7J7c/QLsvR7IXgr2dUhhUjC8BBdooO8V36F+3aTPSbOjIBNNGJkgEchgxTrPDXRq/5LbJWRPQ==",
"success": true,
"projectFilePath": "C:\\Users\\omarj\\OneDrive\\Desktop\\LauncherV9\\Fortnite launcher\\Fortnite launcher.csproj",
"expectedPackageFiles": [
"C:\\Users\\omarj\\.nuget\\packages\\discordrichpresence\\1.2.1.24\\discordrichpresence.1.2.1.24.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\extended.wpf.toolkit\\4.6.0\\extended.wpf.toolkit.4.6.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\hmbsbige.singleinstance\\6.0.1\\hmbsbige.singleinstance.6.0.1.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\ini-parser\\2.5.2\\ini-parser.2.5.2.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\materialdesign.icons\\1.1.0\\materialdesign.icons.1.1.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\5.0.0\\microsoft.bcl.asyncinterfaces.5.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.netcore.platforms\\5.0.0\\microsoft.netcore.platforms.5.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.visualstudio.threading\\17.0.64\\microsoft.visualstudio.threading.17.0.64.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.visualstudio.threading.analyzers\\17.0.64\\microsoft.visualstudio.threading.analyzers.17.0.64.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.visualstudio.validation\\16.10.35\\microsoft.visualstudio.validation.16.10.35.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.win32.registry\\5.0.0\\microsoft.win32.registry.5.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\modernwpfui\\0.9.6\\modernwpfui.0.9.6.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\pipelines.extensions\\1.0.0\\pipelines.extensions.1.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\protobuf-net\\3.0.101\\protobuf-net.3.0.101.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\protobuf-net.core\\3.0.101\\protobuf-net.core.3.0.101.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\singleinstancecore\\2.2.2\\singleinstancecore.2.2.2.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\singleinstancehelper\\1.0.3\\singleinstancehelper.1.0.3.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\system.io.pipelines\\6.0.0\\system.io.pipelines.6.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\system.reactive\\6.0.0\\system.reactive.6.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\system.security.accesscontrol\\5.0.0\\system.security.accesscontrol.5.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\system.security.principal.windows\\5.0.0\\system.security.principal.windows.5.0.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\system.threading.tasks.extensions\\4.5.4\\system.threading.tasks.extensions.4.5.4.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\tinyipc\\3.0.1\\tinyipc.3.0.1.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\windowsapicodepack.shell.commonfiledialogs\\1.1.5\\windowsapicodepack.shell.commonfiledialogs.1.1.5.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\wpfsnowfall\\1.1.0\\wpfsnowfall.1.1.0.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.windowsdesktop.app.ref\\6.0.27\\microsoft.windowsdesktop.app.ref.6.0.27.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.netcore.app.ref\\6.0.27\\microsoft.netcore.app.ref.6.0.27.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\6.0.27\\microsoft.aspnetcore.app.ref.6.0.27.nupkg.sha512",
"C:\\Users\\omarj\\.nuget\\packages\\microsoft.netcore.app.host.win-x64\\6.0.27\\microsoft.netcore.app.host.win-x64.6.0.27.nupkg.sha512"
],
"logs": [
{
"code": "NU1701",
"level": "Warning",
"warningLevel": 1,
"message": "Package 'ini-parser 2.5.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework 'net6.0-windows7.0'. This package may not be fully compatible with your project.",
"libraryId": "ini-parser",
"targetGraphs": [
"net6.0-windows7.0"
]
}
]
}