mirror of
https://github.com/jamesstringer90/appsandbox.git
synced 2026-10-22 02:52:49 -05:00
YubiKey-gated signing/packaging driven from the VS Release|x64 build: - make-release.ps1 / sign-drivers.ps1: EV-sign all binaries + driver .sys/.dll, submit drivers to Microsoft for attestation in parallel, deposit the returned MS-signed drivers into bin\Release\drivers, and build a flat AppSandbox-<ver>-x64.zip. Token presence is detected via WinSCard + a silent NCrypt key-open, so an unplugged or unrelated card never triggers an "insert smart card" dialog; no token => test-sign only, no packaging. - AppSandboxPackage.vcxproj runs it as a post-build step. - Directory.Build.props/targets + build/version.rc: single-source version stamped into every binary and into the driver INFs (StampInf). - VDD INF: pull WUDFRd via Include/Needs + Win11 decoration to pass infverif /h for Partner Center submission. - Default new Windows VMs to Test Mode off (shipped drivers are MS-signed). - SIGNING.md documents the git-ignored partner-center.local.json that you must create with the Entra API secrets for driver attestation. Partner Center credentials stay in git-ignored tools/sign/*.local.* files.
37 lines
1.8 KiB
XML
37 lines
1.8 KiB
XML
<Project>
|
|
<!--
|
|
SINGLE SOURCE OF TRUTH for the App Sandbox version.
|
|
|
|
Edit the four numbers below and nothing else. Everything derives from them at build time:
|
|
* every app binary's FileVersion / ProductVersion (via build\version.rc, wired in
|
|
Directory.Build.targets)
|
|
* both drivers' DriverVer (<TimeStamp> in the driver .vcxproj)
|
|
* the release zip name (make-release.ps1)
|
|
* the Microsoft submission + product name (sign-drivers.ps1)
|
|
|
|
MSBuild auto-imports this file into every project in the tree, so no <Import> is needed.
|
|
-->
|
|
<PropertyGroup>
|
|
<AsbVersionMajor>0</AsbVersionMajor>
|
|
<AsbVersionMinor>1</AsbVersionMinor>
|
|
<AsbVersionPatch>0</AsbVersionPatch>
|
|
<AsbVersionRevision>0</AsbVersionRevision>
|
|
|
|
<!-- Derived forms - do not edit. -->
|
|
<AsbVersion>$(AsbVersionMajor).$(AsbVersionMinor).$(AsbVersionPatch).$(AsbVersionRevision)</AsbVersion>
|
|
<AsbVersionComma>$(AsbVersionMajor),$(AsbVersionMinor),$(AsbVersionPatch),$(AsbVersionRevision)</AsbVersionComma>
|
|
<AsbVersionShort>$(AsbVersionMajor).$(AsbVersionMinor).$(AsbVersionPatch)</AsbVersionShort>
|
|
</PropertyGroup>
|
|
|
|
<!--
|
|
The WDK's build-time INF verifier (DPVerifierTask) can't load x86\InfVerif.dll outside the
|
|
Visual Studio build environment, so command-line / CI builds error on it (HRESULT 0x8007007E).
|
|
Skip it there ONLY - VS GUI builds still run it, and the INF is re-verified by Microsoft on
|
|
every submission. $(BuildingInsideVisualStudio) is set to 'true' by the IDE and is empty for
|
|
command-line msbuild.
|
|
-->
|
|
<PropertyGroup Condition="'$(BuildingInsideVisualStudio)' != 'true'">
|
|
<SkipPackageVerification>true</SkipPackageVerification>
|
|
</PropertyGroup>
|
|
</Project>
|