Files
PowerToys/tools/Verification scripts
Boliang Zhang (from Dev Box) 8cfc9bd87a Move MSIX context menu DLLs to ContextMenu subfolder to fix DACL contamination
MSIX sparse package registration adds AppContainer SIDs to the ExternalLocation
folder DACL on Windows 23H2. When ExternalLocation pointed to the root install
folder, prevhost.exe (LOW integrity) got ACCESS_DENIED loading preview handler
DLLs. This isolates the 4 context menu COM DLLs and .msix packages into a
ContextMenu\ subfolder so DACL changes don't affect the root folder.

Changes:
- Set OutDir to ContextMenu\ in all 4 context menu vcxproj files
- Update ExternalLocation path in 3 module DLLs (ImageResizer, PowerRename,
  FileLocksmith) and NewPlus MSIX registration
- Add ..\\ prefix to icon/EXE paths in 4 context menu DLLs
- Update runner to load NewPlus from ContextMenu\ subfolder
- Add ContextMenu.wxs installer fragment and update Product.wxs/wixproj
- Use CopyFileToFolders for MSIX assets to ensure they copy to root Assets\
- Add empty-filename guard in generateAllFileComponents.ps1
- Update verification script paths

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-18 00:51:44 +08:00
..