From e04542606e239946b3ab707d93bcdc0d16972272 Mon Sep 17 00:00:00 2001
From: Lightczx <1686188646@qq.com>
Date: Tue, 7 May 2024 13:36:04 +0800
Subject: [PATCH] code style
---
src/Snap.Hutao/Snap.Hutao/Core/Convert.cs | 25 -------------------
.../Snap.Hutao/Core/IO/FileOperation.cs | 1 -
.../Snap.Hutao/Core/IO/Hashing/Hash.cs | 11 +++++---
.../Snap.Hutao/Core/IO/Hashing/MD5.cs | 2 +-
.../Snap.Hutao/Core/IO/Hashing/SHA256.cs | 2 +-
.../Snap.Hutao/Core/RuntimeOptions.cs | 3 ++-
.../Hoyolab/DataSigning/DataSignAlgorithm.cs | 4 ++-
.../Capture/IGraphicsCaptureItemInterop.cs | 2 --
.../IGraphicsCaptureItemInteropExtension.cs | 1 -
.../Snap.Hutao/Win32/UI/Shell/IFileDialog.cs | 1 -
.../Shell/PropertiesSystem/IPropertyChange.cs | 1 -
11 files changed, 15 insertions(+), 38 deletions(-)
delete mode 100644 src/Snap.Hutao/Snap.Hutao/Core/Convert.cs
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/Convert.cs b/src/Snap.Hutao/Snap.Hutao/Core/Convert.cs
deleted file mode 100644
index a9dc770f..00000000
--- a/src/Snap.Hutao/Snap.Hutao/Core/Convert.cs
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright (c) DGP Studio. All rights reserved.
-// Licensed under the MIT license.
-
-using System.Security.Cryptography;
-using System.Text;
-
-namespace Snap.Hutao.Core;
-
-///
-/// 支持Md5转换
-///
-[HighQuality]
-internal static class Convert
-{
- ///
- /// 获取字符串的MD5计算结果
- ///
- /// 源字符串
- /// 计算的结果
- public static string ToMd5HexString(string source)
- {
- byte[] hash = MD5.HashData(Encoding.UTF8.GetBytes(source));
- return System.Convert.ToHexString(hash);
- }
-}
\ No newline at end of file
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/IO/FileOperation.cs b/src/Snap.Hutao/Snap.Hutao/Core/IO/FileOperation.cs
index f75d17cd..00b97aa5 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/IO/FileOperation.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/IO/FileOperation.cs
@@ -4,7 +4,6 @@
using Snap.Hutao.Win32.System.Com;
using Snap.Hutao.Win32.UI.Shell;
using System.IO;
-using System.Runtime.InteropServices;
using static Snap.Hutao.Win32.Macros;
using static Snap.Hutao.Win32.Ole32;
using static Snap.Hutao.Win32.Shell32;
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/Hash.cs b/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/Hash.cs
index f3eb6e5f..86f4b96a 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/Hash.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/Hash.cs
@@ -8,12 +8,17 @@ namespace Snap.Hutao.Core.IO.Hashing;
internal static class Hash
{
- public static string SHA1HexString(string input)
+ public static unsafe string SHA1HexString(string input)
{
- return HashCore(System.Convert.ToHexString, SHA1.HashData, Encoding.UTF8.GetBytes, input);
+ return HashCore(Convert.ToHexString, SHA1.HashData, Encoding.UTF8.GetBytes, input);
}
- private static TResult HashCore(Func resultConverter, Func hashMethod, Func bytesConverter, TInput input)
+ public static unsafe string MD5HexString(string input)
+ {
+ return HashCore(Convert.ToHexString, System.Security.Cryptography.MD5.HashData, Encoding.UTF8.GetBytes, input);
+ }
+
+ private static unsafe TResult HashCore(Func resultConverter, Func hashMethod, Func bytesConverter, TInput input)
{
return resultConverter(hashMethod(bytesConverter(input)));
}
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/MD5.cs b/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/MD5.cs
index 47f4e25a..f00d0e2b 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/MD5.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/MD5.cs
@@ -34,6 +34,6 @@ internal static class MD5
public static async ValueTask HashAsync(Stream stream, CancellationToken token = default)
{
byte[] bytes = await System.Security.Cryptography.MD5.HashDataAsync(stream, token).ConfigureAwait(false);
- return System.Convert.ToHexString(bytes);
+ return Convert.ToHexString(bytes);
}
}
\ No newline at end of file
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/SHA256.cs b/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/SHA256.cs
index 4302ff77..0a3552b9 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/SHA256.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/IO/Hashing/SHA256.cs
@@ -18,6 +18,6 @@ internal static class SHA256
public static async ValueTask HashAsync(Stream stream, CancellationToken token = default)
{
byte[] bytes = await System.Security.Cryptography.SHA256.HashDataAsync(stream, token).ConfigureAwait(false);
- return System.Convert.ToHexString(bytes);
+ return Convert.ToHexString(bytes);
}
}
\ No newline at end of file
diff --git a/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs b/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs
index 677b2e20..fcc0f23b 100644
--- a/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs
@@ -3,6 +3,7 @@
using Microsoft.Web.WebView2.Core;
using Microsoft.Win32;
+using Snap.Hutao.Core.IO.Hashing;
using Snap.Hutao.Core.Setting;
using System.IO;
using System.Security.Principal;
@@ -50,7 +51,7 @@ internal sealed class RuntimeOptions
{
string userName = Environment.UserName;
object? machineGuid = Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\", "MachineGuid", userName);
- return Convert.ToMd5HexString($"{userName}{machineGuid}");
+ return Hash.MD5HexString($"{userName}{machineGuid}");
});
private readonly LazySlim<(string Version, bool Supported)> lazyWebViewEnvironment = new(() =>
diff --git a/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/DataSigning/DataSignAlgorithm.cs b/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/DataSigning/DataSignAlgorithm.cs
index 48914216..89ee0065 100644
--- a/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/DataSigning/DataSignAlgorithm.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Web/Hoyolab/DataSigning/DataSignAlgorithm.cs
@@ -1,6 +1,8 @@
// Copyright (c) DGP Studio. All rights reserved.
// Licensed under the MIT license.
+using Snap.Hutao.Core.IO.Hashing;
+
namespace Snap.Hutao.Web.Hoyolab.DataSigning;
internal static class DataSignAlgorithm
@@ -19,7 +21,7 @@ internal static class DataSignAlgorithm
}
#pragma warning disable CA1308
- string check = Core.Convert.ToMd5HexString(dsContent).ToLowerInvariant();
+ string check = Hash.MD5HexString(dsContent).ToLowerInvariant();
#pragma warning restore CA1308
return $"{t},{r},{check}";
diff --git a/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInterop.cs b/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInterop.cs
index 77fe1f56..0221adff 100644
--- a/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInterop.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInterop.cs
@@ -1,10 +1,8 @@
// Copyright (c) DGP Studio. All rights reserved.
// Licensed under the MIT license.
-using Microsoft.UI.Composition;
using Snap.Hutao.Win32.Foundation;
using Snap.Hutao.Win32.Graphics.Gdi;
-using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace Snap.Hutao.Win32.System.WinRT.Graphics.Capture;
diff --git a/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInteropExtension.cs b/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInteropExtension.cs
index 1b68b1ce..564eee49 100644
--- a/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInteropExtension.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Win32/System/WinRT/Graphics/Capture/IGraphicsCaptureItemInteropExtension.cs
@@ -3,7 +3,6 @@
using Snap.Hutao.Win32.Foundation;
using Snap.Hutao.Win32.Graphics.Gdi;
-using System.Runtime.InteropServices;
using Windows.Graphics.Capture;
namespace Snap.Hutao.Win32.System.WinRT.Graphics.Capture;
diff --git a/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/IFileDialog.cs b/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/IFileDialog.cs
index 2d8ea379..db867b29 100644
--- a/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/IFileDialog.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/IFileDialog.cs
@@ -2,7 +2,6 @@
// Licensed under the MIT license.
using Snap.Hutao.Win32.Foundation;
-using Snap.Hutao.Win32.System.Com;
using Snap.Hutao.Win32.UI.Shell.Common;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
diff --git a/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/PropertiesSystem/IPropertyChange.cs b/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/PropertiesSystem/IPropertyChange.cs
index efe7b831..804f526b 100644
--- a/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/PropertiesSystem/IPropertyChange.cs
+++ b/src/Snap.Hutao/Snap.Hutao/Win32/UI/Shell/PropertiesSystem/IPropertyChange.cs
@@ -2,7 +2,6 @@
// Licensed under the MIT license.
using Snap.Hutao.Win32.Foundation;
-using Snap.Hutao.Win32.System.Com;
using Snap.Hutao.Win32.System.Com.StructuredStorage;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;