WSA安装失败到底卡在哪一步?WSABuilds Install.ps1脚本实操指南
WSA安装失败到底卡在哪一步WSABuilds Install.ps1脚本实操指南【免费下载链接】WSABuildsRun Windows Subsystem For Android on your Windows 10 and Windows 11 PC using prebuilt binaries with Google Play Store (MindTheGapps) and/or Magisk or KernelSU (root solutions) built in.项目地址: https://gitcode.com/GitHub_Trending/ws/WSABuilds双击Run.bat黑窗口的标题栏跳成 Installing MagiskOnWSA....几秒后要么弹出新窗口要么屏幕变红停住——这就是运行 WSABuilds 的Install.ps1脚本时的真实观感。这个开源项目把预装了 Google Play 商店、Magisk 或 KernelSU 的 WSAWindows 安卓子系统打成可以直接下载的压缩包而这份脚本的活儿就是把这套 WSA 注册进你的 Windows 并跑通依赖。它的主脚本放在 安装器目录x64和arm64子目录里各有一份拷贝行为基本一致只有检测 PowerShell 版本的写法略有差别。与其逐行念脚本不如换个问法这次安装最容易断在哪一步每一处断点脚本又埋了什么兜底下面按断点逐个拆。窗口起来之前的两个拦路虎如果你不是用管理员身份跑的脚本做的第一件事不是装 WSA而是弹一次 UAC 提权随后由提权后的窗口再开一个普通窗口去执行完整流程原窗口则安静退出。原因是安装 Appx 包本身并不强制要管理员但后面的注册表写入、Windows 功能开关这些操作要执行策略也得先放开所以提权只是前置条件不是安装本体。紧接着它挑解释器在 Windows 11 且检测到pwsh.exe时优先用新版 PowerShell否则退回老版powershell.exe。系统层面的部分 API 在新旧版本里行为不一致能挑就挑稳的那个。一段静悄悄的准备一个注册表项、一个功能、一批资源接下来有几步在无声地进行。先把注册表里的一个开关置为 1意思是允许在没有开发者许可证的情况下跑开发模式——WSA 本质是开发态安装的包少了这一步后面的注册会被拒reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock /t REG_DWORD /f /v AllowDevelopmentWithoutDevLicense /d 1再查虚拟化平台Virtual Machine Platform功能没开就当场开启然后停下来问你按 y 重启。这个功能必须重启才生效脚本能替你把功能打开但重启得你亲自按 y 确认不按就直接退出留待你重启后手动再跑。这是安装途中一次强制断点。还有一步容易被忽略如果目录里同时有MakePri.ps1和makepri.exe脚本会调用 makepri 把多语言资源合并进resources.pri再写回AppxManifest.xml。这步失败只会警告你WSA 设置将一直是英文然后继续装——资源影响的是界面语言不是安装成败。重头戏一行 Add-AppxPackage 是怎么把 WSA 装上的真正动手前脚本做了三件事。先读AppxManifest.xml取出包名、版本、CPU 架构和依赖清单。每个依赖都会拿机器上已装的版本只算同架构的跟清单要求的最低版本比一比够格就打印一句 Nothing to do 跳过不够就把目录里对应的.appx装上。屏幕上会逐条滚动依赖包名你一眼能看出这台机器是全新安装还是在补依赖。然后查机器上是否已有同名 WSA。查到了、而且不是开发模式注册的就警告你已有一个 WSA请先卸载问按不按 y不按直接退出。这一步保证新旧版本不打架。最后如果WsaClient进程还活着先让它/shutdown体面退出不配合就Stop-Process强杀——安装时占用中的文件覆盖不掉。铺垫完核心就一行Add-AppxPackage -ForceApplicationShutdown -ForceUpdateFromAnyVersion -Register .\AppxManifest.xml-Register表示从清单注册而不是装 appx 文件另外两个 Force 参数分别负责踢掉占用进程和无视版本差异强升。成功的话屏幕一清脚本顺手用wsa://协议拉起 Magisk 和 Play 商店收尾。升级失败时保数据卸载再试一次上面那行命令如果返回失败脚本不会只甩一句安装失败。它会先看机器上有没有旧版 WSA有的话提示更新失败按任意键在保留用户数据的前提下卸载现有安装。你按键后它用-PreserveApplicationData卸载旧版本——Android 应用的数据留着但开始菜单里的安卓应用图标会消失提示里也如实交代了。卸载完再把Add-AppxPackage -Register原样重跑一遍成了就走拉起 Magisk Play 商店的收尾流程。注意这条兜底的触发前提是本来就有旧版本。如果这台机器从没装过 WSA首次安装失败时没有可保的东西脚本只会把错误抛给你。所以首装翻红时值得盯紧的是 Add-AppxPackage 那一步的报错内容。看到红色报错先排查这三个小坑一个是依赖安装撞上 Windows Terminal。部分 Appx 操作在 Terminal 里就是不正常脚本会检查WT_SESSION环境变量在的话先清掉再用 conhost.exe 把整个脚本在老式控制台里重启一遍当前窗口退出If ($env:WT_SESSION) { $env:WT_SESSION $null Start-Process conhost.exe -Args powershell.exe -ExecutionPolicy Bypass -Command Set-Location $PSScriptRoot; $PSCommandPath exit 1 }所以如果你看到Restarting to conhost.exe字样和弹出来的新窗口属于脚本在自救不是坏了。另一个是你用的 PowerShell 本身来自 MSIX 包$PSHOME路径里带8wekyb3d8bbwe。这种 PowerShell 加载不了 DISM 模块虚拟化平台那步的检查会直接报错脚本的对策是转回 Windows PowerShell 导入模块。实操中这步翻车的话换个普通 powershell 窗口重跑基本就能过。最后一个坑藏在最前面filelist.txt文件完整性检查比上面所有步骤都早执行清单里任何一个文件缺失它都直接告诉你重新构建并退出。下载不完整、手动动过安装文件夹的都死在这一步根本走不到后面。一句话收尾跑之前确认 BIOS 里虚拟化已开、磁盘留够几个 GB安装与卸载的细节可翻 安装文档。中途停下时对照报错停在哪一步回上面找到对应的兜底逻辑——大多数断点脚本都留了后手只是需要你按下它要你按的那个键。【免费下载链接】WSABuildsRun Windows Subsystem For Android on your Windows 10 and Windows 11 PC using prebuilt binaries with Google Play Store (MindTheGapps) and/or Magisk or KernelSU (root solutions) built in.项目地址: https://gitcode.com/GitHub_Trending/ws/WSABuilds创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考