Repository navigation
【BUG】Windows 启动崩溃/静默失败:安装目录继承孤立 AppContainer SID 但缺少 ALL APPLICATION PACKAGES 授权 #10983
Replies: 1 comment 1 reply
|
This is Electron's check, not DSH's sandbox. The repair is to remove the stray package entry. The FATAL text you quoted ("its ACL has an entry for an AppContainer package SID but none for ALL APPLICATION PACKAGES") is Chromium's install-directory access check: when an installation directory carries a package SID ACE without the That is exactly what the bundled & '<skill-dir>\scripts\diagnose-windows-sandbox-acl.ps1' -Path '<install-dir>' -AllowRoot '<install-dir>' -Out '<recovery-dir>'Every changed DACL is backed up, re-read to verify, and paired with a rollback command. Expect it to refuse "managed application trees" — if the install directory counts as one, it will say so instead of touching it, and you will need the same edit by hand ( Note the Windows uninstaller does not repair this: it removes app data, not a volume or parent-directory ACL, and an in-place update inherits the ACL it finds. That is why reinstalling did not clear it. I checked that the asset exists at the rc.3 tag ( |
Uh oh!
There was an error while loading. Please reload this page.
标题:Windows 启动崩溃/静默失败:安装目录继承孤立 AppContainer SID 但缺少 ALL APPLICATION PACKAGES 授权
环境
D:\Application\DeepSeek Harness(非 Program Files)D:\Application\DeepSeekHarnes,直接安装无错误现象
启动时渲染进程崩溃,日志为
Error: Desktop renderer exited: crashed。卸载重装最新版后变为完全静默无响应、无日志、不启动。添加--no-sandbox可启动;--disable-gpu和--disable-gpu-sandbox均无效。根因定位(两台机器 icacls 对比确证)
故障机器
D:\Application的 ACL 包含孤立 AppContainer SID(S-1-15-3-1024-3635283841-...)和包 SID(S-1-15-2-1971753839-...),但缺少ALL APPLICATION PACKAGES(S-1-15-2-1)和ALL RESTRICTED APPLICATION PACKAGES(S-1-15-2-2)的读取/执行授权。DSH 安装目录继承该 ACL 后,Chromium 沙箱受限令牌因 DACL 中存在 AppContainer ACE 而触发访问检查,却找不到允许自己通过的 ACE,导致沙箱子进程无法读取安装目录(如icudtl.dat),启动即崩溃。正常机器
D:\Application的 ACL 不含任何 AppContainer SID,DSH 安装目录继承的是普通 DACL,沙箱不触发 AppContainer 访问检查,因此正常工作。复现与修复
对故障机器 DSH 安装目录执行以下命令后恢复正常,无需任何启动参数:
建议
在 Windows 安装器(NSIS 或其他打包方式)的安装/更新流程中,主动为
$INSTDIR授予ALL RESTRICTED APPLICATION PACKAGES(SIDS-1-15-2-2)的可继承读取执行权限,并检查icacls退出码,失败时报错而非静默继续。参考 NSIS 写法:Electron 生态已有多个项目采用此方案修复同类启动崩溃。
附:两台机器 icacls 输出对比
故障机器(MECHREVO)
D:\Application(关键行:含S-1-15-3-1024-...和S-1-15-2-1971753839-...,无ALL APPLICATION PACKAGES):故障机器 DSH 安装目录(补授权后出现
ALL APPLICATION PACKAGES):正常机器(REDMI)
D:\Application(无任何 AppContainer SID):正常机器 DSH 安装目录继承同样干净的 ACL,无 AppContainer 条目。
All reactions