
简介面向Windows 10 LTSC用户的Microsoft Store添加工具包解决LTSC精简版无法安装便笺、计算器等UWP应用的问题。压缩包共16个文件以6个appx组件包、4个appxbundle安装包为核心辅以4个xml配置文件、1个cmd脚本和1份Markdown说明文档整体仅67.23MB。包内整合了.NET Native框架与运行时、Visual C库VCLibs、Windows Store主程序、Store购买应用、Xbox身份验证提供程序及Desktop AppInstaller覆盖商店运行所需的全部依赖。借助Add-Store.cmd脚本可自动完成部署免去手动逐条安装的繁琐特别适合需要在LTSC环境下补充常用应用的企业IT人员与进阶用户。目前已有1551人学习下载验证了其在真实场景中的实用价值。1. 给 LTSC 2019 补上微软商店这个东西到底解决什么问题LTSC 是所有 Windows 版本里最干净的但也最“少”的它砍掉了 UWP 应用生态微软商店MicrosoftStore默认不存在。很多企业和运维老哥喜欢 LTSC是冲着它稳定、没广告、更新节奏慢可真到了要装某个必须走商店的应用比如某些厂商的 UWP 驱动、新版截图工具、HEVC 视频扩展时卡住了。LTSC-Add-MicrosoftStore-2019.7z 这种工具包就是专门给 Windows 10 企业版 LTSC 2019对应 1809 内核这个特定版本补回商店及其运行依赖的离线组件包。适合在没有外网商店分发环境的办公网里快速给整批机器装好商店而不是一台台去系统盘里挖库文件。你拿到这个包之后不用联网下载 AppX因为它已经把商店本体和依赖打包好了照着做就能装回来。但这里有个关键前提LTSC 2019 的商店安装方式和 Win10 普通版有差别直接下个 .appx 丢进 PowerShell 往往报错。下面我会从依赖拆解开始再给你完整命令和避坑清单。2. LTSC 2019 的商店不是什么都没了拆解商店的四个依赖组件2.1 为什么 LTSC 2019 没有商店功能裁剪的基本逻辑LTSCLong Term Servicing Channel定位是“长期服务分支”微软给它的定义是不包含任何可能随功能更新变化的应用组件商店就是最典型的例子。LTSC 2019 系统里Appx服务仍然在wsappx进程也存在但相关 AppX 包全部处于“未部署”状态。你去C:\Program Files\WindowsApps看能发现一些系统自带的 UWP 框架但商店本体和商店所需的 UI 组件是空的。这不是系统坏了而是部署时被刻意移除了。所以“添加商店”这件事本质上不是破解或魔改而是把商店相关的 AppX 包重新注册到系统里。这里的难点在于版本匹配LTSC 2019 是 1809 内核商店从那时起就拆成了多个包包括 Store 本体、Store 的框架包、VCLibs 库、以及 .NET Native 运行时。少装一个商店就算启动了也会在加载详情页或下载应用时闪退。2.2 Store 要跑起来这四个包缺一不可我给一批 LTSC 2019 机器装过商店总结下来标准依赖组合是这四类这也是类似工具包默认包含的内部内容组件名作用缺失表现Microsoft.NET.Native.Framework与RuntimeUWP 应用的 .NET Native 运行时商店图片轮播空白搜索即闪退Microsoft.VCLibs.140.00UWP 所需的 VC 运行库点击安装/更新按钮无响应Microsoft.WindowsStore商店主程序没有开始菜单入口或启动即报错Microsoft.Store.PurchaseFramework应用许可和购买框架无法下载免费应用报 0x803D8010其中VCLibs要区分x86、x64和arm64LTSC 2019 装 x64 系统就至少需要 x64 版本但很多工具包为了兼容性会同时塞 x86 和 x64。另一个坑是Store.PurchaseFramework包在 1809 上对应的版本号很老如果你从新版本 Win10 里提取同名包强行装多半会提示“无法验证发布者签名”或“版本不兼容”。这就是为什么我强调宁可认准 2019 配套的包版本也不要贪新。2.3 这些依赖从哪来工具包的来源和信任边界市面上流行的LTSC-Add-MicrosoftStore-2019.7z一般是从 Windows 10 1809 的官方安装镜像或已安装商店的普通企业版里提取出来的。提取路径是C:\Program Files\WindowsApps但那个目录默认是系统保护状态需要拿到TrustedInstaller权限才能读文件。这也是这种工具包之所以需要被打包成 7z 放出来的原因——直接放在 U 盘里拷给普通用户点安装比让用户自己去提权提取要省事得多。但作为动手装机的工程师你拿到这类包后第一件事不是双击安装而是检查包内文件列表和签名。AppX包必须带有微软签名的.appx或.msix且版本号要匹配 1809。我见过有些“加速版”工具包会把 Win10 2004 的商店文件塞进去装上后商店能打开但下载应用时报“需要新版本的 Windows”错误。所以信任边界是只认扩展名和签名哈希不认作者截图。3. 离线添加商店到 LTSC 2019完整的 PowerShell 安装路径3.1 第一步确认当前系统版本和商店状态在解压和安装之前先打开管理员 PowerShell执行Get-ComputerInfo | Select-Object WindowsProductName, WindowsVersion, OsBuildNumber如果你看到的是Windows 10 Enterprise LTSC版本号1809编译号17763.x那这个工具包是适用的。如果版本是LTSC 202119044那这套 2019 专用包很可能装不上需要用对应 2021 的版本。命令输出的OsBuildNumber只要前四位是17763就可以继续。接着检查商店当前是否已经被部分安装Get-AppxPackage -AllUsers | Where-Object {$_.Name -like *Store*} | Format-List Name, PackageFullName, Status如果这里没有任何输出说明商店完全缺失如果有输出但状态是NotInstalled说明包被标记但未部署需要额外做“重新注册”操作。这一步能避开“明明装了却打不开”的假象很多人看到WindowsApps里有 Store 目录就以为系统有商店结果开始菜单里根本没有入口就是因为包没有Register到当前用户。3.2 第二步解压工具包并核验目录结构把 7z 包解压到一个纯英文路径比如C:\StoreFiles。不要在桌面解压因为 PowerShell 执行时的路径编码问题在中文路径下会给你足够的折磨。打开解压目录正常应该能看到一个名为Appx的文件夹里面全是.appx和.xml文件。这里你手动核对三件事Get-ChildItem -Path C:\StoreFiles -Recurse -Filter *.appx | Select-Object Name, Length第一确认有Microsoft.WindowsStore开头的文件第二确认.appx文件大小不是 0 字节第三如果有.cer证书文件说明需要先导入证书否则后面安装会报“文件被破坏”。常见工具包里会附带一个MicrosoftStore.cer或类似证书它对应的指纹应该是微软官方签名。导入证书的操作我放在 3.4 里和安装命令一起执行。3.3 第三步按依赖顺序安装四个核心包这一步是整个流程的主心骨。顺序错了会报依赖缺失先装运行时再装框架再装 VCLibs最后装商店本体。我用一条命令批量安装但为了给你讲明白拆成四条$ErrorActionPreference Stop # 1. .NET Native 框架长文件名用通配符匹配最稳 Get-ChildItem C:\StoreFiles\Appx\Microsoft.NET.Native.Framework* | ForEach-Object { Add-AppxPackage -Path $_.FullName } # 2. .NET Native 运行时 Get-ChildItem C:\StoreFiles\Appx\Microsoft.NET.Native.Runtime* | ForEach-Object { Add-AppxPackage -Path $_.FullName } # 3. VCLibs Get-ChildItem C:\StoreFiles\Appx\Microsoft.VCLibs* | ForEach-Object { Add-AppxPackage -Path $_.FullName } # 4. 商店主程序 Get-ChildItem C:\StoreFiles\Appx\Microsoft.WindowsStore* | ForEach-Object { Add-AppxPackage -Path $_.FullName }这段脚本的逻辑是用Get-ChildItem拿到包文件全路径然后交给Add-AppxPackage安装。Add-AppxPackage是 Windows 部署 UWP 应用的标准命令它会在当前用户下注册应用并把依赖包放到C:\Program Files\WindowsApps。用ForEach-Object是为了处理“同名多版本”的情况有些工具包里同时存在高版本和低版本通配符会按文件名顺序挨个安装最终生效的是最后一个匹配项。如果你确定只有一个文件也可以直接写完整路径。注意Add-AppxPackage只安装不更新。如果系统里已有旧版本商店包内又是新版本需要先加-ForceUpdateFromAnyVersion参数否则会报“已存在更高版本”。这个参数在长版本号合并时尤其有用我们放到第 5 章讲。3.4 第四步导入证书只有提示签名不可用时才需要如果你的 LTSC 2019 系统是精简版——比如某些被极限优化过、连证书库都被清理过的——安装时会出现“无法验证发布者签名”的报错。这时手动导入工具包里的证书# 先导入根证书 Import-Certificate -FilePath C:\StoreFiles\MicrosoftRootCertificate.cer -CertStoreLocation Cert:\LocalMachine\Root -Verbose # 再安装商店 AppX这次使用信任证书参数 Add-AppxPackage -Path C:\StoreFiles\Appx\Microsoft.WindowsStore*.appx -TrustCertificateImport-Certificate把证书放到“本地计算机的受信任根证书颁发机构”下这会让 AppX 的签名链完整。-TrustCertificate参数告诉部署引擎“我信任这个证书你不必再证明它是微软的”。注意这两个操作要在同一个 PowerShell 会话里做吗不需要但建议别隔太久。另外如果Import-Certificate报“已存在”说明证书库没问题是包本身的签名损坏那就要换包而不是继续硬装。3.5 第五步注册到当前用户并验证入口安装完包之后商店不会自动出现在当前用户的开始菜单里除非你登录的账户正好是安装者。对于多用户办公环境需要为每个现有用户注册商店。管理员身份下执行Get-AppxPackage -Name Microsoft.WindowsStore | ForEach-Object { Add-AppxPackage -Path $_.PackageFullName -Register }这条命令的意识是找到已安装的商店包然后以它的完整包名重新注册到当前用户配置里。注意-Register参数不加-DisableDevelopmentMode会要求开发模式所以标准写法是Add-AppxPackage -Register C:\Program Files\WindowsApps\Microsoft.WindowsStore_11811.1001.7.0_x64__8wekyb3d8bbwe\AppxManifest.xml -DisableDevelopmentMode但这里的路径里的版本号是随包变化的我不建议手写直接用上一条命令组合就安全。执行完毕后打开开始菜单搜索 “Store”能看到应用图标才算真正成功。4. 参数选择与验证方法安装完之后必须做的手动确认项4.1 商店的版本号、依赖状态和“虚假成功”的识别安装完商店后不要急着下应用。先看商店版本对不对。LTSC 2019 配套的商店版本大约是11811.1001.7.0这一代如果你的包是11901xx或更高基本是从 20H2 版本上提的后续会自动更新但初始阶段在 LTSC 2019 上运行会不流畅。查看版本Get-AppxPackage -Name Microsoft.WindowsStore | Select-Object Name, Version, Status, InstallLocationStatus必须是OkInstallLocation必须是C:\Program Files\WindowsApps\...内的目录不能是 pending 或 staging。另外检查依赖包是否全部注册Get-AppxPackage -Name Microsoft.VCLibs* | Format-Table Name, Architecture, Version, Status如果 VCLibs 的Status是Ok但商店打开后点“获取”按钮能转圈、一直不下载十有八九是Microsoft.Store.PurchaseFramework没装好。这个包不参与商店外观只参与购买/免费下载的授权流程所以很多人会忽略它。手动补装Get-ChildItem C:\StoreFiles\Appx\Microsoft.Store.PurchaseFramework* | ForEach-Object { Add-AppxPackage -Path $_.FullName }装完不用重启重新打开商店即可。4.2 用 wsappx 服务状态判断依赖是否完整LTSC 2019 上有一个著名现象安装完商店后wsappx进程常驻 CPU占用 30% 以上。正常情况wsappx只会在部署或清理 AppX 时短暂运行如果它持续高占用说明商店或相关框架包处于“半部署”状态——比如包被安装到了Pending目录系统在反复尝试完成清理。这时候的验证手段是看事件日志Get-WinEvent -LogName Microsoft-Windows-AppXDeploymentServer/Operational -MaxEvents 20 | Where-Object {$_.LevelDisplayName -eq 错误} | Format-Table TimeCreated, Message -Wrap如果日志里出现“0x80073D02”或“0x80073CF3”分别对应“包在部署中”和“包被修改”那你需要在干净启动状态下重新执行 3.3 的安装脚本并且关闭杀毒软件的“实时防护”再装。很多杀软会锁WindowsApps目录导致商店虽然注册成功但实际文件被回滚最后表现为“商店图标灰色、点不开”。4.3 常见参数组合什么时候用 -ForceUpdateFromAnyVersion什么时候用 -AllUsersAdd-AppxPackage的关键参数我整理成下表供你直接抄走用。参数作用什么时候用-Path指定 .appx/.msix 文件路径安装新包-Register从已安装目录重新注册包存在但用户入口无效-ForceUpdateFromAnyVersion用不同版本强制覆盖已有包想从旧版/不同语言版覆盖-AllUsers为所有现有用户安装办公环境批量部署-Volume指定挂载到非系统盘企业有多分区存储习惯-AllUsers这个参数很诱人但它在 LTSC 2019 上有坑如果商店的依赖包没有先装入系统镜像-AllUsers会逐个为每个用户注册过程极慢且可能出现“新增用户后商店消失”的后遗症。所以我默认做法是先不带-AllUsers让管理员账户装好再在企业分发时用CopyUserProfile或默认用户配置文件更新来覆盖。你要真想用-AllUsers请先确认依赖包均已用“面向所有用户”的方式安装过否则新老用户各有各的残缺。5. LTSC 2019 加商店的避坑清单我翻车过的五个雷5.1 报错“0x80073CF3包无法更新、相关性或验证失败”现象安装Microsoft.WindowsStore时报 0x80073CF3。原因工具包里可能同时存在Microsoft.NET.Native.Framework的两个版本ForEach-Object先装了低版本又装高版本但高版本的依赖引用被破坏了或者系统里已经存在一个来自其他来源的同名更新包签名不一致。解决先卸载现有包再重装。命令是Get-AppxPackage -Name Microsoft.NET.Native.Framework* | Remove-AppxPackage -AllUsers删除干净后回到C:\StoreFiles\Appx按住Shift右键选择“在此处打开 PowerShell”再执行 3.3 的安装脚本。注意脚本里不要再用通配符扫全部*.appx要手动指定包名匹配顺序——先 Framework 再 Runtime 再 VCLibs 再 Store。5.2 商店图标打不开点击后闪退无任何错误提示现象开始菜单有 Store 图标点开白色窗口一闪就关闭。原因商店主程序对Microsoft.UI.Xaml版本敏感。LTSC 2019 自带的 UWP XAML 框架是旧版而工具包里的商店期望新版 XAML。闪退是 XAML 解析失败的表现。解决检查依赖包里是否有Microsoft.UI.Xaml文件很多 2019 专用包会带一个Microsoft.UI.Xaml.2.x版本。手动安装Get-ChildItem C:\StoreFiles\Appx\Microsoft.UI.Xaml* | ForEach-Object { Add-AppxPackage -Path $_.FullName }如果包内没有这个文件你需要从 Windows 10 1809 的“应用商店”离线安装包里提取。装完再重启Explorer.exeStop-Process -Name Explorer -Force Start-Process Explorer这能让开始菜单的磁贴缓存重新加载。另外不要以管理员身份运行商店客户端Store 的 UWP 进程在管理员权限下反而不稳定。5.3 wsappx 持续占用 CPU 30%风扇狂转现象LTSC 2019 装完商店后wsappx进程一直占用 CPU两小时都不下降。原因商店包里包含大量预编译的 .NET Native 链接库系统在首次登录时对它们进行“重新编译”或“可靠性优化”。这是正常现象但如果你装的是精简版系统且关闭了“Windows 模块安装程序”服务这个编译过程就会卡死循环。解决先确认Windows Modules Installer服务TrustedInstaller没有被你之前优化掉。检查服务Get-Service TrustedInstaller | Select-Object Status如果状态不是Running就手动启动它再等待 10 分钟。如果 CPU 占比依旧不减直接在任务管理器里结束wsappx然后运行Get-AppxPackage -AllUsers | Where-Object {$_.Status -eq Ok} | Remove-AppxPackage -WhatIf看到卡在Microsoft.WindowsStore上则说明商店安装不完整。删除后重新按第 3 章步骤来做这次不要跳过.NET Runtime的安装。5.4 商店能打开但下载任何应用都提示“0x80073D10”现象商店浏览正常点“获取”立刻报错 0x80073D10。原因这是“包完整性”错误通常是因为 LTSC 2019 的Appx签名缓存问题——你安装包时用了-ForceUpdateFromAnyVersion强制覆盖但系统里残留了旧版的签名缓存文件。解决清理签名缓存。删除以下目录中的旧文件先停止服务net stop wuauserv Remove-Item C:\ProgramData\Microsoft\Windows\AppRepository\* -Recurse -ErrorAction SilentlyContinue net start wuauserv然后重新执行 3.5 的Register命令。注意删除AppRepository会迫使系统重建所有 AppX 注册信息对于只有商店一个附加包的 LTSC 2019影响不大。如果你机智地装过其他 UWP 应用这一步千万不要做会连别人的登录状态都抹掉。5.5 新装用户没有商店入口老用户却有现象给同事用户单独创建 windows 账户后新账户开始菜单没有 Store但管理员账户正常。原因LTSC 2019 默认不会为新用户复制已安装的 AppX 注册信息。商店包安装时只注册到了“当前用户”新用户需要单独注册。解决新用户登录后在管理员 PowerShell 里执行Get-AppxPackage -Name Microsoft.WindowsStore | Add-AppxPackage -Register $($_.InstallLocation)\AppxManifest.xml -DisableDevelopmentMode或者直接创建好用户后用第 3.5 节的组合命令脚本为每个用户执行。办公环境最佳实践是装好所有包后在审核模式sysprep /oobe前把商店注册进“默认用户”配置文件这样后续所有新用户自动继承。这个操作是玄学点路径别搞错否则认命重来。6. 进阶把“LTSC 2019 加商店”固化成你自己的离线包你装成功一次之后大概率会想在多台机器上复现。与其每次解压别人给的 7z不如自己固化一套“离线加商店”流程。我自己的习惯是三步提取、打包、验证。提取阶段找一台同样 LTSC 2019 但商店正常的机器也可以用 Win10 1809 企业版管理员 PowerShellGet-AppxPackage | Where-Object {$_.Name -like *Store* -or $_.Name -like *VCLibs* -or $_.Name -like *NET.Native*} | Export-AppxPackage -Path C:\StoreExport -NoDependenciesExport-AppxPackage会把指定包连同其依赖全部导出为.appx文件并保留版本信息。导出时照例要注意路径别带中文。之后把这些文件放到一台干净 LTSC 2019 虚拟机上按第 3 章的依赖顺序装一遍确认商店能打开、能登录、能下载一个免费应用这才算验证通过。最后用 7z 打包时带上一个Readme.txt写清楚适用系统版本号17763.x和安装顺序省得下次连自己都忘。最值得固化的不是包本身而是你避坑参数的经验。比如有些机器是 UEFI Secure Boot 环境Add-AppxPackage时还要额外注意签名验证有些是组策略禁用了“运行所有用户应用”的你装完商店一样打不开。我通常会在打包目录里放一个deploy.ps1脚本里面写好-ForceUpdateFromAnyVersion和-TrustCertificate的条件并加一段自动检查系统版本的功能$build [System.Environment]::OSVersion.Version.Build if ($build -ge 17763 -and $build -lt 19000) { Write-Host LTSC 2019 适用开始安装... } else { Write-Host 系统版本不是 1809跳过安装 exit 1 }这样的话什么版本的机器能装一眼就看清楚不会拿错包浪费时间。最后我想说把商店塞回 LTSC 2019 这件事技术上不复杂但每一步的细小差别都能导致完全不同症状。哪怕你完全照着本文走我也建议先在测试机跑一遍毕竟生产环境的 LTSC 是最值得珍惜的。希望帮到你。本文还有配套的精品资源点击获取