Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
L’interface CLI de développement d'applications Windows est actuellement en préversion publique. Les fonctionnalités et les commandes peuvent changer avant la version finale. Partagez vos commentaires en création d’un problème.
application Windows Development CLI (winapp CLI) est un outil en ligne de commande permettant de créer des applications Windows avec le framework de votre choix. Il fonctionne à partir d’un terminal, de l’éditeur que vous préférez ou d’un agent de codage IA.
- Applications WinUI : créer, exécuter, déboguer, tester et empaqueter des applications WinUI sans ouvrir Visual Studio.
- Multiplateforme et autres frameworks : apportez des fonctionnalités Windows à votre application Electron, Flutter, Tauri, Rust, .NET ou C++ existante sans modifier les frameworks. winapp CLI configure le SDK d'application Windows et le SDK Windows, donne à votre application une identité de package d’application pour pouvoir appeler des API telles que les notifications et l’IA sur l’appareil, et la package au format MSIX pour le Microsoft Store ou votre propre distribution.
Principaux avantages de winapp CLI
Créer et exécuter des applications WinUI à partir du terminal
winapp new crée une application WinUI à partir des modèles officiels, notamment les modèles vierges, NavigationView, TabView et des modèles MVVM.
winapp rungénère le projet, installe le application Windows Runtime correspondant et lance l'application, qu'elle soit empaquetée ou non empaquetée.
Créez votre première application WinUI
Déboguer avec l’identité du package et les diagnostics d’incident
Exécutez votre application avec une identité de package pour pouvoir tester les notifications, l’IA sur l’appareil et d’autres API qui nécessitent une identité. Ajoutez --debug-output pour capturer des messages de débogage et des vidages sur incident. Pour les plantages WinUI, winapp décode les exceptions stockées pour vous pointer vers le gestionnaire d’événements XAML qui a échoué.
Débogage avec l’identité du package
Ancrez les agents de codage IA dans du vrai code WinUI
winapp find-uiretourne du code XAML et C# fonctionnel à partir de la galerie WinUI 3 et de la Windows Community Toolkit.
winapp find-api inspecte les API Windows Runtime auxquelles votre projet fait référence. Les agents les utilisent pour générer du code à partir d’échantillons réels et de métadonnées au lieu de deviner.
Utiliser l’interface CLI winapp avec des agents IA
Automatiser et tester l’interface utilisateur de votre application
winapp uiinspecte et interagit avec les applications en cours d’exécution via UI Automation, et capture des captures d’écran et des enregistrements. Exécutez votre application dans Windows Sandbox pour la tester dans un environnement propre.
Automatisation d’interface utilisateur
Emballez, signez et expédiez
winapp pack génère votre projet, le package en tant que MSIX et le signe en une seule étape. Générez des certificats de développement localement, signez les builds de mise en production avec Signatures de confiance Azure et installez l’interface CLI winapp sur GitHub Actions ou des runners Azure DevOps.
Packager votre application
Apporter des fonctionnalités Windows à n’importe quel framework
Ajoutez le sdk Windows et SDK d'application Windows, l’identité de package et l’empaquetage MSIX aux applications créées avec .NET, C++, Electron, Flutter, Rust ou Tauri, sans modifier votre système de build.
Voir les frameworks pris en charge
Bien démarrer avec WinUI
Après avoir installé winapp CLI et le kit de développement logiciel (SDK) .NET, créez et exécutez une application WinUI :
winapp new --name MyWinUIApp --template winui-navview --use-defaults
cd MyWinUIApp
winapp run
Lorsque vous êtes prêt à tester un package localement, générez un certificat de développement et créez un package MSIX signé :
winapp cert generate --manifest ./Package.appxmanifest
winapp pack ./MyWinUIApp.csproj -c Release --cert ./devcert.pfx
Le certificat de développement utilise un mot de passe par défaut et est destiné uniquement aux tests locaux. Avant de distribuer votre application, signez-la avec un certificat approuvé, par exemple avec winapp az-sign. Pour plus d’informations, voir la section Sécurité.
Pour obtenir une procédure pas à pas qui inclut l’installation et votre première modification de l’interface utilisateur, consultez Build your first WinUI app. Pour afficher tous les modèles disponibles, exécutez winapp new --list. Pour obtenir le flux de travail complet, notamment le débogage, l’automatisation de l’interface utilisateur et l’empaquetage, consultez Utilisation de l’interface CLI winapp avec WinUI.
Installation
WinGet
Le moyen le plus simple d’installer l’interface CLI consiste à utiliser WinGet (Windows Gestionnaire de package) :
winget install Microsoft.winappcli --source winget
Si vous utilisez le module PowerShell WinGet, exécutez Install-WinGetPackage Microsoft.winappcli à la place.
NPM
Pour les projets Electron, installez via npm :
npm install @microsoft/winappcli --save-dev
GitHub Actions / Azure DevOps
Pour les pipelines CI/CD, utilisez l’action setup-WinAppCli pour installer automatiquement l’interface CLI sur vos exécuteurs/agents.
Téléchargement manuel
Téléchargez la dernière build à partir de GitHub Versions.
Vérifier l’installation
Une fois installé, vérifiez l’installation en appelant l’interface CLI :
winapp --help
Ou si vous utilisez Electron/Node.js:
npx winapp --help
Utiliser la CLI winapp à l’aide d’agents IA
Winapp CLI est conçu pour fonctionner correctement avec les agents de codage IA. Commandes telles que find-ui et find-api renvoient une sortie lisible par machine avec --json, afin qu’un agent puisse rechercher de vrais exemples WinUI et des API Windows Runtime avant d’écrire du code.
Installez le plug-in winapp pour donner à votre agent des compétences pour le workflow winapp CLI:
# GitHub Copilot CLI
copilot plugin install microsoft/WinAppCli
# Claude Code
claude plugin marketplace add microsoft/WinAppCli
claude plugin install winappcli@winappcli
Si vous travaillez dans Visual Studio Code, l’extension WinApp VS Code exécute des commandes CLI Winapp à partir de l’éditeur et lance votre application avec une identité de package lorsque vous appuyez sur F5. Installez-le à partir de Visual Studio Marketplace.
Frameworks pris en charge
Winapp CLI fonctionne avec WinUI et d’autres frameworks d’application :
| Cadre | Guide |
|---|---|
| WinUI | Bien démarrer avec WinUI |
| .NET / WPF / WinForms | Commencez avec .NET |
| .NET MAUI | Bien démarrer avec .NET MAUI |
| C++ (CMake) | Commencez avec C++ |
| Électron | Commencez avec Electron |
| Rust | Commencez avec Rust |
| Tauri | Commencez avec Tauri |
| Flutter | Commencer avec Flutter |
Guides supplémentaires :
- Empaquetage d’un EXE/CLI : guide pas à pas pour empaqueter un EXE/CLI existant en tant que MSIX
- Packaging sparse : attribuez une identité de package à une application non empaquetée avec un MSIX uniquement d’identité (sparse) et du contenu externe
- Complétion de shell : activez la complétion par tabulation pour les commandes, les options et les valeurs dans PowerShell, bash, zsh et fish
-
Conseils de sécurité : quels certificats de développement et mode développeur changent sur votre ordinateur, comment gérer
devcert.pfxet comment signer pour la production
Vue d’ensemble des commandes
| Catégorie | Commandes |
|---|---|
| Créer &configurer | nouveau, initialiser, restaurer, mettre à jour |
| Exécuter et déboguer | run, create-debug-identity, embed-identity, unregister |
| Emballage | emballer |
| Manifestes | générer le manifeste, mettre à jour les actifs du manifeste, ajouter un alias au manifeste |
| Certificats & Signature | cert generate, cert install, sign, az-sign, create-external-catalog |
| Recherche de code pour les agents | find-ui, find-api |
| UI automation & Sandbox | ui, cible |
| Utilities | tool, store, get-winapp-path, complete |
| Node.js/Electron | node create-addon, node generate-bindings, node add-electron-debug-identity, node clear-electron-debug-identity |
Pour obtenir la référence CLI complète, consultez la référence CLI.
Samples
Le dossier d’exemples sur GitHub a un projet exécutable pour chaque framework pris en charge :
| Sample | Description |
|---|---|
| application WinUI | Application WinUI empaquetée enregistrée et lancée avec winapp run |
| application WinUI non empaquetée | Application WinUI non empaquetée lancée avec winapp run |
| solution WinUI | Solution multi-projet (projet d’application et de test) qui montre comment winapp run sélectionne le projet d’application |
| Application WinUI en C++ | Fenêtre WinUI créée en C++ avec CMake, sans XAML ou MSBuild |
| application WPF | application de bureau WPF |
| application .NET MAUI | projet Windows .NET MAUI empaqueté et signé avec l’interface CLI winapp |
| Application C++ | Application Win32 native C++ créée avec CMake |
| Électron | Application Electron Forge avec un manifeste, des ressources et des compléments C++ et C# natifs |
| appli Rust | Application Rust qui appelle des API Windows |
| app Tauri | Application Tauri avec un back-end Rust |
| application Flutter | Application de bureau Flutter avec identité de package et SDK d'application Windows |
| Application Sparse | Application WPF avec empaquetage fragmenté (MSIX identité uniquement) et un programme d’installation |
Pourquoi l’identité du package ?
De nombreuses API Windows nécessitent que votre application dispose d’une identité de package. Avec l’identité, votre application gagne access aux fonctionnalités telles que les notifications, l’intégration du système d’exploitation et l’IA sur appareil. Les modèles d’application WinUI incluent un manifeste de package, ce qui leur confère par défaut une identité winapp run. Pour obtenir la liste complète de ce que l’identité de package déverrouille et aide à choisir le modèle d’empaquetage approprié, consultez Vue d’ensemble de l’empaquetage.
code source ouvert
winapp CLI est open source. Vous pouvez trouver le code source, les problèmes de fichier et contribuer à GitHub. Pour obtenir de l’aide, consultez Support.
Rubriques connexes
- Créer votre première application WinUI
- Vue d’ensemble de WinUI
- Référence CLI
- Débogage avec l’identité du package
- Conseils de sécurité
- Automatisation d’interface utilisateur
- Exécution de Windows Sandbox
- API programmatique NPM
- Guides d’infrastructure
- Documentation SDK Windows App
- Documentation sur l’empaquetage MSIX
Windows developer