惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
云风的 BLOG
云风的 BLOG
B
Blog
博客园 - Franky
I
InfoQ
A
About on SuperTechFans
博客园_首页
L
LangChain Blog
量子位
腾讯CDC
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
美团技术团队
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
雷峰网
雷峰网
MongoDB | Blog
MongoDB | Blog
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
G
Google Developers Blog
Last Week in AI
Last Week in AI

博客园 - chingho

OpenClaw 不会安装的,一键安装包来了,代码开源! Windows下安装 Ollama + OpenClaw + 飞书,实现真正本地部署! 告别代码!我用Trae氛围编程的方式,开发了一款公众号文章同步插件! C#实现Stdio通信方式的MCP Server C#实现SSE通信方式的MCP Server C#实现MCP Client 与 LLM 连接,抓取网页内容功能! VS Code + Cline + 魔搭MCP Server 实现抓取网页内容。 C#实现自己的MCP Client 一文掌握DeepSeek本地部署+Page Assist浏览器插件+C#接口调用+局域网访问!全攻略来了! Phi小模型开发教程:C#使用本地模型Phi视觉模型分析图像,实现图片分类、搜索等功能 Phi小模型开发教程:用C#开发本地部署AI聊天工具,只需CPU,不需要GPU,3G内存就可以运行,不输GPT-3.5 OxyPlot:一个功能强大、漂亮.Net跨平台开源绘图库 websocket-sharp:.NET平台上的WebSocket客户端与服务器开源库 Eval-Expression.NET:动态执行C#脚本,类似Javascript的Eval函数功能 BotSharp:又一个.Net重磅AI开源项目,.Net在AI领域开始崛起! DateTimeExtensions:一个轻量C#的开源DateTime扩展方法库 Bogus:.NET的假数据生成利器 Coravel:一个可轻松实现任务调度、队列、邮件发送的开源项目 .Net程序员机会来了,微软官方新推出一个面向Windows开发者本地运行AI模型的开源工具
微软新利器!winapp CLI:一键打包、调试、集成 Windows 原生...
chingho · 2026-01-23 · via 博客园 - chingho

大家好,我是编程乐趣。好消息来了,微软官方发布 winapp 开源命令行工具:可以一键初始化开发环境、一键打包,让我们从繁琐的环境搭建中解脱出来,从而将更多精力集中在代码编写与产品创新上。## 📌 项目简介

winapp CLI 是微软推出的一个命令行工具,旨在为 Windows 应用开发者提供统一、简洁的开发体验。它整合了 Windows SDK、App SDK、应用打包(MSIX)、证书管理、清单生成、调试身份配置等核心功能,适用于各种开发框架(如 Electron、.NET、C++、Rust、Tauri、Python 等)。

图片##

🎯 核心功能

winapp CLI 主要解决以下几类开发痛点:

1. 跨平台开发者接入 Windows 原生能力

即使你使用的是 Electron、Tauri 或 Python 等跨平台技术栈,也能轻松调用 Windows App SDK现代 Windows API(如通知、窗口管理、AI 接口等)。

2. 快速添加“应用身份”(App Identity****)

某些 Windows API(如后台任务、推送通知)要求应用具有“包身份”(Package Identity)。winapp CLI 可通过 create-debug-identity 命令无需完整打包即可为开发中的 EXE 添加临时身份,极大简化调试流程。

3. MSIX 打包与签名

一键生成符合 Microsoft Store 要求的 MSIX 安装包。内置开发证书生成(cert)和签名工具(sign),支持自动化部署。

4. 自动生成清单与资源

自动生成 AppxManifest.xml、应用图标、资源文件等。

支持自定义配置,适配不同框架需求。### 5. 集成开发工具链

提供对 Windows SDK 工具(如 MakeAppx、SignTool)的封装,通过 winapp tool 直接调用。

🛠️ 安装方式

  • 推荐(Windows 用户):使用 WinGet

winget install Microsoft.winappcli --source winget

  • 通过 NPM 安装 Electron 项目的 CLI:

npm install @microsoft/winappcli --save-dev-

  • CI/CD 环境:使用官方 GitHub Action setup-WinAppCli
  • 手动下载:从 GitHub Releases 获取最新版本。

🧪 支持的开发框架

winapp CLI 官方提供了多个示例项目,涵盖:

框架示例内容
Electron含 C++/C# 原生插件、AI 集成(Windows ML)
.NET / WPF控制台应用、桌面应用打包
C++ (Win32/CMake)原生 Windows
应用Rust调用 Windows API
Tauri跨平台 Rust 应用打包为 MSIX
Python / CLI 工具将普通 EXE 打包为 MSIX

🛠️ 使用示例

第一步:创建 .NET 应用

dotnet new console -n MyDotNetApp``cd MyDotNetApp

第二步:初始化 winapp 配置

在项目根目录运行:

winapp init该命令会生成 winapp.json 配置文件,用于定义应用名称、版本、入口点(EXE 路径)、图标等元数据。

示例 winapp.json 片段:

{`` "appName": "MyDotNetApp",`` "version": "1.0.0",`` "exePath": "bin/Debug/net8.0/MyDotNetApp.exe",`` "publisher": "CN=YourName"``}

第三步:创建调试身份(关键!)

许多 Windows API(如发送通知)要求应用具有“包身份”(Package Identity)。传统方式需完整打包 MSIX 才能调试,极其低效。

而 winapp CLI 提供了革命性的解决方案:

winapp create-debug-identity这条命令会在不打包的情况下,为你的 EXE 注入临时身份,使其在开发阶段就能调用受保护的 Windows API!

✅ 无需修改代码

✅ 无需重新编译

✅ 即时生效

第四步:打包为 MSIX

准备发布?只需一条命令:

winapp pack .\bin\Release\net10.0-windows10.0.26100.0 --manifest .\appxmanifest.xml --cert .\devcert.pfx 它会自动:

  • 生成 AppxManifest.xml

  • 创建 MSIX 包

  • 使用开发证书签名(可通过 winapp cert 管理)

最终输出 .msix 文件,可直接安装、分发,甚至提交到 Microsoft Store!

🔗 开源项目

GitHub:https://github.com/microsoft/winappCli

✅ 总结

winapp CLI 是微软为现代化 Windows 应用开发打造的一站式 CLI 工具,尤其适合:

  • 想在跨平台项目中使用 Windows 原生功能的开发者

  • 需要快速调试“包身份”相关 API 的团队

  • 希望自动化 MSIX 打包和签名的 DevOps 流程

- End -

文章首发于公众号【编程乐趣】,欢迎大家关注。
图片