Skip to content

fix: self-contained publish + Windows App Runtime 1.8.7 (v1.0.12) - #25

Merged
pexatar merged 1 commit into
mainfrom
fix/iss-runonoceid
May 5, 2026
Merged

pexatar merged 1 commit into
mainfrom
fix/iss-runonoceid

Conversation

@pexatar

@pexatar pexatar commented May 5, 2026

Copy link
Copy Markdown
Owner

Summary

  • STATUS_INVALID_IMAGE_HASH on Windows 11 25H2: Upgraded bundled Windows App Runtime from 1.8.260101001 to 1.8.260416003 (released 2026-04-21), which fixes a compatibility bug specific to Windows 11 25H2 (Build 26200+).
  • ".NET must be installed" on startup: Switched PassKey.Desktop back to self-contained publishing. The .NET runtime is now bundled in the application folder — no external .NET 10 installer needed. The dotnet-runtime-10.0.7-win-x64.exe has been removed from the installer entirely.
  • HVCI / Code Integrity: Microsoft.UI.Xaml.dll is still not bundled (WindowsAppSDKSelfContained is not set). It is loaded from the system-installed Windows App Runtime via Bootstrap.Initialize(), so Windows Code Integrity always accepts it.

Test plan

  • Build: 0 errors, 0 warnings
  • Tests: 176/176 passing
  • coreclr.dll present in publish folder (self-contained confirmed)
  • Microsoft.UI.Xaml.dll absent from publish folder (not bundled)
  • Installed and launched on Windows 11 25H2 bare metal — ✅ app opens
  • Installed and launched on Windows 11 25H2 VirtualBox VM — ✅ app opens

🤖 Generated with Claude Code

…0.12

Three compounding issues prevented PassKey from launching on installed systems:

1. STATUS_INVALID_IMAGE_HASH (v1.0.9/v1.0.10): Windows App Runtime 1.8.260101001
   has a compatibility bug with Windows 11 25H2 (Build 26200+). Fixed by upgrading
   to Windows App Runtime 1.8.260416003 (released 2026-04-21).

2. ".NET must be installed" (v1.0.10/v1.0.11): The bundled dotnet-runtime installer
   was failing silently on machines with an existing .NET 8/9 installation (the
   DotNet10Installed check returned a false positive, skipping the installer).
   Fixed by switching PassKey.Desktop back to self-contained publishing — the .NET
   runtime is now bundled in the application folder, no external installer needed.

3. Microsoft.UI.Xaml.dll is NOT bundled (WindowsAppSDKSelfContained is not set),
   so HVCI/Code Integrity never rejects it. Bootstrap.Initialize() loads it from
   the system-installed Windows App Runtime at runtime.

Verified working on: Windows 11 25H2 (Build 26200) — both bare metal and VirtualBox.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@pexatar
pexatar merged commit c226897 into main May 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant