fix(ci): build RDPWrapOffsetFinder via .sln to fix resolution

RDPWrapOffsetFinder.vcxproj uses \ for both include paths
(zydis/include, zydis/dependencies/zycore/include, zydis/msvc) and for
the linker's AdditionalDependencies (zydis/msvc/bin/ReleaseX*/Zydis.lib).

When msbuild targets the vcxproj directly SolutionDir defaults to the
vcxproj's own directory (RDPWrapOffsetFinder/), making all those paths
point at a non-existent sibling - hence C1083 on every TU.

Fix: build RDPWrapOffsetFinder.sln /t:RDPWrapOffsetFinder so MSBuild
sets SolutionDir to the submodule root (src-csharp/RDPOffsetFinder/)
where zydis/ actually lives. Zydis.dll is still compiled first via its
own standalone vcxproj (which has no SolutionDir dependency).
pull/4062/head
Simon Jackson 1 month ago
parent c3028136b1
commit b9cad1ddc1

@ -112,15 +112,18 @@ jobs:
@{ Platform = 'x64'; ZydisCfg = 'Release MD DLL'; ZydisBin = 'ReleaseX64'; Arch = 'x64' }
@{ Platform = 'Win32'; ZydisCfg = 'Release MD DLL'; ZydisBin = 'ReleaseX86'; Arch = 'x86' }
)) {
# Build Zydis DLL
# Build Zydis DLL directly (standalone vcxproj, no SolutionDir dependency)
msbuild src-csharp/RDPOffsetFinder/zydis/msvc/zydis/Zydis.vcxproj `
/p:Configuration="$($cfg.ZydisCfg)" `
/p:Platform="$($cfg.Platform)" `
/p:PlatformToolset=v143 `
/v:minimal
# Build RDPWrapOffsetFinder
msbuild src-csharp/RDPOffsetFinder/RDPWrapOffsetFinder/RDPWrapOffsetFinder.vcxproj `
# Build RDPWrapOffsetFinder via the .sln so $(SolutionDir) resolves to
# the submodule root where zydis/ lives — the vcxproj AdditionalInclude-
# Directories use $(SolutionDir)\zydis\include and fail if built directly.
msbuild src-csharp/RDPOffsetFinder/RDPWrapOffsetFinder.sln `
/t:RDPWrapOffsetFinder `
/p:Configuration=Release `
/p:Platform="$($cfg.Platform)" `
/p:PlatformToolset=v143 `

Loading…
Cancel
Save