From 2ab48681364fcec2d8ff0f6d0909beae676773b9 Mon Sep 17 00:00:00 2001 From: Simon Jackson Date: Thu, 2 Apr 2026 15:04:48 +0100 Subject: [PATCH] fix(ci): use sln_platform (x86/x64) for OffsetFinder exe output path The vcxproj has no custom OutDir so MSBuild uses the default: Platform\Config\. When building via .sln with /p:Platform=x86 the platform value propagated to the vcxproj is 'x86' (the CLI override wins over the solution's Win32 mapping), so the exe lands in x86\Release\, not Win32\Release\. - build-offsetfinder.yml: finder_plat: Win32 -> x86 - build-and-release.yml: exeSrc path uses SlnPlatform (x86) not Platform (Win32) Zydis.vcxproj is still invoked directly with Platform=Win32 - unchanged. --- .github/workflows/build-and-release.yml | 5 +++-- .github/workflows/build-offsetfinder.yml | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-and-release.yml b/.github/workflows/build-and-release.yml index a4d7c9f..adfd873 100644 --- a/.github/workflows/build-and-release.yml +++ b/.github/workflows/build-and-release.yml @@ -132,8 +132,9 @@ jobs: /v:minimal $arch = $cfg.Arch - # .sln build outputs to SolutionDir//Release/ (not //Release/) - $exeSrc = "src-csharp/RDPOffsetFinder/$($cfg.Platform)/Release/RDPWrapOffsetFinder.exe" + # .sln build outputs to SolutionDir//Release/ where SlnPlatform is x86/x64 + # (solution GlobalSection maps x86->Win32 internally, but $(Platform) seen by vcxproj is x86) + $exeSrc = "src-csharp/RDPOffsetFinder/$($cfg.SlnPlatform)/Release/RDPWrapOffsetFinder.exe" $dllSrc = "src-csharp/RDPOffsetFinder/zydis/msvc/bin/$($cfg.ZydisBin)/Zydis.dll" Copy-Item $exeSrc ".\RDPWrapOffsetFinder_$arch.exe" Copy-Item $dllSrc ".\Zydis_$arch.dll" diff --git a/.github/workflows/build-offsetfinder.yml b/.github/workflows/build-offsetfinder.yml index fd02364..036adaf 100644 --- a/.github/workflows/build-offsetfinder.yml +++ b/.github/workflows/build-offsetfinder.yml @@ -34,7 +34,7 @@ jobs: sln_platform: x86 zydis_cfg: "Release MD DLL" zydis_bin: ReleaseX86 - finder_plat: Win32 + finder_plat: x86 steps: - name: Checkout repository (with submodules)