Vue normale

  • ✇Korben
  • Winapp - Comment créer une app Windows native sans Visual Studio
    Pour fabriquer une application Windows native, le passage par Visual Studio était jusqu'ici la voie normale. Mais c'était sans compter sur Microsoft qui a publié winapp , un outil en ligne de commande qui permet de faire tout pareil directement depuis un terminal : il crée le projet, le construit, le lance avec son identité de paquet et sort le résultat sous la forme d'un fichier d'installation MSIX. C'est encore estampillé en version "expérimentale" par ses auteurs, mais ça fonct
     

Winapp - Comment créer une app Windows native sans Visual Studio

9 septembre 2026 à 01:56

Pour fabriquer une application Windows native, le passage par Visual Studio était jusqu'ici la voie normale. Mais c'était sans compter sur Microsoft qui a publié winapp , un outil en ligne de commande qui permet de faire tout pareil directement depuis un terminal : il crée le projet, le construit, le lance avec son identité de paquet et sort le résultat sous la forme d'un fichier d'installation MSIX.

C'est encore estampillé en version "expérimentale" par ses auteurs, mais ça fonctionne déjà très bien pour des trucs basiques. C'est pour ça qu'aujourd'hui, je vous propose un petit tuto pour afficher un Hello World dans une vraie fenêtre Windows. Vous allez voir, c'est fastoche !

Ce qu'il faut avant de commencer

Il vous faut donc Windows 10 version 1809 au minimum, le mode développeur activé dans Paramètres, Système, Options avancées, et le SDK .NET 10 ou plus récent. Visual Studio, non par contre, y'en a pas besoin. Les deux installations se font via winget, dans un terminal normal :

winget install Microsoft.DotNet.SDK.10
winget install Microsoft.winappcli --source winget

Faites ensuite un winapp --version et vous saurez si le CLI répond.

Créez le projet

La commande new fabrique l'application à partir des modèles WinUI 3 officiels, qu'elle télécharge toute seule dès qu'on la lance. Sans option elle vous pose des questions, mais avec celles que je vous mets ci-dessous, elle ne demandera rien et prendra le modèle le plus dépouillé du lot :

winapp new --template winui --name HelloKorben --use-defaults
cd HelloKorben

Vous récupérez alors un projet C# complet, avec son manifeste de paquet et ses icônes. Et surtout, le modèle winui vous donne une fenêtre vide, ce qui tombe bien puisqu'on va écrire dedans. Notez que le pack de modèles est encore publié en 0.0.6-alpha, donc si un nom de fichier a bougé depuis, winapp new --list vous sortira la liste de ce que le vôtre propose.

Écrire le Hello World

Attention, là y'a un petit piège ! Le fichier qui décrit la fenêtre s'appelle MainWindow.xaml, sauf que ce n'est pas celui-là qu'il faut toucher. Ouvrez plutôt MainPage.xaml, qui est à la racine du projet, et remplacez son <Grid /> vide par ces quelques lignes :

<Grid>
 <TextBlock Text="Hello World !"
 HorizontalAlignment="Center"
 VerticalAlignment="Center"
 FontSize="48" />
</Grid>

Ensuite, un petit winapp run construira le projet, l'enregistrera auprès de Windows avec une identité de paquet qui pointe droit sur votre dossier de build, et le lancera. Votre fenêtre s'ouvre alors avec le Hello World au milieu :

winapp run

La fenêtre HelloKorben ouverte par winapp run, et derrière, le terminal qui vient de la construire en 12 secondes

Bon, là, on a fait un Hello World, mais bien sûr, si vous faites chauffer une IA là-dessus, vous pouvez faire des trucs un peu plus complexes sans forcément savoir coder, et tout ça, une fois encore, sans Visual Studio.

Sortir le fichier d'installation

Maintenant, à quoi bon empaqueter ?

Cette identité de paquet, ce n'est pas de la paperasse. En fait c'est elle qui ouvre à votre application les notifications natives, les associations de fichiers, les protocoles maison et les API d'IA locale de Windows. Donc si vous voulez du sérieux, il faut publier l'application compilée dans un dossier, et ça, c'est possible comme ceci directement dans votre terminal :

dotnet publish -o ./publish

L'empaquetage fabrique au passage un certificat de développement et l'installe dans le magasin Personnes de confiance de la machine mais faut que je vous prévienne, la commande qui suit réclame un terminal ouvert en admin dans lequel il faudra refaire le cd vers votre dossier de projet pour qu'il s'y retrouve.

winapp pack ./publish --generate-cert --install-cert

Le MSIX signé sort dans le dossier du projet, nommé d'après le GUID du paquet

Vous obtenez alors un .msix signé, nommé d'après l'identité du paquet, sa version et son architecture, qui s'installe chez vous d'un double clic. Et cette identité, le modèle la génère sous forme de GUID : ne cherchez pas le nom de votre application dans le nom du fichier. Par contre, ne l'envoyez pas tel quel à un collègue, parce que le paquet réclamera le runtime Windows App SDK. Ajoutez --self-contained à la commande pack et le runtime partira dans le paquet. Le certificat, lui, reste un certificat de développement local : sur le PC d'en face, Windows refusera le paquet tant que ce certificat n'y sera pas installé aussi.

