Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird beschrieben, wie Sie manuell eine App-Installer-Datei erstellen, die eine zugehörige Gruppe mit Funktionen zum automatischen Aktualisieren und Reparieren definiert. Ein zusammengehöriges Set ist keine einzelne Entität, sondern eine Kombination aus einem Hauptpaket und optionalen Paketen.
Um einen verwandten Satz als eine Entität installieren zu können, müssen wir in der Lage sein, das Hauptpaket und das optionale Paket als eins anzugeben. Dazu müssen wir eine XML-Datei mit der Erweiterung ".appinstaller " erstellen, um einen zugehörigen Satz zu definieren. Der App-Installer verwendet die Datei *.appinstaller und ermöglicht es dem Benutzer, alle definierten Pakete mit einem einzigen Klick zu installieren.
Während der Bereitstellung wird die App-Installer-Datei Folgendes tun:
- Das Windows-App-Paket, auf das im Attribut
URIdes < MainPackage > Elements verwiesen wird, überprüft dieName,PublisherundVersionder Windows-App-Paketattribute des Zielsystems. Wenn das Package/Identity-Element im Windows App-Paketmanifest nicht übereinstimmt, schlägt die Installation fehl. - Erstellen Sie einen Verweis auf die Update- und Reparatur-URIs für die Paketfamilie.
So erstellen Sie eine App-Installer-Datei
Um den zugehörigen Satz als eine Entität zu verteilen, müssen Sie eine App-Installer-Datei erstellen, die die Elemente enthält, die für dieses App-Installer-Schema erforderlich sind.
- Erstellen Sie die *.AppInstaller-Datei.
- Geben Sie die Attribute der App-Installer-Datei an.
- Geben Sie das Hauptpaket der Windows-App an.
- Geben Sie das zugehörige optionale Paket an.
- Spezifizieren Sie das Abhängigkeitspaket des Windows App Frameworks.
- Geben Sie die Updateeinstellungen an.
- Geben Sie die Aktualisierungs-URI-Pfade an.
- Geben Sie die Reparatur-URI-Pfade an.
Beispiel für eine App-Installer-Datei
Nachdem Sie die oben aufgeführten Schritte ausgeführt haben, haben Sie erfolgreich eine App-Installer-Datei erstellt, die etwa wie folgt aussieht:
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2017/2"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<OptionalPackages>
<Bundle
Name="Contoso.OptionalApp1"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/OptionalApp1.msixbundle" />
<Bundle
Name="Contoso.OptionalApp2"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/OptionalApp2.msixbundle" />
<Package
Name="Fabrikam.OptionalApp3"
Publisher="CN=Fabrikam"
Version="10.34.54.23"
Uri="http://mywebservice.azurewebsites.net/OptionalApp3.msix"
ProcessorArchitecture="x64" />
</OptionalPackages>
<UpdateURIs>
<UpdateURI>http://mywebservice.azurewebsites.net/appset.appinstaller</UpdateURI>
<UpdateURI>http://mywebservice2.azurewebsites.net/appset.appinstaller</UpdateURI>
</UpdateURIs>
<RepairURIs>
<RepairURI>http://mywebservice.azurewebsites.net/appset.appinstaller</RepairURI>
<RepairURI>http://mywebservice2.azurewebsites.net/appset.appinstaller</RepairURI>
</RepairURIs>
<UpdateSettings>
<OnLaunch HoursBetweenUpdateChecks="0"/>
</UpdateSettings>
</AppInstaller>
Schritt 1: Erstellen der Datei "*.appinstaller"
Erstellen Sie mit einem Text-Editor (Notepad.exe) eine neue Datei mit der Dateinamenerweiterung *. AppInstaller
Anleitung:
- Öffnen Sie das Startmenü.
- Geben Sie Folgendes ein:
notepad.exe. - Öffnen Sie das Menü "Datei ".
- Wählen Sie im Dropdownmenü "Speichern unter " aus.
Schritt 2: Hinzufügen der Basisvorlage
Fügen Sie das AppInstaller Element in Ihre App-Installer-Datei ein und vermerken Sie die Version, den Pfad und den Netzwerkspeicherort Ihrer App-Installer-Datei. Die Informationen im AppInstaller-Element werden beim Installieren der zugehörigen Windows-Apps genutzt.
| Element | BESCHREIBUNG |
|---|---|
| xmlns | Der XML-Namespace |
| Version | Die Version der App-Installer-Datei in einer Quad-Dotted-Notation (1.0.0.0). |
| URI | Ein URI-Pfad zur aktuellen App Installer-Datei, auf die vom Gerät zugegriffen werden kann. |
Anleitung:
Öffnen Sie die in Schritt 1 erstellte Datei.
Kopieren Sie den folgenden XML-Inhalt in Ihr *. AppInstaller-Datei .
<?xml version="1.0" encoding="utf-8"?> <AppInstaller xmlns="http://schemas.microsoft.com/appx/appinstaller/2021" Version="" Uri="" > </AppInstaller>Aktualisieren des
VersionAttributs mit der Version Ihrer App Installer-DateiAktualisieren Sie das
URI-Attribut mit dem Netzwerkspeicherort, von dem aus auf diese *.AppInstaller-Datei zugegriffen werden kann.
Schritt 3: Hinzufügen der Hauptpaketinformationen
Die <MainPackage> und <MainBundle> werden verwendet, um die primäre Windows App zu identifizieren, die mit der App Installer-Datei installiert wird. Die <MainPackage> wird verwendet, wenn das Windows App-Installationsprogramm entweder ein *.msix oder *.appx ist. Verwenden Sie den <MainBundle>, wenn das Windows App-Installationsprogramm ein gebündeltes Windows App Installer ist, mit einer Erweiterung von *.msixbundle oder *.appxbundle.
| Element | BESCHREIBUNG |
|---|---|
| Name | Der Name der primären Anwendung, die über die App-Installer-Datei verteilt wird. Dies finden Sie, indem Sie das folgende PowerShell-Cmdlet ausführen: $(Get-AppxPackage [AppName]).Name. |
| Verleger | Der kanonische Name des Herausgeberzertifikats, das zum Signieren des primären Windows App-Installers verwendet wird. Dies kann mithilfe des folgenden PowerShell-Cmdlets gefunden werden: $(Get-AppxPackage [AppName]).Publisher. |
| Version | Die Version des primären Windows App-Installer in einer vierfach punktierten Notation (1.0.0.0). Dies finden Sie, indem Sie das folgende PowerShell-Cmdlet ausführen: $(Get-AppxPackage [AppName]).Version. |
| Prozessorarchitektur | Die Architektur, auf der das primäre Windows-App-Installationsprogramm installiert wird. |
| URI (Uniform Resource Identifier) | Der URI-Pfad zum primären Windows App-Installationsmedium. |
Die Informationen im <MainBundle>- oder <MainPackage>-Attribut sollten mit dem Package/Identity-Element im App-Bündelmanifest bzw. App-Paketmanifest übereinstimmen.
Windows-App-Installer
Wenn es sich bei dem Haupt-App-Paket um eine MSIX- oder .appx-Datei handelt, verwenden Sie <MainPackage>wie unten dargestellt. Achten Sie darauf, die ProcessorArchitecture einzuschließen, da sie für Nicht-Bundle-Pakete obligatorisch ist.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainPackage
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
ProcessorArchitecture="x64"
Uri="http://mywebservice.azurewebsites.net/mainapp.msix" />
</AppInstaller>
Windows-App-Bundle-Installer
Wenn es sich bei dem Haupt-App-Paket um eine .msixbundle-, .appxbundle- oder .datei handelt, verwenden Sie <MainBundle> anstelle von <MainPackage>, wie unten gezeigt. Für Bundles ist ProcessorArchitecture nicht erforderlich.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
</AppInstaller>
Schritt 4: Hinzufügen der optionalen Pakete
Ähnlich wie das Attribut des Haupt-App-Pakets sollte das untergeordnete Element innerhalb des <OptionalPackages>-Attributs <Package> sein, wenn das optionale Paket entweder ein App-Paket oder ein App-Bündel sein kann, oder entsprechend <Bundle>. Die Paketinformationen in den untergeordneten Elementen sollten mit dem Identitätselement im Paket- oder Paketmanifest übereinstimmen.
| Element | BESCHREIBUNG |
|---|---|
| Name | Der Name der optionalen Anwendung, die über die App-Installer-Datei verteilt wird. Dies finden Sie, indem Sie das folgende PowerShell-Cmdlet ausführen: $(Get-AppxPackage [AppName]).Name. |
| Herausgeber | Der kanonische Name des Herausgeberzertifikats, das zum Signieren des optionalen Windows App-Installers verwendet wird. Dies kann mithilfe des folgenden PowerShell-Cmdlets gefunden werden: $(Get-AppxPackage [AppName]).Publisher. |
| Version | Die Version des optionalen Windows-App-Installers in einer vierteiligen Punktnotation (1.0.0.0). Dies finden Sie, indem Sie das folgende PowerShell-Cmdlet ausführen: $(Get-AppxPackage [AppName]).Version. |
| Prozessorarchitektur | Die Architektur, auf der das optionale Windows-App-Installationsprogramm installiert wird. |
| URI (Uniform Resource Identifier) | Der URI-Pfad zum primären Windows App-Installationsmedium. |
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<OptionalPackages>
<Bundle
Name="Contoso.OptionalApp1"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/OptionalApp1.msixbundle" />
<Package
Name="Fabrikam.OptionalApp3"
Publisher="CN=Fabrikam"
Version="10.34.54.23"
ProcessorArchitecture="x64"
Uri="http://mywebservice.azurewebsites.net/OptionalApp3.msix" />
</OptionalPackages>
</AppInstaller>
Schritt 5: Hinzufügen von Abhängigkeiten
Im Abhängigkeitselement können Sie die erforderlichen Frameworkpakete für das Hauptpaket oder die optionalen Pakete angeben.
| Element | BESCHREIBUNG |
|---|---|
| Name | Der Name der Abhängigkeitsanwendung, an die über die App-Installer-Datei verteilt wird. Dies finden Sie, indem Sie das folgende PowerShell-Cmdlet ausführen: $(Get-AppxPackage [AppName]).Name. |
| Verlag | Der kanonische Name des Herausgeberzertifikats, das zum Signieren des Windows-App-Installers verwendet wird. Dies kann mithilfe des folgenden PowerShell-Cmdlets gefunden werden: $(Get-AppxPackage [AppName]).Publisher. |
| Version | Die Version des Windows-App-Installers als Abhängigkeit in vierteiliger Notierung (1.0.0.0). Dies finden Sie, indem Sie das folgende PowerShell-Cmdlet ausführen: $(Get-AppxPackage [AppName]).Version. |
| Prozessorarchitektur | Die Architektur, auf der das Abhängigkeits-Windows App-Installationsprogramm installiert wird. |
| URI (Uniform Resource Identifier) | Der URI-Pfad zu den Installationsmedien der Windows-App-Abhängigkeiten. |
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<Dependencies>
<Package
Name="Microsoft.VCLibs.140.00"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"
Version="14.0.24605.0" ProcessorArchitecture="x86" Uri="http://foobarbaz.com/fwkx86.appx" />
<Package
Name="Microsoft.VCLibs.140.00"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"
Version="14.0.24605.0"
ProcessorArchitecture="x64"
Uri="http://foobarbaz.com/fwkx64.appx" />
</Dependencies>
</AppInstaller>
Schritt 6: Hinzufügen der Updateeinstellung
Die App Installer-Datei kann auch die Updateeinstellung angeben, sodass die zugehörigen Sätze automatisch aktualisiert werden können, wenn eine neuere App-Installer-Datei veröffentlicht wird. <UpdateSettings ist ein optionales> Element. In <UpdateSettings> gibt die Option "OnLaunch" an, dass Updateüberprüfungen beim Starten der App vorgenommen werden sollen, und HoursBetweenUpdateChecks="12" gibt an, dass alle 12 Stunden eine Aktualisierungsprüfung durchgeführt werden soll. Wenn HoursBetweenUpdateChecks nicht angegeben ist, beträgt das Standardintervall, das zum Überprüfen auf Updates verwendet wird, 24 Stunden. Weitere Arten von Updates, z. B. Hintergrundupdates, finden Sie im Schema "Updateeinstellungen ". Weitere Arten von On-Launch-Updates wie Updates mit einer Eingabeaufforderung finden Sie im OnLaunch-Schema
| Elemente | BESCHREIBUNG |
|---|---|
| StundenZwischenAktualisierungsprüfungen | Definiert die minimale Lücke in Windows App-Updateprüfungen. |
| Aktualisierungsblockierungsaktivierung | Definiert die Benutzeroberfläche, wenn ein App-Update überprüft wird. |
| Eingabeaufforderung einblenden | Definiert, ob ein Fenster angezeigt wird, wenn Updates installiert werden, und wann Updates überprüft werden. |
| AktualisierungVonJederVersionErzwingen | Gibt an, dass die nächste Version der Anwendung eine neuere oder ältere Version sein könnte. Bei „True“ werden alle Versionen für beide Optionen installiert, bei „False“ (Standardeinstellung) hingegen nur neue Versionen. |
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<UpdateSettings>
<OnLaunch
HoursBetweenUpdateChecks="12"
UpdateBlocksActivation="true"
ShowPrompt="true" />
<AutomaticBackgroundTask />
<ForceUpdateFromAnyVersion>true</ForceUpdateFromAnyVersion>
</UpdateSettings>
</AppInstaller>
Schritt 7: Hinzufügen von Einstellungen für die automatische Aktualisierung
Von Bedeutung
Für die folgenden Einstellungen ist die Schemaversion 2021 in Ihrer .appinstaller-Datei und Windows 10, Version 2004 (Build 19041) oder höher erforderlich.
Diese Einstellungen ermöglichen das Aktualisieren der Windows App aus dem App Installer-URI, wobei die im vorherigen Schritt festgelegten Konfigurationen eingehalten werden. Die in diesem Schritt konfigurierten Update-URIs dienen als Fallback-URIs, die verwendet werden können, wenn auf den ursprünglichen App Installer-URI nicht mehr zugegriffen werden kann. Maximal 10 Update-URIs können für jede Windows App konfiguriert werden.
Die Update-URIs müssen auf App-Installer-Dateien abzielen.
Hinweis
Diese Einstellungen funktionieren nur, wenn das Schema als 2021 oder höher konfiguriert ist.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<UpdateSettings>
<OnLaunch
HoursBetweenUpdateChecks="12" />
</UpdateSettings>
<UpdateUris>
<UpdateUri>https://www.contoso.com/Installers/MainApp.AppInstaller</UpdateUri>
<UpdateUri>\\ServerName\Share\Installers\MainApp.AppInstaller</UpdateUri>
</UpdateUris>
</AppInstaller>
Schritt 8: Hinzufügen von Einstellungen für die automatische Reparatur
Von Bedeutung
Für die folgenden Einstellungen ist die Schemaversion 2021 in Ihrer .appinstaller-Datei und Windows 10, Version 2004 (Build 19041) oder höher erforderlich.
Diese Einstellungen aktivieren die Reparatur der Windows-App, wenn sie manipuliert wurde. Das Quellinstallationsprogramm, das zum Reparieren der App verwendet wird, kann mithilfe der <RepairURIs> Eigenschaft konfiguriert werden. Die Windows-App versucht, sich basierend auf dem App Installer-URI zu reparieren. Wenn nicht zugegriffen werden kann, verwendet sie die Reparatur-URIs, um eine Reparaturquelle zu identifizieren. Für jede Windows App können maximal 10 Reparatur-URIs konfiguriert werden.
Die Reparatur-URIs können auf Windows Apps oder App-Installer-Dateien abzielen. Diese Einstellung erfordert nicht, dass die Windows App mithilfe einer App-Installer-Datei installiert wurde.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<UpdateSettings>
<OnLaunch
HoursBetweenUpdateChecks="12" />
</UpdateSettings>
<RepairUris>
<RepairUri></RepairUri>
<RepairUri></RepairUri>
</RepairUris>
</AppInstaller>
Alle Details zum XML-Schema finden Sie in der Referenz zur App-Installer-Datei.
Hinweis
Der Dateityp "App Installer" ist neu in Windows 10, Version 1709 (das Windows 10 Fall Creators Update). Es gibt keine Unterstützung für die Bereitstellung von Windows 10 Apps mit einer App Installer-Datei in früheren Versionen von Windows 10. Das element HoursBetweenUpdateChecks ist ab Windows 10 Version 1803 verfügbar.