diff --git a/ZKuP/COMSelector.xaml.cs b/ZKuP/COMSelector.xaml.cs index fe91f40..cab623d 100644 --- a/ZKuP/COMSelector.xaml.cs +++ b/ZKuP/COMSelector.xaml.cs @@ -34,8 +34,12 @@ namespace ZKuP private void btnSave_Click(object sender, RoutedEventArgs e) { - var match = Regex.Match(cbCOMList.SelectedValue.ToString(), @"COM\d+(?=\))"); - Settings.WriteSetting("COMPort", match.Value); + if (cbCOMList.SelectedValue != null) + { + var match = Regex.Match(cbCOMList.SelectedValue.ToString(), @"COM\d+(?=\))"); + Settings.WriteSetting("COMPort", match.Value); + } + else Settings.WriteSetting("COMPort", ""); this.Close(); } diff --git a/ZKuP/CreateFirma.xaml.cs b/ZKuP/CreateFirma.xaml.cs index 6d9c7a9..38b9e91 100644 --- a/ZKuP/CreateFirma.xaml.cs +++ b/ZKuP/CreateFirma.xaml.cs @@ -1619,6 +1619,7 @@ namespace ZKuP new MySqlParameter("@id", id) }); } + else (sender as TextBox).Text = oldValue; } foreach (var textBox in textBoxes) diff --git a/ZKuP/FodyWeavers.xsd b/ZKuP/FodyWeavers.xsd index 05e92c1..f2dbece 100644 --- a/ZKuP/FodyWeavers.xsd +++ b/ZKuP/FodyWeavers.xsd @@ -29,12 +29,27 @@ - A list of unmanaged 32 bit assembly names to include, delimited with line breaks. + Obsolete, use UnmanagedWinX86Assemblies instead + + + + + A list of unmanaged X86 (32 bit) assembly names to include, delimited with line breaks. - A list of unmanaged 64 bit assembly names to include, delimited with line breaks. + Obsolete, use UnmanagedWinX64Assemblies instead. + + + + + A list of unmanaged X64 (64 bit) assembly names to include, delimited with line breaks. + + + + + A list of unmanaged Arm64 (64 bit) assembly names to include, delimited with line breaks. @@ -73,6 +88,11 @@ As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off. + + + The attach method no longer subscribes to the `AppDomain.AssemblyResolve` (.NET 4.x) and `AssemblyLoadContext.Resolving` (.NET 6.0+) events. + + Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code. @@ -105,12 +125,27 @@ - A list of unmanaged 32 bit assembly names to include, delimited with |. + Obsolete, use UnmanagedWinX86Assemblies instead + + + + + A list of unmanaged X86 (32 bit) assembly names to include, delimited with |. - A list of unmanaged 64 bit assembly names to include, delimited with |. + Obsolete, use UnmanagedWinX64Assemblies instead + + + + + A list of unmanaged X64 (64 bit) assembly names to include, delimited with |. + + + + + A list of unmanaged Arm64 (64 bit) assembly names to include, delimited with |. diff --git a/ZKuP/MainWindow.xaml.cs b/ZKuP/MainWindow.xaml.cs index 278c270..003cb8a 100644 --- a/ZKuP/MainWindow.xaml.cs +++ b/ZKuP/MainWindow.xaml.cs @@ -43,7 +43,7 @@ namespace ZKuP PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } - public const string Version = "5.1.0.1"; + public const string Version = "5.1.0.2"; public static Roles LoggedInRole { get; private set; } = Roles.None; @@ -381,7 +381,7 @@ namespace ZKuP await Dispatcher.BeginInvoke(new Action(() => pgLoad.Value = 15)); auth = await SQL.ReadSingleValueAsync($"SELECT EXISTS(SELECT * FROM {MainWindow.table}.users WHERE `Username` = '{Environment.UserName}')"); - await Dispatcher.BeginInvoke(new Action(() => SQL.WriteSQL($"REPLACE INTO {MainWindow.table}.apptracker (Username, Version, LastLogin) VALUES ('{Environment.UserName}', '{Version}', '{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}')"))); + await Dispatcher.BeginInvoke(new Action(() => SQL.WriteSQL($"REPLACE INTO {MainWindow.table}.apptracker (Username, Version, LastLogin, Online) VALUES ('{Environment.UserName}', '{Version}', '{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}', 1)"))); await Dispatcher.BeginInvoke(new Action(() => pgLoad.Value = 20)); @@ -2531,7 +2531,7 @@ namespace ZKuP - private void Window_Closing(object sender, CancelEventArgs e) + private async void Window_Closing(object sender, CancelEventArgs e) { if (Main.Visibility == Visibility.Visible) { @@ -2545,6 +2545,7 @@ namespace ZKuP Settings.WriteSetting("WindowState", this.WindowState); Settings.Save(); + await SQL.WriteSQL($"UPDATE {MainWindow.table}.apptracker SET Online = 0 WHERE Username = '{Environment.UserName}'"); //Properties.Settings.Default.Save(); } } diff --git a/ZKuP/SQL.cs b/ZKuP/SQL.cs index 2949b0f..e45deac 100644 --- a/ZKuP/SQL.cs +++ b/ZKuP/SQL.cs @@ -259,6 +259,7 @@ namespace ZKuP if (signature != null && signature.Length > 0) cmd.Parameters.Add("@signature", MySqlDbType.LongBlob).Value = signature; + else cmd.Parameters.Add("@signature", MySqlDbType.LongBlob).Value = new byte[1]; await SQL.WriteSQL(cmd); } @@ -699,7 +700,7 @@ namespace ZKuP while (reader.Read()) { if (!reader.IsDBNull(ColumnID)) - queryResult.Add(reader.GetString(ColumnID)); + queryResult.Add(reader.GetValue(ColumnID).ToString()); else queryResult.Add(""); } @@ -737,7 +738,7 @@ namespace ZKuP { while (reader.Read()) { - queryResult.Add(reader.GetDateTime(ColumnID).ToString("yyyy-MM-dd HH:mm:ss") + ";" + reader.GetString(ColumnID + 1)); + queryResult.Add(reader.GetDateTime(ColumnID).ToString("yyyy-MM-dd HH:mm:ss") + ";" + reader.GetValue(ColumnID + 1).ToString()); } } } @@ -775,7 +776,7 @@ namespace ZKuP while (reader.Read()) { if (!reader.IsDBNull(ColumnID) && !reader.IsDBNull(ColumnID + 1)) - queryResult.Add(reader.GetString(ColumnID) + $"{Seperator}" + reader.GetString(ColumnID + 1)); + queryResult.Add(reader.GetValue(ColumnID).ToString() + $"{Seperator}" + reader.GetValue(ColumnID + 1).ToString()); else queryResult.Add(""); } @@ -818,25 +819,25 @@ namespace ZKuP switch(ColumnCount) { case 1: - queryResult.Add(reader.GetString(ColumnOne)); + queryResult.Add(reader.GetValue(ColumnOne).ToString()); break; case 2: - queryResult.Add(reader.GetString(ColumnOne) + $"{SeperatorOne}" + reader.GetString(ColumnTwo)); + queryResult.Add(reader.GetValue(ColumnOne).ToString() + $"{SeperatorOne}" + reader.GetValue(ColumnTwo).ToString()); break; case 3: - queryResult.Add(reader.GetString(ColumnOne) + $"{SeperatorOne}" + reader.GetString(ColumnTwo) + $"{SeperatorTwo}" + reader.GetString(ColumnThree)); + queryResult.Add(reader.GetValue(ColumnOne).ToString() + $"{SeperatorOne}" + reader.GetValue(ColumnTwo).ToString() + $"{SeperatorTwo}" + reader.GetValue(ColumnThree).ToString()); break; case 4: - queryResult.Add(reader.GetString(ColumnOne) + $"{SeperatorOne}" + reader.GetString(ColumnTwo) + $"{SeperatorTwo}" + reader.GetString(ColumnThree) + $"{SeperatorThree}" + reader.GetString(ColumnFour)); + queryResult.Add(reader.GetValue(ColumnOne).ToString() + $"{SeperatorOne}" + reader.GetValue(ColumnTwo).ToString() + $"{SeperatorTwo}" + reader.GetValue(ColumnThree).ToString() + $"{SeperatorThree}" + reader.GetValue(ColumnFour).ToString()); break; case 5: - queryResult.Add(reader.GetString(ColumnOne) + $"{SeperatorOne}" + reader.GetString(ColumnTwo) + $"{SeperatorTwo}" + reader.GetString(ColumnThree) + $"{SeperatorThree}" + reader.GetString(ColumnFour) + $"{SeperatorFour}" + reader.GetString(ColumnFive)); + queryResult.Add(reader.GetValue(ColumnOne).ToString() + $"{SeperatorOne}" + reader.GetValue(ColumnTwo).ToString() + $"{SeperatorTwo}" + reader.GetValue(ColumnThree).ToString() + $"{SeperatorThree}" + reader.GetValue(ColumnFour).ToString() + $"{SeperatorFour}" + reader.GetValue(ColumnFive).ToString()); break; case 6: - queryResult.Add(reader.GetString(ColumnOne) + $"{SeperatorOne}" + reader.GetString(ColumnTwo) + $"{SeperatorTwo}" + reader.GetString(ColumnThree) + $"{SeperatorThree}" + reader.GetString(ColumnFour) + $"{SeperatorFour}" + reader.GetString(ColumnFive) + $"{SeperatorFive}" + reader.GetString(ColumnSix)); + queryResult.Add(reader.GetValue(ColumnOne).ToString() + $"{SeperatorOne}" + reader.GetValue(ColumnTwo).ToString() + $"{SeperatorTwo}" + reader.GetValue(ColumnThree).ToString() + $"{SeperatorThree}" + reader.GetValue(ColumnFour).ToString() + $"{SeperatorFour}" + reader.GetValue(ColumnFive).ToString() + $"{SeperatorFive}" + reader.GetValue(ColumnSix).ToString()); break; default: - queryResult.Add(reader.GetString(ColumnOne)); + queryResult.Add(reader.GetValue(ColumnOne).ToString()); break; } } @@ -873,14 +874,14 @@ namespace ZKuP if (FirstColumn == 0 && SecondColumn == 0) { if (!queryResult.ContainsKey(0)) - queryResult.Add(0, reader.GetString(SecondColumn)); + queryResult.Add(0, reader.GetValue(SecondColumn).ToString()); } else { var x = reader.GetInt32(FirstColumn); if (!queryResult.ContainsKey(x)) - queryResult.Add(x, reader.GetString(SecondColumn)); + queryResult.Add(x, reader.GetValue(SecondColumn).ToString()); } } @@ -915,13 +916,13 @@ namespace ZKuP while (reader.Read()) { if (!reader.IsDBNull(FirstColumn) && !reader.IsDBNull(SecondColumn)) - if (!queryResult.ContainsKey(reader.GetString(FirstColumn))) - queryResult.Add(reader.GetString(FirstColumn), reader.GetString(SecondColumn)); + if (!queryResult.ContainsKey(reader.GetValue(FirstColumn).ToString())) + queryResult.Add(reader.GetValue(FirstColumn).ToString(), reader.GetValue(SecondColumn).ToString()); else if (reader.IsDBNull(FirstColumn) && !reader.IsDBNull(SecondColumn)) continue;// queryResult.Add("", reader.GetString(SecondColumn)); else if (!reader.IsDBNull(FirstColumn) && reader.IsDBNull(SecondColumn)) - if (!queryResult.ContainsKey(reader.GetString(FirstColumn))) - queryResult.Add(reader.GetString(FirstColumn), ""); + if (!queryResult.ContainsKey(reader.GetValue(FirstColumn).ToString())) + queryResult.Add(reader.GetValue(FirstColumn).ToString(), ""); } } @@ -958,8 +959,9 @@ namespace ZKuP - await conn.OpenAsync(); - var result = await cmd.ExecuteScalarAsync(); + conn.Open(); + var result = cmd.ExecuteScalar(); + conn.Close(); return result != null; diff --git a/ZKuP/ZKuP.csproj b/ZKuP/ZKuP.csproj index ec895d2..d50f146 100644 --- a/ZKuP/ZKuP.csproj +++ b/ZKuP/ZKuP.csproj @@ -70,6 +70,7 @@ prompt MinimumRecommendedRules.ruleset true + 4014,1998,0108 bin\x64\Release\ @@ -609,14 +610,14 @@ - - 1.8.9 + + 2.6.1 1.8.1 - 5.2.0 + 6.0.0 runtime; build; native; contentfiles; analyzers; buildtransitive all @@ -624,25 +625,25 @@ 2.0.2 - 3.17.3 + 3.31.1 - 1.2.6 + 1.3.8 - 2.4.7 + 2.4.10 - 5.0.2 + 7.0.4 - 15.0.4797.1003 + 15.0.4797.1004 - 7.1.2 + 7.1.3 - 8.0.25 + 9.4.0 2.0.3 @@ -651,7 +652,7 @@ 13.0.3 - 2020.0.1 + 2025.0.0 4.3.0 @@ -663,7 +664,7 @@ 4.3.0 - 5.0.1 + 9.0.7 4.3.0 @@ -738,7 +739,7 @@ 4.3.0 - 4.5.0 + 4.6.1 4.3.1 @@ -747,10 +748,10 @@ 4.3.0 - 1.1.0 + 2.1.1 - 2.3.0 + 2.3.1