Maintenant, si vous vous demandez à quoi sert vraiment ce CLI, c'est surtout l'étape MSIX qui sera moins douloureuse car vous n'aurez pas besoin de lancer Visual Studio.

Source : Neowin

  • ✇Korben
  • PureMac - Faites un grand ménage sur votre Mac, gratuitement
    Vous glissez une app dans la corbeille du Mac, elle disparaît du dossier Applications, et vous pensez que c'est réglé ? Que vous êtes naïfs ! Hé oui, ce que vous ne savez pas, c'est que ses préférences, ses caches et son container restent bien présent dans votre ~/Library, parfois pendant des années, encombrant votre espace disque pour rien. Hé bien s'occuper de tout ce merdier, c'est le job de PureMac , une app native codée en SwiftUI qui piste ces fichiers-là pour libérer des re
     

PureMac - Faites un grand ménage sur votre Mac, gratuitement

17 août 2026 à 04:31

Vous glissez une app dans la corbeille du Mac, elle disparaît du dossier Applications, et vous pensez que c'est réglé ? Que vous êtes naïfs ! Hé oui, ce que vous ne savez pas, c'est que ses préférences, ses caches et son container restent bien présent dans votre ~/Library, parfois pendant des années, encombrant votre espace disque pour rien.

Hé bien s'occuper de tout ce merdier, c'est le job de PureMac , une app native codée en SwiftUI qui piste ces fichiers-là pour libérer des ressources sur votre mac. Elle croise l'identifiant du bundle, celui de l'équipe de développement, les entitlements et les métadonnées Spotlight, selon trois niveaux d'agressivité en fonction de ce que vous voulez ratisser.

Elle sait aussi prendre le problème dans l'autre sens puisque son chercheur de fichiers orphelins parcourt ~/Library pour retrouver les restes d'applications que vous avez virées il y a trois ans et dont plus rien ne vous rappelle l'existence.

Et si vous développez, il y a de quoi récupérer bien plus de place avec les DerivedData, les runtimes de simulateur Xcode, les couches Docker, les caches npm, yarn, pnpm et Homebrew. Bon, ça vous savez déjà le faire avec docker system prune, deux ou trois autres commandes, ou avec Mole en ligne de commande dont je vous ai déjà parlé. Mais l'intérêt ici, c'est de tout voir d'un coup avant d'arbitrer.

Côté données, il n'y a rien à surveiller puisque PureMac n'embarque aucune télémétrie ni appel réseau. Et la licence, c'est du 100% licence MIT, là où d'autres outils similaires comme Pearcleaner ajoute une Commons Clause qui en interdit la revente, que AppCleaner, lui, s'arrête à la désinstallation, ou encore que CleanMyMac nécessite d'acheter une licence.

Pour le faire tourner, il vous faut macOS 13 au minimum, et ça s'installe en une ligne avec brew install --cask puremac. Sinon, il y a un .dmg signé et notarisé à récupérer directement.

Par contre, sachez que ça réclame le l'accès complet au disque, soit la permission la plus large que macOS distribue, et il ne garde aucun journal des chemins qu'il a supprimés. Surtout que quand un fichier est supprimé, il l'est pour de bon, donc vérifiez bien les choses avant de les supprimer.

Le nettoyeur de caches, est également une opération sans retour. Alors pour un cache ça n'a pas d'importance, puisqu'il se régénèrera tout seul. Mais pour un reste dans ~/Library qui contenait, j'sais pas, par exemple une licence, un wallet crypto ou vos réglages, c'est une autre affaire.

Donc soyez TRÈS prudent et lisez bien les chemins d'accès vers les fichiers avant de cliquer pour les supprimer, histoire de pas faire de conneries.

  • ✇Le Blog du Wis
  • Régedix : Le regedit des gaulois
    Imagine-toi que tu peux avoir un Éditeur de registre plus stylé, plus pratique, moins angoissant, bref, plus complet.Régedix est un programme libre sous licence GNU, développé par @poppyto téléchargeable en cliquant ici. Attention : Votre antivirus pourrait voir Régedix comme une menace, mais pas d’inquiétude, il n’en ait pas une ! Ne modifiez pas votre registre si vous n’en avez pas un minimum de connaissance. 1 clic sur le lien télécharger, l’installation de .NET 7 Desktop runtime pour
     

Régedix : Le regedit des gaulois

Par : Wisy
4 février 2023 à 15:58

Imagine-toi que tu peux avoir un Éditeur de registre plus stylé, plus pratique, moins angoissant, bref, plus complet.
Régedix est un programme libre sous licence GNU, développé par @poppyto téléchargeable en cliquant ici.

Attention : Votre antivirus pourrait voir Régedix comme une menace, mais pas d’inquiétude, il n’en ait pas une ! Ne modifiez pas votre registre si vous n’en avez pas un minimum de connaissance.

1 clic sur le lien télécharger, l’installation de .NET 7 Desktop runtime pour les versions portables de Régedix et le tour est joué !

theme somble régedit

Pour connaitre toutes les fonctionnalités, visite ce siteweb.

Bravo : Vous avez réussi !

À voir également : ITQ01 – chemin d’accès en 2 clics

Autres : Réaligner le menu démarrer a gauche

L’article Régedix : Le regedit des gaulois est apparu en premier sur Le Blog du Wis.

❌