From cdce3a6b1a1f07c8da2f78f23f4f856f145c93bb Mon Sep 17 00:00:00 2001 From: tiennm99 Date: Fri, 27 Feb 2026 15:17:21 +0700 Subject: [PATCH] feat: update actions --- .github/workflows/release.yml | 10 ++++------ TimeMocker.Hook/InjectionEntryPoint.cs | 12 +++++++++--- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7538907..bb44bac 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,19 +10,17 @@ permissions: jobs: build-and-release: - runs-on: windows-latest + runs-on: windows-2019 steps: - name: Checkout uses: actions/checkout@v6 - - name: Setup .NET - uses: actions/setup-dotnet@v5 - with: - dotnet-version: 10.x + - name: Setup MSBuild + uses: microsoft/setup-msbuild@v2 - name: Build Solution - run: dotnet build TimeMocker.sln -c Release -p:Platform=x64 + run: msbuild TimeMocker.sln -p:Configuration=Release -p:Platform=x64 -m - name: Prepare Release Artifacts run: | diff --git a/TimeMocker.Hook/InjectionEntryPoint.cs b/TimeMocker.Hook/InjectionEntryPoint.cs index 613f796..92a66dd 100644 --- a/TimeMocker.Hook/InjectionEntryPoint.cs +++ b/TimeMocker.Hook/InjectionEntryPoint.cs @@ -65,23 +65,29 @@ namespace TimeMocker.Hook public void Run(RemoteHooking.IContext context, string mmfName) { + string logPath = Path.Combine(Path.GetTempPath(), "TimeMocker.Hook.log"); + try { + File.AppendAllText(logPath, $"[{DateTime.Now}] Starting hook, MMF: {mmfName}\r\n"); + // Open the shared memory created by the UI process _mmf = System.IO.MemoryMappedFiles.MemoryMappedFile.OpenExisting(mmfName); _view = _mmf.CreateViewAccessor(0, Marshal.SizeOf()); + File.AppendAllText(logPath, $"[{DateTime.Now}] MMF opened successfully\r\n"); InstallHooks(); + File.AppendAllText(logPath, $"[{DateTime.Now}] Hooks installed successfully\r\n"); + RemoteHooking.WakeUpProcess(); + File.AppendAllText(logPath, $"[{DateTime.Now}] Process woken up\r\n"); // Keep alive until process exits while (true) Thread.Sleep(500); } catch (Exception ex) { - File.AppendAllText( - Path.Combine(Path.GetTempPath(), "TimeMocker.Hook.log"), - $"[{DateTime.Now}] ERROR: {ex}\r\n"); + File.AppendAllText(logPath, $"[{DateTime.Now}] ERROR: {ex.GetType().Name}: {ex.Message}\r\n{ex.StackTrace}\r\n"); } finally {