rubuild file struct 2

This commit is contained in:
Nitload
2024-05-28 20:32:45 +08:00
parent 0cac40255b
commit 5033a6d50b
45 changed files with 886 additions and 618 deletions
@@ -31,7 +31,9 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
@@ -40,7 +42,28 @@ namespace StgSharp
public static unsafe partial class StgSharp
{
static byte[] _currentHash;
private static bool _inited;
internal const int ssdSegmentLength = 16;
public static byte[] CurrentAssemblyHash
{
get
{
if (_currentHash == null)
{
string route = Assembly.GetExecutingAssembly().Location;
string time = DateTime.UtcNow.ToString();
using (SHA256 sh = SHA256.Create())
{
byte[] bytes = Encoding.UTF8.GetBytes(route);
_currentHash = sh.ComputeHash(bytes);
}
}
return _currentHash;
}
}
/// <summary>
/// Init an instance of OpenGL program,
@@ -76,5 +99,5 @@ namespace StgSharp
}
}
}//------------------------end of class------------------------//
}
+27 -1
View File
@@ -64,6 +64,8 @@ namespace StgSharp
VK
}
public static partial class StgSharp
{
@@ -83,6 +85,29 @@ namespace StgSharp
mainTimeProvider = new StgSharpTime();
MainTimeProvider.StartProvidingTime();
InternalIO.glfwInit();
InternalIO.InternalAppendLog("\n\n\n");
InternalIO.InternalWriteLog(
$"Program {Assembly.GetEntryAssembly()!.FullName} Started.",
LogType.Info);
}
public static void LogError(Exception ex)
{
InternalIO.InternalWriteLog(ex.Message, LogType.Error);
}
public static void LogWarning(string log)
{
InternalIO.InternalWriteLog(log, LogType.Warning);
}
public static void LogWarning(Exception notVerySeriesException)
{
InternalIO.InternalWriteLog(notVerySeriesException.Message, LogType.Warning);
}
public static void LogInfo(string log)
{
InternalIO.InternalWriteLog(log, LogType.Info);
}
public static void Mark(bool needConsole)
@@ -97,6 +122,7 @@ namespace StgSharp
public static void Terminate()
{
MainTimeProvider.Terminate();
InternalIO.glfwTerminate();
}
public static void Track(
@@ -129,7 +155,7 @@ namespace StgSharp
}
/// <summary>
/// Write a log message to log file, and mark the level of this message.
/// Write a log message to log file, and mark the _level of this message.
/// </summary>
/// <param name="message">A string contains information of how current evironment runs.</param>
/// <param name="logType">The severity of current message.</param>
@@ -28,7 +28,7 @@
//
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
using StgSharpDebug.Logic;
using StgSharp.Logic;
using System;
using System.Collections.Generic;