Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten przewodnik przeprowadzi Cię przez proces pakowania istniejącego pliku wykonywalnego wiersza polecenia jako pakietu MSIX do dystrybucji za pośrednictwem systemu Windows Menedżer pakietów (winget), Sklepu Microsoft lub dystrybucji bezpośredniej.
Wymagania wstępne
- Istniejący plik wykonywalny interfejsu wiersza polecenia (
.exe), który chcesz spakować - Windows 10 w wersji 1809 lub nowszej
Kroki
1. Organizacja aplikacji CLI
Umieść program wykonywalny CLI oraz wszystkie zależności w przeznaczonym do tego folderze. Ten folder będzie zawierać wszystkie pliki, które powinny zostać uwzględnione w pakiecie MSIX.
mkdir MyCliPackage
cd MyCliPackage
# Copy your CLI executable and dependencies here
2. Instalowanie interfejsu wiersza polecenia winapp
Zainstaluj interfejs wiersza polecenia winapp za pomocą Windows Menedżer pakietów lub zaktualizuj go do najnowszej wersji, jeśli masz go już:
# Install (or update if already installed)
winget install microsoft.winappcli --source winget
3. Wygeneruj plik Package.appxmanifest
Wygeneruj podstawowy plik Package.appxmanifest i wymagane zasoby dla pliku wykonywalnego interfejsu wiersza polecenia:
winapp manifest generate --executable .\yourcli.exe
To polecenie tworzy plik Package.appxmanifest w bieżącym katalogu, wypełniając go wartościami domyślnymi pobranymi z pliku wykonywalnego.
4. Konfigurowanie manifestu
Edytuj wygenerowany Package.appxmanifest element, aby dostosować pakiet. W każdym kroku podrzędnym poniżej wyjaśniono, co należy zmienić i dlaczego.
4.1. Dodaj wymaganą przestrzeń nazw
Dodaj przestrzeń nazw uap5 do elementu Package, jeśli nie jest już dodana. Jest to potrzebne dla aliasu wykonywawczego w kroku 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. Konfigurowanie elementu aplikacji
W elememencie <uap:VisualElements> dodaj polecenie AppListEntry="none" , aby ukryć aplikację z menu Start. Narzędzia CLI są uruchamiane z terminala, więc nie potrzebują pozycji w menu Start.
<uap:VisualElements
DisplayName="YourApp"
Description="My Application"
BackgroundColor="transparent"
Square150x150Logo="Assets\Square150x150Logo.png"
Square44x44Logo="Assets\Square44x44Logo.png"
AppListEntry="none">
</uap:VisualElements>
4.3 Dodawanie rozszerzenia aliasu wykonawczego
Aby użytkownicy mogli uruchamiać CLI po nazwie z dowolnego okna terminala, dodaj alias. Dodaj to w elemecie <Application> (po <uap:VisualElements>):
<Extensions>
<uap5:Extension Category="windows.appExecutionAlias">
<uap5:AppExecutionAlias>
<uap5:ExecutionAlias Alias="yourcli.exe" />
</uap5:AppExecutionAlias>
</uap5:Extension>
</Extensions>
Zastąp yourcli.exe odpowiednią nazwą polecenia dla CLI. Gdy użytkownik zainstaluje plik MSIX, będzie mógł wywołać CLI za pomocą tego polecenia.
4.4 Aktualizowanie metadanych aplikacji
Zaktualizuj następujące pola, aby odpowiadały aplikacji CLI.
Ważna
Wartość Publisher w manifeście musi być zgodna z wydawcą w certyfikacie podpisu. Jeśli wygenerujesz certyfikat później (krok 5), będzie korzystał z informacji o wydawcy zawartych w manifeście. Jeśli zmienisz wydawcę po wygenerowaniu certyfikatu, musisz ponownie wygenerować certyfikat, aby był zgodny.
Identity: Zaktualizuj
Name,PublisheriVersion<Identity Name="YourCompany.YourCLI" Publisher="CN=Your Company" Version="1.0.0.0" />Właściwości: Aktualizowanie nazwy wyświetlanej, nazwy wyświetlanej wydawcy i opisu
<Properties> <DisplayName>Your CLI Tool</DisplayName> <PublisherDisplayName>Your Company</PublisherDisplayName> <Description>Description of your CLI tool</Description> <Logo>Assets\StoreLogo.png</Logo> </Properties>VisualElements: aktualizowanie nazw wyświetlanych i odwołań do elementów zawartości
<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>
Uwaga: należy również dodać odpowiednie elementy zawartości ikon do Assets folderu w katalogu pakietów. Chociaż aplikacja nie będzie wyświetlana w menu Start, ikony są nadal wymagane do przesłania do Sklepu i mogą pojawiać się w innych miejscach.
5. (Opcjonalnie) Generowanie certyfikatu programistycznego
W przypadku lokalnego testowania i dystrybucji poza Microsoft Store należy podpisać pakiet MSIX przy użyciu certyfikatu.
Generowanie certyfikatu programistycznego. Zachowaj go poza folderem interfejsu wiersza polecenia, aby uniknąć przypadkowego dołączania go do pakietu:
# Navigate to a location outside your CLI folder (e.g., your home directory)
cd ~
winapp cert generate
Spowoduje to utworzenie devcert.pfx pliku w katalogu głównym (np. C:\Users\yourname\devcert.pfx).
Aby ufać temu certyfikatowi na komputerze deweloperskim, zainstaluj go (wymaga uprawnień administratora):
# Run PowerShell as Administrator
winapp cert install ~\devcert.pfx
6. Spakuj interfejs wiersza polecenia (CLI)
Teraz możesz utworzyć pakiet MSIX:
# 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
Spowoduje to utworzenie .msix pliku w bieżącym katalogu.
7. Instalowanie i weryfikowanie
Zainstaluj pakiet MSIX, aby sprawdzić, czy wszystko działa:
Add-AppxPackage .\MyCliPackage.msix
Jeśli w kroku 4.3 dodałeś alias do uruchomienia, możesz teraz uruchomić swój CLI z poziomu dowolnego terminalu:
yourcli --help
Aby odinstalować później:
Get-AppxPackage *YourCLI* | Remove-AppxPackage
Porady
- Gdy wszystko będzie gotowe do dystrybucji, możesz podpisać plik MSIX przy użyciu certyfikatu podpisywania kodu z urzędu certyfikacji, aby użytkownicy nie musieli instalować certyfikatu z podpisem własnym
- Microsoft Store podpisze plik MSIX bez konieczności podpisywania przed przesłaniem.
- Może być konieczne utworzenie wielu pakietów MSIX — po jednym dla każdej obsługiwanej architektury (x64, Arm64)
Dalsze kroki
- Rozprowadź za pomocą narzędzia winget: Prześlij swój plik MSIX do Windows Menedżer pakietów Community Repository
-
Publikuj w Microsoft Store: Użyj
winapp storeaby przesłać pakiet -
Konfigurowanie CI/CD: Użyj akcji
setup-WinAppCliGitHub, aby zautomatyzować tworzenie pakietów w potoku