DISM App-Paket (.appx or .appxbundle) Wartungs-Befehlszeilenoptionen
Sie können App-Paketwartungsbefehle verwenden, um bereitgestellte App-Pakete (.appx oder .appxbundle) in einem Windows-Image hinzuzufügen, zu entfernen und aufzulisten. Ein .appxbundle ist eine Sammlung von App- und Ressourcenpaketen, die zusammen verwendet werden, um die App-Erfahrung zu erweitern, während der Speicherplatzbedarf auf einem gegebenen PC minimiert wird. Ausführliche Informationen zu .appxbundle-Paketen und der Microsoft Store-Pipeline finden Sie unter App-Paketierung. Wenn ein Bundle mithilfe von DISM bereitgestellt wird, kann dem Image gegebenenfalls nur eine Teilmenge der Pakete in einem .appxbundle hinzugefügt werden. Weitere Informationen finden Sie unter Verstehen, wie DISM .apxbundle-Ressourcenpakete zu einem Image hinzufügt.
Bereitgestellte App-Pakete werden zu einem Windows-Image hinzugefügt und anschließend für jedes neue oder vorhandene Benutzerprofil bei der nächsten Anmeldung des Benutzers installiert. Weitere Informationen, einschließlich der Anforderungen für die Bereitstellung von App-Paketen, finden Sie unter Apps mit DISM querladen.
Sie können auch PowerShell verwenden, um App-Pakete (.appx oder .appxbundle) pro Image oder pro Benutzer in einer Windows-Installation hinzuzufügen, zu entfernen und aufzulisten. Weitere Informationen finden Sie unter "Deployment Imaging Servicing Management" (DISM)-Cmdlets in Windows PowerShell und App-Installations-Cmdlets in Windows PowerShell.
DISM-Wartungssyntax
Die Basissyntax für die Wartung eines Windows-Images mit DISM lautet:
DISM.exe {/Image:<path_to_image_directory>|/Online} [dism_global_options] {servicing_option} <servicing_argument>]
Optionen für Offlineimages
Für ein Offlineimage stehen die folgenden App-Paket (.appx oder .appxbundle) Wartungsoptionen Verfügung.
DISM.exe /Image:<path_to_image_directory> [/Get-ProvisionedAppxPackages | /Add-ProvisionedAppxPackage | /Remove-ProvisionedAppxPackage | /Set-ProvisionedAppxDataFile | /StubPackageOption]
Optionen für Onlineimages
Für ein laufendes Betriebssystem stehen die folgenden App-Paket (.appx oder .appxbundle) Wartungsoptionen Verfügung.
DISM.exe /Online [/Get-ProvisionedAppxPackages | /Add-ProvisionedAppxPackage | /Remove-ProvisionedAppxPackage | /Set-ProvisionedAppxDataFile | /StubPackageOption]
/Get-Help /?
Wenn dieser Befehl unmittelbar nach einer App-Paket Wartungsbefehlszeilen-Option verwendet wird, werden Informationen zu der Option und den Argumenten angezeigt. Gegebenenfalls werden weitere Themen werden verfügbar, wenn ein Image angegeben ist.
Dism /image:C:\test\offline /Add-ProvisionedAppxPackage /?
Dism /online /Get-ProvisionedAppxPackages /?
/Get-ProvisionedAppxPackages
Zeigt Informationen zu App-Paketen (.appx oder .appxbundle) in einem Image an, die für jeden neuen Benutzer installiert werden sollen.
Dism /Image:C:\test\offline /Get-ProvisionedAppxPackages
/Add-ProvisionedAppxPackage
Fügt ein oder mehrere App-Paketen zum Image hinzu.
Die App wird zum Windows-Image hinzugefügt und für jedes vorhandene oder neue Benutzerprofil beim nächsten Anmelden des Benutzers registriert. Wenn die App zu einem Onlineimage hinzugefügt wird, wird die App erst bei der nächsten Anmeldung für den aktuellen Benutzer registriert.
Stellen Sie Apps auf einem Onlinebetriebssystem im Überwachungsmodus bereit, sodass geeignete Hardlinks für Apps erstellt werden können, welche die selben Dateien enthalten (um die Speicherplatznutzung zu minimieren), während außerdem für eine erfolgreiche Installation sichergestellt wird, dass keine Apps ausgeführt werden.
Syntax:
dism.exe /Add-ProvisionedAppxPackage {/FolderPath:<App_folder_path> [/SkipLicense\] [/CustomDataPath:<custom_file_path>] /PackagePath:<main_package_path> [/DependencyPackagePath:<dependency_package_path>] {[/LicensePath:<license_file_path>] [/SkipLicense\]} [/CustomDataPath:<custom_file_path>]} [/Region:<region>]
Verwenden Sie
/FolderPath
zum Angeben eines Ordners von entpackten App-Dateien mit einem Hauptpaket, allen Abhängigkeitspaketen und der Lizenzdatei. Dies wird nur bei einem ungepackten App-Paket unterstützt.Verwenden Sie
/PackagePath
, um ein App-Paket (.appx oder .appxbundle) anzugeben. Sie können/PackagePath
beim online Bereitstellen einer branchenspezifischen App verwenden.Wichtig
Verwenden Sie den
/PackagePath
Parameter, um .appxbundle-Pakete bereitzustellen. Außerdem können Abhängigkeitspakete nicht mit/PackagePath
bereitgestellt werden, sie müssen mit dem/DependencyPackagePath
Parameter für eine App bereitgestellt werden./PackagePath
wird nicht von einem Host-PC unterstützt, der Windows Preinstallation Environment (WinPE) 4.0, Windows Server 2008 R2 oder eine frühere Version von Windows ausführt.Benutzen Sie
/Region
um anzugeben, in welchen Regionen ein App-Paket (.appx oder .appxbundle) bereitgestellt werden muss. Das Regionsargument kann eines der folgenden sein:-
all
, mit dem Hinweis, dass die App für alle Regionen bereitgestellt werden soll, oder - Eine Semikolon-getrennte Liste von Regionen. Die Regionen werden in Form von ISO 3166-1 Alpha-2- oder ISO 3166-1 Alpha-3-Codes aufgeführt sein. Beispielsweise können die USA entweder als "US" oder "USA" (Groß- und Kleinschreibung beachten) angegeben werden. Wenn keine Liste von Regionen angegeben wird, wird das Paket nur bereitgestellt, wenn es an das Startlayout angeheftet ist.
-
Verwenden Sie
/DependencyPackagePath
, um jedes für die Bereitstellung der App erforderliche Abhängigkeitspaket anzugeben. Die erforderlichen Abhängigkeitspakete einer App finden Sie, indem Sie die<PackageDependency>
Elemente in der AppxManifest.xml im Stamm des .appx-Pakets der App betrachten. Wenn mehrere Apps dieselbe Abhängigkeit teilen, sollte die neueste Nebenversion von jeder einzelnen Hauptversion des Abhängigkeitspakets installiert werden. Beispielsweise verfügen App1, App2 und App3 über eine Abhängigkeit von Microsoft.NET.Native.Framework. App1 gibt Microsoft.NET.Native.Framework.1.6 mit Nebenversion 25512.0 an, App2 gibt Microsoft.NET.Native.Framework.1.6 mit Nebenversion 25513.0 an, und App3 gibt Microsoft.NET.Native.Framework.1.3 mit Nebenversion 24202.0 an. Da sowohl App1 als auch App2 die gleiche Hauptversion des Abhängigkeitspakets angeben, sollte nur die neueste Nebenversion 25513.0 installiert werden, während App3 eine andere Hauptversion des Abhängigkeitspakets angibt, sodass dieses auch installiert werden muss. Also sind die Abhängigkeitspakete, die installiert werden sollten, Microsoft.NET.Native.Framework.1.6 mit Nebenversion 25513.0 und Microsoft.NET.Native.Framework.1.3 mit Nebenversion 24202.0.Wenn das Paket Abhängigkeiten aufweist, die architekturspezifisch sind, müssen Sie alle anwendbaren Architekturen für die Abhängigkeit des Zielimages installieren. Beziehen Sie z. B. in einem x64-Zielimage sowohl einen Pfad zu den x86-, als auch zu den x64-Abhängigkeitspaketen ein, oder fügen Sie beide in den Ordner der entpackten App-Dateien ein. Wenn auch das Arm-Abhängigkeitspaket angegeben oder enthalten ist, wird DISM es ignorieren, da es nicht auf das Ziel x64-Image anwendbar ist.
Computerarchitektur Zu installierende Abhängigkeiten: x64 x64 und x86 x86 x86 Arm Nur Arm Verwenden Sie
/CustomDataPath
, um eine optionale benutzerdefinierte Datendatei für eine App anzugeben. Sie können einen beliebigen Dateinamen angeben. Die Datei wird in Custom.dat umbenannt, wenn sie dem Image hinzugefügt wird.Verwenden Sie
/LicensePath
mit der/PackagePath
Option, um den Speicherort der .xml Datei anzugeben, welche Ihre Anwendungslizenz enthält.Verwenden Sie
/SkipLicense
nur mit Apps, die keine Lizenz auf einem querladenden Computer benötigen. Die Verwendung von/SkipLicense
in anderen Szenarien kann ein Image kompromittieren.
Beispiele:
Dism /Image:C:\test\offline /Add-ProvisionedAppxPackage /FolderPath:c:\Test\Apps\MyUnpackedApp /CustomDataPath:c:\Test\Apps\CustomData.xml
Dism /Online /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appx /DependencyPackagePath:C:\Test\Apps\MyPackedApp\Framework-x86.appx /DependencyPackagePath:C:\Test\Apps\MyPackedApp\Framework-x64.appx /LicensePath:C:\Test\Apps\MyLicense.xml
Dism /Online /Add-ProvisionedAppxPackage /FolderPath:C:\Test\Apps\MyUnpackedApp /SkipLicense
Dism /Image:C:\test\offline /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appxbundle /SkipLicense
Dism /Online /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appxbundle /Region:"all"
Dism /Online /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appxbundle /Region:"US;GB"
/Remove-ProvisionedAppxPackage
Entfernt die Bereitstellung für App-Pakete (.appx oder .appxbundle) aus dem Image. App-Pakete werden nicht für Benutzerkonten registriert, die neu erstellt werden.
Syntax:
/Remove-ProvisionedAppxPackage /PackageName:<PackageName>
Wichtig
Diese Option wird die Bereitstellung für ein Paket nur entfernen, wenn es für ein beliebiges Benutzerprofil registriert ist. Verwenden Sie das Cmdlet Remove-AppxPackage in PowerShell, um die App für jeden Benutzer zu entfernen, der bereits registriert ist, um die App vollständig aus dem Image zu entfernen.
Wenn die App für kein Benutzerprofil registriert wurde, wird die /Remove-ProvisionedAppxPackage
Option das Paket vollständig entfernen.
Um App-Pakete von einem Windows Server 2012-Image oder höher zu entfernen, bei welchem die Desktopdarstellung installiert ist, müssen Sie die App-Pakete entfernen, bevor Sie die Desktopdarstellung entfernen. Die Desktopdarstellung ist eine Voraussetzung der /Remove-ProvisionedAppxPackage
Option für Server Core-Installationen von Windows Server.
Beispiel:
Dism /Image:C:\test\offline /Remove-ProvisionedAppxPackage /PackageName:microsoft.devx.appx.app1_1.0.0.0_neutral_ac4zc6fex2zjp
/Optimize-ProvisionedAppxPackages
Optimiert die Gesamtdateigröße der bereitgestellten Pakete auf dem Image, indem identische Dateien durch Hardlinks ersetzt werden. Sobald ein Bild mit bereitgestellten AppX-Paketen online ist, /optimize-provisionedappxpackages
können die bereitgestellten AppX-Pakete nicht optimiert werden. Wenn Sie ein Image offline erstellen und Pakete hinzufügen, werden nur die Pakete optimiert, die bereitgestellt werden, nachdem das Image wieder offline genommen wurde.
Dieser Befehl wird nicht für ein Onlineimage unterstützt.
DISM.exe /Image:C:\test\offline /Optimize-ProvisionedAppxPackages
/Set-ProvisionedAppxDataFile
Fügt dem angegebenen App-Paket (.appx oder .appxbundle) eine benutzerdefinierte Datendatei hinzu.
Syntax
/Set-ProvisionedAppxDataFile [/CustomDataPath<custom_file_path>] /PackageName<PackageName>
Das angegebene App-Paket (.appx oder .appxbundle) muss bereits dem Image hinzugefügt werden, bevor Sie die benutzerdefinierte Datendatei mit dieser Option hinzufügen. Sie können auch eine benutzerdefinierte Datendatei hinzufügen, indem Sie die /Add-ProvisionedAppxPackage
Option verwenden.
Verwenden Sie
/CustomDataPath
, um eine optionale benutzerdefinierte Datendatei für eine App anzugeben. Sie können einen beliebigen Dateinamen angeben. Die Datei wird in Custom.dat umbenannt, wenn sie dem Image hinzugefügt wird. Wenn die „Custom.dat“-Datei bereits vorhanden ist, wird sie überschrieben.Verwenden Sie /PackageName, um ein App-Paket (.appx oder .appxbundle) anzugeben.
Beispiel:
DISM.exe /Image:C:\test\offline /Set-ProvisionedAppxDataFile /CustomDataPath:c:\Test\Apps\Custom.dat /PackageName:microsoft.appx.app1_1.0.0.0_neutral_ac4zc6fex2zjp
/StubPackageOption
Wird in Verbindung mit App-Paketwartungsoptionen verwendet, um die Stubeinstellung des Pakets anzugeben.
Syntax:
/StubPackageOption:{installstub | installfull}
-
InstallStub
legt das Bereitstellungspaket auf die Stubversion fest. Legt implizit die Stubeinstellung auf „Stub“ fest. - InstallFull legt das Bereitstellungspaket auf die Vollversion fest. Legt implizit die Stubeinstellung auf „Full“ fest.
Wenn keine Stubpaketoption angegeben wird, dann ist die bereitgestellte Paketversion auf die vordefinierten Stubeinstellungen festgelegt.
Beispiel:
Dism /image:C:\test\offline /add-provisionedappxpackage /packagepath:"C:\dism\stub\appwithresources.appxbundle" /stubpackageoption:installstub
Verstehen, wie DISM .apxbundle-Ressourcenpakete zu einem Image hinzufügt
Wenn ein .appxbundle dem Image hinzugefügt wird, gelten nicht alle Ressourcenpakete innerhalb des Bundles. Wenn beispielsweise eine App einem Windows-Image mit einer spanischen (Spanien) Standardsprache hinzugefügt wird, sollten französische (Frankreich) Ressourcen nicht eingeschlossen werden. Um zu ermitteln, welche Ressourcen dem Image hinzugefügt werden, wird die Paketanwendbarkeit mithilfe von Folgendem bestimmt:
Sprachressourcenpakete: Wenn keine Betriebssystemsprache vorhanden ist, wird das entsprechende App-Ressourcenpaket nicht hinzugefügt. Sie können beispielsweise ein Image haben, das ein Windows 10 mit Englisch (US) als Standardsprache und in welches ein spanisches (Spanien) Sprachpaket enthalten ist. Englisch (US) und Spanisch (Spanien) App-Ressourcenpakete werden dem Image hinzugefügt. Wenn ein Französisch (Frankreich) Ressourcenpaket (oder irgendeine andere Sprache) im App-Bundle verfügbar ist, wird es nicht hinzugefügt.
Skalierungs- und DirectX- (DXFL) Ressourcenpakete: Skalierungs- und DirectX- (DXFL) Ressourcenpakete hängen von der Hardwarekonfiguration des Windows-Geräts ab. Da der Typ der Zielhardware zum Zeitpunkt der Ausführung der DISM-Befehle nicht bekannt sein kann, werden alle Skalierungs- und DXFL-Ressourcenpakete dem Image zur Bereitstellungszeit hinzugefügt. Weitere Informationen zum Entwickeln einer App mit Skalierungsressourcen finden Sie unter Richtlinien zur Skalierung auf Pixeldichte (Microsoft Store-Apps).
Für ein Image mit mehreren Sprachpaketen werden dem Image App-Ressourcenpakete für jede Sprache hinzugefügt. Nachdem sich der erste Benutzer an dem PC mit dem bereitgestellten Image angemeldet hat und der Benutzer eine Sprache auf der Windows-Willkommensseite ausgewählt hat, werden die nicht anwendbaren Ressourcenpakete entfernt (Sprachressourcenpakete, Skalierungsressourcenpakete und DXFL-Ressourcenpakete), die nicht mit den Benutzerprofileinstellungen übereinstimmen.
Beispielsweise kann eine App Englisch (US), Französisch (Frankreich) und Spanisch (Spanien) unterstützen. Wenn die App einem Image mit Englisch- (US) und Spanisch- (Spanien) Sprachpaketen hinzugefügt wird, werden dem Image nur Englisch- (US) und Spanisch- (Spanien) Ressourcenpakete hinzugefügt. Wenn sich dann ein Benutzer zum ersten Mal anmeldet und auf der Windows-Willkommensseite Englisch (US) als Betriebssystemsprache auswählt, werden die Spanisch- (Spanien) Ressourcenpakete nach Abschluss der Anmeldung entfernt.
Wichtig
Wenn Sie ein Sprachpaket zu einem Image hinzufügen oder daraus entfernen, ändern Sie den Anwendbarkeitskontext, was dazu führen kann, dass ein falscher oder unvollständiger Satz von Ressourcenpaketen im Image verbleibt. Wenn ein Sprachpaket hinzugefügt oder entfernt wird, müssen Sie erneut alle .appxbundle-Pakete (einschließlich aller Abhängigkeitspakete und Microsoft Store-Lizenzdatei) zum Image hinzufügen. Dadurch wird sichergestellt, dass der richtige Satz an Ressourcenpaketen bereitgestellt wird.
Einschränkungen
Sie können ein App-Paket (.appx) nicht auf einem Betriebssystem installieren, das keine Windows 8 Apps unterstützt. Sie können ein App-Bundlepaket (.appxbundle) nicht auf einem Betriebssystem installieren, das nicht mindestens Windows 8.1 Apps unterstützt. Apps werden nicht auf WinPE 4.0, der Windows Server 2012 Server Core-Installationsoption oder allen anderen Versionen von Windows, die älter als Windows 8 und Windows Server 2012 sind, unterstützt.
Um Apps auf Windows Server 2012 zu installieren und auszuführen, müssen Sie die Desktopdarstellung installieren.
Die Option /FolderPath wird nur für App-Pakete unterstützt. die auf dem .appx-Format basieren.
/PackagePath muss immer für .appxbundle-Pakete verwendet werden.
Zugehörige Themen
Befehlszeilenoptionen für die DSM-Imageverwaltung
Befehlszeilenoptionen für die Abbildverwaltung für die Bereitstellung (DISM)