From 07ab60666abec1e64fdf6131caeba6a6a6a6b514 Mon Sep 17 00:00:00 2001 From: Pilzinsel64 Date: Tue, 11 Feb 2025 07:18:14 +0100 Subject: [PATCH] make some projects compatible with netframework4.8 again --- Pilz.Collections/Pilz.Collections.csproj | 2 +- Pilz.Cryptography/Helpers.cs | 2 +- Pilz.Cryptography/Pilz.Cryptography.csproj | 3 ++- Pilz.Drawing/Pilz.Drawing.vbproj | 5 +++-- Pilz.Extensions/Pilz.Extensions.csproj | 3 ++- Pilz.Gaming.Minecraft/Pilz.Gaming.Minecraft.csproj | 1 + Pilz.IO/Pilz.IO.csproj | 3 ++- .../Pilz.Net.CloudProviders.Nextcloud.csproj | 1 + Pilz.Net/Pilz.Net.csproj | 1 + .../Pilz.Plugins.Advanced.UI.Telerik.csproj | 1 + .../Pilz.Plugins.Advanced.UI.csproj | 1 + Pilz.Plugins.Advanced/Pilz.Plugins.Advanced.csproj | 1 + Pilz.Plugins/Pilz.Plugins.csproj | 1 + .../Pilz.Simple3DFileParser.vbproj | 1 + Pilz.Threading/Pilz.Threading.vbproj | 3 ++- Pilz.UI.Telerik/Dialogs/RadFlyoutBase.cs | 5 ----- Pilz.UI.Telerik/Extensions/RadFlyoutBaseExtensions.cs | 2 +- .../Extensions/RadListDataItemCollectionExtensions.cs | 7 ++++--- Pilz.UI.Telerik/Pilz.UI.Telerik.csproj | 7 ++++--- Pilz.UI/Dialogs/FlyoutBase.cs | 11 +++-------- Pilz.UI/Extensions/FlyoutBaseExtensions.cs | 2 +- Pilz.UI/HighlightPanel.cs | 2 +- Pilz.UI/Highlighter.cs | 5 ++--- Pilz.UI/PaintingControl/PaintingControl.cs | 9 ++++----- Pilz.UI/PaintingControl/PaintingObject.cs | 5 ++--- Pilz.UI/Pilz.UI.csproj | 8 ++++---- Pilz.UI/Resources.Designer.cs | 1 - Pilz.Win32/Mapped/Keyboard.cs | 6 ++---- Pilz.Win32/NativeTools.cs | 2 ++ Pilz.Win32/Pilz.Win32.csproj | 5 +++-- Pilz/AppVersion.cs | 2 +- Pilz/Pilz.csproj | 4 ++-- 32 files changed, 57 insertions(+), 55 deletions(-) diff --git a/Pilz.Collections/Pilz.Collections.csproj b/Pilz.Collections/Pilz.Collections.csproj index 42f381b..2fddb09 100644 --- a/Pilz.Collections/Pilz.Collections.csproj +++ b/Pilz.Collections/Pilz.Collections.csproj @@ -3,7 +3,7 @@ - net8.0 + net8.0;netstandard2.0 latest enable enable diff --git a/Pilz.Cryptography/Helpers.cs b/Pilz.Cryptography/Helpers.cs index 4a7405d..7d9ca18 100644 --- a/Pilz.Cryptography/Helpers.cs +++ b/Pilz.Cryptography/Helpers.cs @@ -41,7 +41,7 @@ public static class Helpers var dateTime = DateTime.UtcNow.ToString("yyyyMMddHHmmssfffffff"); var type = typeof(T).ToString(); var together = sn + dateTime + type + var; - var hash = BitConverter.ToString(MD5.HashData(Encoding.Default.GetBytes(together))).Replace("-", string.Empty); + var hash = BitConverter.ToString(new HMACMD5().ComputeHash(Encoding.Default.GetBytes(together))).Replace("-", string.Empty); return hash; } } diff --git a/Pilz.Cryptography/Pilz.Cryptography.csproj b/Pilz.Cryptography/Pilz.Cryptography.csproj index 1ba1c77..482feed 100644 --- a/Pilz.Cryptography/Pilz.Cryptography.csproj +++ b/Pilz.Cryptography/Pilz.Cryptography.csproj @@ -1,7 +1,8 @@  - net8.0 + net8.0;netstandard2.0 + latest diff --git a/Pilz.Drawing/Pilz.Drawing.vbproj b/Pilz.Drawing/Pilz.Drawing.vbproj index 11cf201..4bb7f1a 100644 --- a/Pilz.Drawing/Pilz.Drawing.vbproj +++ b/Pilz.Drawing/Pilz.Drawing.vbproj @@ -1,7 +1,8 @@  Windows - net8.0-windows + net8.0-windows;netframework4.8 + latest 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 Pilz.Drawing.xml true @@ -26,7 +27,7 @@ On - 2.0.1 + 2.0.2 diff --git a/Pilz.Extensions/Pilz.Extensions.csproj b/Pilz.Extensions/Pilz.Extensions.csproj index 22f4d1b..3344213 100644 --- a/Pilz.Extensions/Pilz.Extensions.csproj +++ b/Pilz.Extensions/Pilz.Extensions.csproj @@ -1,7 +1,8 @@  - net8.0 + net8.0;netstandard2.0 + latest enable enable diff --git a/Pilz.Gaming.Minecraft/Pilz.Gaming.Minecraft.csproj b/Pilz.Gaming.Minecraft/Pilz.Gaming.Minecraft.csproj index 3b7b257..46331f9 100644 --- a/Pilz.Gaming.Minecraft/Pilz.Gaming.Minecraft.csproj +++ b/Pilz.Gaming.Minecraft/Pilz.Gaming.Minecraft.csproj @@ -2,6 +2,7 @@ net6.0;net8.0 + latest enable enable diff --git a/Pilz.IO/Pilz.IO.csproj b/Pilz.IO/Pilz.IO.csproj index f4191f9..0f1eae8 100644 --- a/Pilz.IO/Pilz.IO.csproj +++ b/Pilz.IO/Pilz.IO.csproj @@ -2,9 +2,10 @@ net8.0 + latest 2.1.0 enable - annotations + enable diff --git a/Pilz.Net.CloudProviders.Nextcloud/Pilz.Net.CloudProviders.Nextcloud.csproj b/Pilz.Net.CloudProviders.Nextcloud/Pilz.Net.CloudProviders.Nextcloud.csproj index ad48613..854f7f9 100644 --- a/Pilz.Net.CloudProviders.Nextcloud/Pilz.Net.CloudProviders.Nextcloud.csproj +++ b/Pilz.Net.CloudProviders.Nextcloud/Pilz.Net.CloudProviders.Nextcloud.csproj @@ -2,6 +2,7 @@ net6.0;net8.0 + latest enable enable diff --git a/Pilz.Net/Pilz.Net.csproj b/Pilz.Net/Pilz.Net.csproj index 0811bcb..65224f5 100644 --- a/Pilz.Net/Pilz.Net.csproj +++ b/Pilz.Net/Pilz.Net.csproj @@ -2,6 +2,7 @@ net8.0 + latest enable enable diff --git a/Pilz.Plugins.Advanced.UI.Telerik/Pilz.Plugins.Advanced.UI.Telerik.csproj b/Pilz.Plugins.Advanced.UI.Telerik/Pilz.Plugins.Advanced.UI.Telerik.csproj index 3bdbb68..9c08a98 100644 --- a/Pilz.Plugins.Advanced.UI.Telerik/Pilz.Plugins.Advanced.UI.Telerik.csproj +++ b/Pilz.Plugins.Advanced.UI.Telerik/Pilz.Plugins.Advanced.UI.Telerik.csproj @@ -2,6 +2,7 @@ net8.0-windows + latest enable enable true diff --git a/Pilz.Plugins.Advanced.UI/Pilz.Plugins.Advanced.UI.csproj b/Pilz.Plugins.Advanced.UI/Pilz.Plugins.Advanced.UI.csproj index 1a4d5d8..31a0b22 100644 --- a/Pilz.Plugins.Advanced.UI/Pilz.Plugins.Advanced.UI.csproj +++ b/Pilz.Plugins.Advanced.UI/Pilz.Plugins.Advanced.UI.csproj @@ -2,6 +2,7 @@ net8.0-windows + latest enable enable true diff --git a/Pilz.Plugins.Advanced/Pilz.Plugins.Advanced.csproj b/Pilz.Plugins.Advanced/Pilz.Plugins.Advanced.csproj index 1a4a2dd..d2b9d09 100644 --- a/Pilz.Plugins.Advanced/Pilz.Plugins.Advanced.csproj +++ b/Pilz.Plugins.Advanced/Pilz.Plugins.Advanced.csproj @@ -2,6 +2,7 @@ net8.0 + latest enable enable diff --git a/Pilz.Plugins/Pilz.Plugins.csproj b/Pilz.Plugins/Pilz.Plugins.csproj index bfe11fa..175db29 100644 --- a/Pilz.Plugins/Pilz.Plugins.csproj +++ b/Pilz.Plugins/Pilz.Plugins.csproj @@ -2,6 +2,7 @@ net8.0 + latest enable enable diff --git a/Pilz.Simple3DFileParser/Pilz.Simple3DFileParser.vbproj b/Pilz.Simple3DFileParser/Pilz.Simple3DFileParser.vbproj index d39dce8..abd5459 100644 --- a/Pilz.Simple3DFileParser/Pilz.Simple3DFileParser.vbproj +++ b/Pilz.Simple3DFileParser/Pilz.Simple3DFileParser.vbproj @@ -3,6 +3,7 @@ Pilz.S3DFileParser net8.0 + latest 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 Pilz.Simple3DFileParser.xml true diff --git a/Pilz.Threading/Pilz.Threading.vbproj b/Pilz.Threading/Pilz.Threading.vbproj index b49e42b..0d03e2b 100644 --- a/Pilz.Threading/Pilz.Threading.vbproj +++ b/Pilz.Threading/Pilz.Threading.vbproj @@ -1,7 +1,8 @@  Windows - net6.0-windows;net8.0-windows + net6.0-windows;net8.0-windows;netframework4.8 + latest 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 Pilz.Threading.xml true diff --git a/Pilz.UI.Telerik/Dialogs/RadFlyoutBase.cs b/Pilz.UI.Telerik/Dialogs/RadFlyoutBase.cs index b11c364..64342d1 100644 --- a/Pilz.UI.Telerik/Dialogs/RadFlyoutBase.cs +++ b/Pilz.UI.Telerik/Dialogs/RadFlyoutBase.cs @@ -100,11 +100,6 @@ public partial class RadFlyoutBase : UserControl ParentChanged += FlyoutDialogBase_ParentChanged; } - [MemberNotNull(nameof(radButton_Cancel))] - [MemberNotNull(nameof(radButton_Confirm))] - [MemberNotNull(nameof(tableLayoutPanel_ActionPanel))] - [MemberNotNull(nameof(tableLayoutPanel_TitlePanel))] - [MemberNotNull(nameof(radLabel_Title))] private void InitializeComponent() { // radButton_Cancel diff --git a/Pilz.UI.Telerik/Extensions/RadFlyoutBaseExtensions.cs b/Pilz.UI.Telerik/Extensions/RadFlyoutBaseExtensions.cs index ec97152..5342d88 100644 --- a/Pilz.UI.Telerik/Extensions/RadFlyoutBaseExtensions.cs +++ b/Pilz.UI.Telerik/Extensions/RadFlyoutBaseExtensions.cs @@ -5,7 +5,7 @@ namespace Pilz.UI.Telerik.Extensions.Extensions; public static class RadFlyoutBaseExtensions { - public static bool IsValid([NotNullWhen(true)] this RadFlyoutBase? @this) + public static bool IsValid(this RadFlyoutBase? @this) { return @this != null && @this.Result == DialogResult.OK; } diff --git a/Pilz.UI.Telerik/Extensions/RadListDataItemCollectionExtensions.cs b/Pilz.UI.Telerik/Extensions/RadListDataItemCollectionExtensions.cs index 8e56bf5..fc17e6f 100644 --- a/Pilz.UI.Telerik/Extensions/RadListDataItemCollectionExtensions.cs +++ b/Pilz.UI.Telerik/Extensions/RadListDataItemCollectionExtensions.cs @@ -16,15 +16,16 @@ public static class RadListDataItemCollectionExtensions public static IEnumerable AddEnumValues(this RadListDataItemCollection @this, bool clearCollection, Func? filter, Func? format) where T : struct, Enum { - var values = Enum.GetValues(); + var values = Enum.GetValues(typeof(T)); var items = new List(); - format ??= v => Enum.GetName(v); + if (format == null) + format = v => Enum.GetName(typeof(T), v); if (clearCollection) @this.Clear(); - foreach (var value in values) + foreach (T value in values) { if (filter is null || filter(value)) items.Add(new(format(value), value)); diff --git a/Pilz.UI.Telerik/Pilz.UI.Telerik.csproj b/Pilz.UI.Telerik/Pilz.UI.Telerik.csproj index 542bd7f..85bab59 100644 --- a/Pilz.UI.Telerik/Pilz.UI.Telerik.csproj +++ b/Pilz.UI.Telerik/Pilz.UI.Telerik.csproj @@ -1,14 +1,15 @@  - net8.0-windows + net8.0-windows;netframework4.8 + latest enable - enable + annotations true - 2.9.5 + 2.9.6 True diff --git a/Pilz.UI/Dialogs/FlyoutBase.cs b/Pilz.UI/Dialogs/FlyoutBase.cs index 0a2b6a9..8d1845b 100644 --- a/Pilz.UI/Dialogs/FlyoutBase.cs +++ b/Pilz.UI/Dialogs/FlyoutBase.cs @@ -84,11 +84,6 @@ public partial class FlyoutBase : UserControl ParentChanged += FlyoutBase_ParentChanged; } - [MemberNotNull(nameof(tableLayoutPanel_TitlePanel))] - [MemberNotNull(nameof(label_Title))] - [MemberNotNull(nameof(tableLayoutPanel_ActionPanel))] - [MemberNotNull(nameof(button_Cancel))] - [MemberNotNull(nameof(button_Accept))] private void InitializeComponent() { // button_Accept @@ -180,7 +175,7 @@ public partial class FlyoutBase : UserControl base.OnLoad(e); } - private void FlyoutBase_ParentChanged(object? sender, EventArgs e) + private void FlyoutBase_ParentChanged(object sender, EventArgs e) { var frm = FindForm(); if (frm != null) @@ -214,13 +209,13 @@ public partial class FlyoutBase : UserControl tableLayoutPanel_TitlePanel.Visible = !string.IsNullOrWhiteSpace(label_Title.Text); } - protected virtual void Button_Accept_Click(object? sender, EventArgs e) + protected virtual void Button_Accept_Click(object sender, EventArgs e) { if (ValidateOK()) Close(DialogResult.OK); } - protected virtual void Button_Cancel_Click(object? sender, EventArgs e) + protected virtual void Button_Cancel_Click(object sender, EventArgs e) { Close(DialogResult.Cancel); } diff --git a/Pilz.UI/Extensions/FlyoutBaseExtensions.cs b/Pilz.UI/Extensions/FlyoutBaseExtensions.cs index 914038e..6a3b8dc 100644 --- a/Pilz.UI/Extensions/FlyoutBaseExtensions.cs +++ b/Pilz.UI/Extensions/FlyoutBaseExtensions.cs @@ -5,7 +5,7 @@ namespace Pilz.UI.Extensions; public static class FlyoutBaseExtensions { - public static bool IsValid([NotNullWhen(true)] this FlyoutBase? @this) + public static bool IsValid(this FlyoutBase? @this) { return @this != null && @this.Result == DialogResult.OK; } diff --git a/Pilz.UI/HighlightPanel.cs b/Pilz.UI/HighlightPanel.cs index 7462a33..fad51d7 100644 --- a/Pilz.UI/HighlightPanel.cs +++ b/Pilz.UI/HighlightPanel.cs @@ -225,7 +225,7 @@ internal class HighlightPanel : Control Pilz.Win32.Native.User32.GetWindowRect(control.Handle, ref rect); var pp = control.Parent.PointToClient(new Point(rect.Left + 3, rect.Top + 3)); var handle = Pilz.Win32.Native.User32.ChildWindowFromPointEx(control.Parent.Handle, new Pilz.Win32.Native.POINT(pp.X, pp.Y), (uint)Pilz.Win32.Native.WindowFromPointFlags.CWP_SKIPINVISIBLE); - if (handle == nint.Zero) + if (handle == IntPtr.Zero) return control.Visible; var c = Control.FromHandle(handle); diff --git a/Pilz.UI/Highlighter.cs b/Pilz.UI/Highlighter.cs index d55bbb0..9dfd19b 100644 --- a/Pilz.UI/Highlighter.cs +++ b/Pilz.UI/Highlighter.cs @@ -1,5 +1,4 @@ -using Microsoft.VisualBasic.CompilerServices; -using System; +using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; @@ -81,7 +80,7 @@ public class Highlighter : Component private void ControlHighlightVisibleChanged(object sender, EventArgs e) { - if (_HighlightPanel is not null && Conversions.ToBoolean(Operators.ConditionalCompareObjectEqual(_HighlightPanel.FocusHighlightControl, sender, false))) + if (_HighlightPanel is not null && sender.Equals(_HighlightPanel.FocusHighlightControl)) UpdateHighlighterRegion(); } diff --git a/Pilz.UI/PaintingControl/PaintingControl.cs b/Pilz.UI/PaintingControl/PaintingControl.cs index b56a35d..ccbd478 100644 --- a/Pilz.UI/PaintingControl/PaintingControl.cs +++ b/Pilz.UI/PaintingControl/PaintingControl.cs @@ -1,5 +1,4 @@ -using Microsoft.VisualBasic.CompilerServices; -using Pilz.Drawing; +using Pilz.Drawing; using System; using System.Collections; using System.Collections.Generic; @@ -94,7 +93,7 @@ public class PaintingControl : UserControl, IPaintingObjectContainer { get { - return Conversions.ToInteger(GetType().GetField("layoutSuspendCount", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).GetValue(this)) != 0; + return Convert.ToInt32(GetType().GetField("layoutSuspendCount", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).GetValue(this)) != 0; } } @@ -545,8 +544,8 @@ public class PaintingControl : UserControl, IPaintingObjectContainer /// protected override void WndProc(ref Message m) { - const int WM_NCHITTEST = 0x84; - const int HTTRANSPARENT = -1; + const nint WM_NCHITTEST = 0x84; + const nint HTTRANSPARENT = -1; if (!VisibleForMouseEvents && m.Msg == WM_NCHITTEST) m.Result = HTTRANSPARENT; diff --git a/Pilz.UI/PaintingControl/PaintingObject.cs b/Pilz.UI/PaintingControl/PaintingObject.cs index 1f80b2a..2beb8f9 100644 --- a/Pilz.UI/PaintingControl/PaintingObject.cs +++ b/Pilz.UI/PaintingControl/PaintingObject.cs @@ -1,5 +1,4 @@ -using Microsoft.VisualBasic.CompilerServices; -using Newtonsoft.Json; +using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel; @@ -590,7 +589,7 @@ public class PaintingObject : ICloneable, IPaintingObjectContainer get { if (Tag is string) - return Conversions.ToString(Tag); + return Convert.ToString(Tag); else { return string.Empty; diff --git a/Pilz.UI/Pilz.UI.csproj b/Pilz.UI/Pilz.UI.csproj index 0795aa7..124ba33 100644 --- a/Pilz.UI/Pilz.UI.csproj +++ b/Pilz.UI/Pilz.UI.csproj @@ -1,16 +1,16 @@  Windows - net8.0-windows + net8.0-windows;netframework4.8 + latest Pilz.UI.xml true $(DefaultItemExcludes);$(ProjectDir)**\*.vb - latest enable - enable + annotations - 2.4.5 + 2.4.6 diff --git a/Pilz.UI/Resources.Designer.cs b/Pilz.UI/Resources.Designer.cs index 92cdce2..1da33d7 100644 --- a/Pilz.UI/Resources.Designer.cs +++ b/Pilz.UI/Resources.Designer.cs @@ -25,7 +25,6 @@ namespace Pilz.UI.My.Resources [System.CodeDom.Compiler.GeneratedCode("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] [DebuggerNonUserCode()] [System.Runtime.CompilerServices.CompilerGenerated()] - [HideModuleName()] internal static class Resources { diff --git a/Pilz.Win32/Mapped/Keyboard.cs b/Pilz.Win32/Mapped/Keyboard.cs index d77ec9b..b54d7b0 100644 --- a/Pilz.Win32/Mapped/Keyboard.cs +++ b/Pilz.Win32/Mapped/Keyboard.cs @@ -1,6 +1,4 @@ - -using Microsoft.VisualBasic.CompilerServices; -using Pilz.Win32.Native; +using Pilz.Win32.Native; using Keys = System.Windows.Forms.Keys; namespace Pilz.Win32.Mapped; @@ -11,7 +9,7 @@ public class Keyboard public static bool IsKeyDown(int keyCode) { - return Conversions.ToDouble(User32.GetKeyState(keyCode).ToString() + 0x8000) < 0d; + return Convert.ToDouble(User32.GetKeyState(keyCode).ToString() + 0x8000) < 0d; } public static bool IsKeyDown(Keys keyCode) diff --git a/Pilz.Win32/NativeTools.cs b/Pilz.Win32/NativeTools.cs index 305d8b2..3a00f40 100644 --- a/Pilz.Win32/NativeTools.cs +++ b/Pilz.Win32/NativeTools.cs @@ -8,8 +8,10 @@ public static class NativeTools [Obsolete("Use \"Environment.ProcessPath\" instead.")] public static string GetExecutablePath(bool checkRealOS = false) { +#if NET8_0_OR_GREATER if (RuntimeInformationsEx.IsOSPlatform(OSType.Windows, checkRealOS)) return Environment.ProcessPath; +#endif return Process.GetCurrentProcess().MainModule.FileName; } } diff --git a/Pilz.Win32/Pilz.Win32.csproj b/Pilz.Win32/Pilz.Win32.csproj index 4506581..bfb8a0c 100644 --- a/Pilz.Win32/Pilz.Win32.csproj +++ b/Pilz.Win32/Pilz.Win32.csproj @@ -1,9 +1,10 @@  - net8.0-windows + net8.0-windows;netframework4.8 + latest true - 2.1.0 + 2.1.1 enable annotations diff --git a/Pilz/AppVersion.cs b/Pilz/AppVersion.cs index 420f7e2..09c348c 100644 --- a/Pilz/AppVersion.cs +++ b/Pilz/AppVersion.cs @@ -66,7 +66,7 @@ public class AppVersion(Version version, int build, AppChannel channel) : ICompa throw new FormatException(); if (input.StartsWith("version", StringComparison.InvariantCultureIgnoreCase)) - input = input[7..]; + input = input.Substring(7); var splitted = input.Trim().Split(' '); diff --git a/Pilz/Pilz.csproj b/Pilz/Pilz.csproj index 4d4b5a4..c41f657 100644 --- a/Pilz/Pilz.csproj +++ b/Pilz/Pilz.csproj @@ -1,11 +1,11 @@  - net8.0 + net8.0;netstandard2.0 latest enable annotations - 2.3.0 + 2.3.1