用途:为还没有包清单的项目创建 Package.appxmanifest,或编辑已有清单;也可从单张源图生成应用图标资源。Package.appxmanifest 是多数 winapp 命令的关键前置条件,声明包身份、应用入口点、能力、视觉资源与扩展。清单有两种模板:packaged(默认,用于完整 MSIX 分发)和 sparse(用于需要包身份但不在 MSIX 容器内运行的桌面应用,使用 AllowExternalContent)。
主要能力与用法: 生成新清单:winapp manifest generate(使用当前文件夹名与当前用户),可指定目录,或用 --package-name、--publisher-name、--version、--executable、--description 自定义;--template sparse 生成 sparse 清单;--if-exists overwrite 覆盖已有文件。输出 Package.appxmanifest 与 Assets/ 默认图标。 更新图标:winapp manifest update-assets ./my-logo.png(或 .svg),可用 --manifest 指定清单位置,用 --light-image 生成浅色主题变体。源图建议至少 400x400 像素,PNG 或 SVG。该命令按清单所需尺寸生成缩放变体、目标尺寸变体、app.ico 及浅色主题 MRT 限定符资源。 添加执行别名:winapp manifest add-alias,可用 --name 指定别名、--manifest 指定清单。它添加 uap5:AppExecutionAlias 扩展;与 winapp run --with-alias 或 WinAppRunUseExecutionAlias 配合可在当前终端继承标准输入输出运行。
关键字段:Identity.Name、Identity.Publisher(须与证书完全匹配)、Application.Executable、Capabilities。生成时 Application.Executable 默认为 $targetnametoken$.exe 占位符,由 winapp package --executable 在打包时解析;若生成时传 --executable,需该 exe 已存在于磁盘。
限制:需已安装 winapp CLI;源图过小或格式错误会报错;发布者不匹配需修改清单或重新生成证书;若无法运行 winapp,应给用户具体命令而非只描述步骤。其余功能与命令参数以 winapp <command> --help 或 winapp --cli-schema 为准。