Paketera en CLI-körbar fil som MSIX

Den här guiden beskriver hur du paketerar en befintlig körbar kommandorad som ett MSIX-paket för distribution via Windows Package Manager (winget), Microsoft Store eller direktdistribution.

Förutsättningar

  • En befintlig CLI-körbar (.exe) som du vill paketera
  • Windows 10 version 1809 eller senare

Instruktioner

1. Organisera ditt CLI-program

Placera den körbara CLI-filen och eventuella beroenden i en dedikerad mapp:

mkdir MyCliPackage
cd MyCliPackage
# Copy your CLI executable and dependencies here

2. Installera winapp CLI

winget install microsoft.winappcli --source winget

3. Generera appxmanifest.xml

winapp manifest generate --executable .\yourcli.exe

Då skapas en appxmanifest.xml fil med standardvärden som fylls i från den körbara filen.

4. Konfigurera manifestet

Redigera det genererade appxmanifest.xml för att lägga till ett körningsalias, dölj appen från Start-menyn och uppdatera programinformationen.

4.1 Lägg till obligatoriskt namnområde

Lägg till ett namnområde till Package-elementet:uap5

<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 Dölj från Start-menyn

I elementet <uap:VisualElements> lägger du till AppListEntry="none":

<uap:VisualElements
    DisplayName="YourApp"
    Description="My Application"
    BackgroundColor="transparent"
    Square150x150Logo="Assets\Square150x150Logo.png"
    Square44x44Logo="Assets\Square44x44Logo.png"
    AppListEntry="none">
</uap:VisualElements>

4.3 Lägg till körningsalias

Lägg till tillägget i -elementet <Application> :

<Extensions>
  <uap5:Extension Category="windows.appExecutionAlias">
    <uap5:AppExecutionAlias>
      <uap5:ExecutionAlias Alias="yourcli.exe" />
    </uap5:AppExecutionAlias>
  </uap5:Extension>
</Extensions>

Ersätt yourcli.exe med önskat kommandonamn för ditt CLI.

4.4 Uppdatera programmetadata

Uppdatera avsnitten Identity, Properties, och VisualElements så att de matchar ditt CLI-program.

5. Generera ett utvecklingscertifikat (valfritt)

För lokal testning och distribution utanför Microsoft Store:

cd ~
winapp cert generate
winapp cert install

Viktigt!

Håll utvecklingscertifikatet utanför mappen som innehåller den körbara CLI-filen för att undvika att oavsiktligt inkludera det i paketet.

6. Paketera ditt CLI

winapp pack .\MyCliPackage --cert path\to\devcert.pfx

Då skapas en .msix fil i den aktuella katalogen.

Tips/Råd

  • Microsoft Store signerar MSIX åt dig, du behöver inte signera innan det skickas in.
  • Du kan behöva separata MSIX-paket för varje arkitektur som du stöder (x64, Arm64).