Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze handleiding begeleidt u bij het verpakken van een bestaand uitvoerbaar opdrachtregelprogramma als EEN MSIX-pakket voor distributie via Windows Pakketbeheer (winget), de Microsoft Store of directe distributie.
Vereiste voorwaarden
- Een bestaand uitvoerbaar CLI-bestand (
.exe) dat u wilt verpakken - Windows 10 versie 1809 of hoger
Steps
1. Uw CLI-toepassing organiseren
Plaats het uitvoerbare CLI-bestand en eventuele afhankelijkheden in een toegewezen map. Deze map bevat alle bestanden die moeten worden opgenomen in uw MSIX-pakket.
mkdir MyCliPackage
cd MyCliPackage
# Copy your CLI executable and dependencies here
2. Winapp CLI installeren
Installeer de winapp CLI via Windows Pakketbeheer of werk deze bij naar de nieuwste versie als u deze al hebt:
# Install (or update if already installed)
winget install microsoft.winappcli --source winget
3. Genereer het Package.appxmanifest
Genereer een base Package.appxmanifest en vereiste assets voor het uitvoerbare CLI-bestand:
winapp manifest generate --executable .\yourcli.exe
Met deze opdracht maakt u een Package.appxmanifest bestand in de huidige map met standaardwaarden die zijn ingevuld op basis van het uitvoerbare bestand.
4. Het manifest configureren
Bewerk de gegenereerde Package.appxmanifest om uw pakket op maat te maken. In elke substap hieronder wordt uitgelegd wat u moet wijzigen en waarom.
4.1 Vereiste naamruimte toevoegen
Voeg de uap5 naamruimte toe aan het Package element als deze nog niet aanwezig is. Dit is nodig voor de uitvoeringsalias in stap 4.3:
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
...
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap5="http://schemas.microsoft.com/appx/manifest/uap/windows10/5"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap uap5 rescap">
4.2 Het toepassingselement configureren
Voeg in het <uap:VisualElements> element toe AppListEntry="none" om de app te verbergen in het menu Start. CLI-hulpprogramma's worden aangeroepen vanuit de terminal, dus ze hebben geen menu-item Start nodig:
<uap:VisualElements
DisplayName="YourApp"
Description="My Application"
BackgroundColor="transparent"
Square150x150Logo="Assets\Square150x150Logo.png"
Square44x44Logo="Assets\Square44x44Logo.png"
AppListEntry="none">
</uap:VisualElements>
4.3 Uitvoeringsaliasextensie toevoegen
Voeg een uitvoeringsalias toe zodat gebruikers uw CLI op naam kunnen uitvoeren vanuit een terminalvenster. Voeg dit toe binnen het <Application> element (na <uap:VisualElements>):
<Extensions>
<uap5:Extension Category="windows.appExecutionAlias">
<uap5:AppExecutionAlias>
<uap5:ExecutionAlias Alias="yourcli.exe" />
</uap5:AppExecutionAlias>
</uap5:Extension>
</Extensions>
Vervang door yourcli.exe de gewenste opdrachtnaam voor uw CLI. Zodra een gebruiker de MSIX installeert, kan deze de CLI aanroepen met deze opdracht.
4.4 Metagegevens van toepassing bijwerken
Werk de volgende velden bij zodat deze overeenkomen met uw CLI-toepassing.
Belangrijk
De waarde Publisher in uw manifest moet overeenkomen met de uitgever in uw handtekeningcertificaat. Als u later een certificaat genereert (stap 5), wordt de uitgever uit uw manifest gebruikt. Als u de uitgever wijzigt nadat u een certificaat hebt gegenereerd, moet u het certificaat opnieuw genereren om overeen te komen.
Identity: Update
Name,PublisherenVersion<Identity Name="YourCompany.YourCLI" Publisher="CN=Your Company" Version="1.0.0.0" />Eigenschappen: Weergavenaam, weergavenaam van uitgever en beschrijving bijwerken
<Properties> <DisplayName>Your CLI Tool</DisplayName> <PublisherDisplayName>Your Company</PublisherDisplayName> <Description>Description of your CLI tool</Description> <Logo>Assets\StoreLogo.png</Logo> </Properties>VisualElements: weergavenaam en assetverwijzingen bijwerken
<uap:VisualElements DisplayName="Your CLI Tool" Description="Description of your CLI tool" BackgroundColor="transparent" Square150x150Logo="Assets\Square150x150Logo.png" Square44x44Logo="Assets\Square44x44Logo.png"> <uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png" /> <uap:SplashScreen Image="Assets\SplashScreen.png" /> </uap:VisualElements>
Opmerking: U moet ook de juiste pictogrammenassets toevoegen aan een Assets map in uw pakketmap. Hoewel de app niet wordt weergegeven in het menu Start, zijn er nog steeds pictogrammen vereist voor het indienen van de Store en kunnen ze worden weergegeven in andere contexten.
5. (Optioneel) Een ontwikkelingscertificaat genereren
Voor lokale tests en distributie buiten de Microsoft Store moet u uw MSIX-pakket ondertekenen met een certificaat.
Genereer een ontwikkelingscertificaat. Bewaar deze buiten uw CLI-map om te voorkomen dat deze per ongeluk wordt opgenomen in het pakket:
# Navigate to a location outside your CLI folder (e.g., your home directory)
cd ~
winapp cert generate
Hiermee maakt u een devcert.pfx bestand in uw basismap (bijvoorbeeld C:\Users\yourname\devcert.pfx).
Als u dit certificaat op uw ontwikkelcomputer wilt vertrouwen, installeert u het (hiervoor zijn beheerdersbevoegdheden vereist):
# Run PowerShell as Administrator
winapp cert install ~\devcert.pfx
6. Uw CLI verpakken
U kunt nu het MSIX-pakket maken:
# Navigate back outside of your project folder
# Package with dev certificate (for local testing/distribution)
winapp pack .\path\to\MyCliPackage --cert .\path\to\devcert.pfx
Hiermee maakt u een .msix bestand in de huidige map.
7. Installeren en verifiëren
Installeer het MSIX-pakket om te controleren of alles werkt:
Add-AppxPackage .\MyCliPackage.msix
Als u in stap 4.3 een uitvoeringsalias hebt toegevoegd, kunt u de CLI nu uitvoeren vanaf elke terminal:
yourcli --help
Later verwijderen:
Get-AppxPackage *YourCLI* | Remove-AppxPackage
Tips
- Zodra u klaar bent voor distributie, kunt u uw MSIX ondertekenen met een certificaat voor ondertekening van programmacode van een certificeringsinstantie, zodat uw gebruikers geen zelfondertekend certificaat hoeven te installeren
- De Microsoft Store zal de MSIX voor u ondertekenen, u hoeft deze niet te ondertekenen voordat u hem indient.
- Mogelijk moet u meerdere MSIX-pakketten maken, één voor elke architectuur die u ondersteunt (x64, Arm64)
Volgende stappen
- Distribute via winget: Dien uw MSIX in bij de Windows Pakketbeheer Community-opslagplaats
-
Publiceren naar de Microsoft Store: gebruik
winapp storeom uw pakket in te dienen -
Set up CI/CD: Gebruik de GitHub Actie
setup-WinAppCliom automatisering van het verpakken in uw pijplijn te realiseren.
Windows developer