用途:该技能用于把 Command Palette 扩展分发到 Microsoft Store、WinGet 或两者,适合需要发布、分发、上架商店或创建 MSIX/EXE 安装包的场景。
主要能力:提供两条发布路径。Microsoft Store 使用 MSIX bundle,可通过商店应用和 ms-windows-store:// 链接发现,支持自动更新;WinGet 使用 EXE 安装包,可通过 winget install 和 CmdPal browse 发现,并借助清单实现更新。资料建议两者都发布以获得最大覆盖,WinGet 还能让扩展在 Command Palette 内被直接发现。
使用方式:Store 流程为注册 Partner Center、用 Partner Center 身份更新 Package.appxmanifest 与 .csproj、构建 x64 和 ARM64 的 MSIX、创建 MSIX bundle、提交到 Partner Center。WinGet 流程为将项目切换为非打包模式、创建 Inno Setup 安装脚本、构建 EXE 安装包、通过 wingetcreate new 提交清单,并可选使用 GitHub Actions 自动化。
前置条件:安装带 C# 和 WinUI 工作负载的 Visual Studio;Store 发布需 Partner Center 账号;WinGet 发布需 GitHub CLI、WingetCreate(winget install Microsoft.WingetCreate)和 Inno Setup。
限制与注意:扩展的 CLSID(主 .cs 文件中的 [Guid("...")])必须唯一且在所有文件中保持一致;WinGet 清单必须包含 windows-commandpalette-extension 标签以便 CmdPal 发现;MSIX 包需同时提供 x64 与 ARM64 构建;WinGet 清单中须将 WindowsAppSdk 列为依赖项。详细步骤见 store-publishing.md 与 winget-publishing.md。