ProvisionedAppxPackage VS AppxPackage

8089 ワード

本文


まず問題の由来を話しましょう.
Preinstallのcomponentには、MS_というcomponentがありますStartApp、このcomponentの動作は、事前インストール時にターゲットマシンにModernアプリをインストールすることです.問題は、旧版のMS_StartAppはModern Appをインストールする時、一部のAppはインストールに成功していないで、新版のMS_StartAppにはこの問題はありません.しかし、もう一つの部門の同僚は、手に持っている機械が古いバージョンのMSを使っています.StartAppがインストールされると、一部のAppがインストールされなくなり、Start MenuでいくつかのTileが失われたことが直感的に反映されます.
良い解決策は、私が単独で実行するcomponentを開発して、紛失したAppのインストールを支援することです.
そこで私はいくつかの前期調査をしました.まずはMS_StartAppはSample Scriptとして学び、ModernAppのソースファイルは.appxまたは.appxbundleファイルは、DISMの次のコマンドでインストールされます.DISM Command-Line Script: DISM /Online /Add-ProvisionedAppxPackage


, PowerShell DISM Cmdlets DISM ,DISM ,DISM Cmdlets 。PowerShell DISM Cmdlets :

PowerShell DISM Cmdlets Script: PS > Add-AppxProvisionedPackage -Online

 

ProvisionedAppxPackage , PowerShell DISM Cmdlets Script 。

, App ProvisionedAppxPackage, AppxPackage。 , , ProvisionedAppxPackage AppxPackage?

AppxPackage, PowerShell :

PowerShell Appx Module Cmdlets Script: PS > Add-AppxPackage

 

, ?

, :ProvisionedAppxPackage AppxPackage ?

, , , ProvisionedAppxPackage AppxPackage !

  

PowerShell DISM Cmdlets ,  Add-AppxProvisionedPackageコマンドには、 のような な があります.
The Add-AppxProvisionedPackage cmdlet adds an app package (.appx) that will install for each new user to a Windows image.
Use the Online parameter to specify the running operating system on your local computer, or use the Path parameter to specify the location of a mounted Windows image.
To add an app package (.appx) for a particular user, or to test a package while developing your app, use the Add-AppxPackage cmdlet instead.
PowerShellのAppx Module Cmdletsでは、Add-AppxPackageコマンドについて な があります.
Adds a signed app package to a user account.
したがって、ProvisionedAppxPackageとAppxPackageの いはアカウントと があると されます.
まず、CDCアカウントの で、 のPowerShell DISM Cmdletsコマンドを して、ProvisionedAppxPackageリストを り します.PowerShell DISM Cmdlets Script: PS > Get-AppxProvisionedPackage -Online

 

, ProvisionedAppxPackage List, , ProvisionedAppxPackage  for each new user  。

, ProvisionedAppxPackage List。

, CDC , PowerShell , AppxPackage :

PowerShell Appx Module Cmdlets Script: PS > Get-AppxPackage

 

PackageFullName PackageName, :

 

ProvisionedAppxPackage AppxPackage 。 AppxPackage , Base OS App。

CDC_Temp, CDC_Temp OOBE。OOBE , AppxPackage , CDC CDC_Temp AppxPackage , PackageFullName, :

 

, AppxPackage 。

OOBE , , OOBE ProvisionedAppxPackage AppxPackage。

,  BingFinanceこのProvisionedAppxPackageを し、 CDCを します.Julius、OOBEを っています.
PackageFullNameをフィルタした 、CDCとCDC_JuliusのAppxPackageの は の りです.
 
CDCにはBingFinanceがあり、CDC_はJuliusにはBingFinanceはありません.
これにより, しいアカウントOOBEではシステム のProvisionedAppxPackageがAppxPackageとしてインストールされることが された. 
 


Get-AppxPackage-AllUsersについて


PowerShellのAppx CmdletsのGet-AppxPackageコマンドには、-AllUsersのパラメータがあり、すべてのアカウントの のAppxPackageリストを り すことができます.PowerShell Appx Module Cmdlets Script: PS > Get-AppxPackage -AllUsers
 
システムにはCDCとCDCしかありません.Tempの2つのアカウントの 、BingFinanceに する を のように します.
Name                   : Microsoft.BingFinance
Publisher              : CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Architecture           : X86
ResourceId             : 
Version                : 4.8.239.0
PackageFullName        : Microsoft.BingFinance_4.8.239.0_x86__8wekyb3d8bbwe
InstallLocation        : C:\Program Files\WindowsApps\Microsoft.BingFinance_4.8.239.0_x86__8wekyb3d8bbwe
IsFramework            : False
PackageFamilyName      : Microsoft.BingFinance_8wekyb3d8bbwe
PublisherId            : 8wekyb3d8bbwe
PackageUserInformation : {S-1-5-21-3858193888-3433337990-3667270340-1001 [CDC]: Installed, S-1-5-21-3858193888-3433337990-3667270340-1002 [CDC_Temp]: Installed} IsResourcePackage : False IsBundle : False IsDevelopmentMode : False 

  
なお、PackageUserInformationには、AppxPackageがインストールされているユーザが されます.

Remove-AppxPackageについて


PowerShellのAppx CmdletsのRemove-AppxPackageコマンドは、 のユーザーに してのみAppxPackageを できます.PowerShell Appx Module Cmdlets Script: PS > Remove-AppxPackage <string>

AppxPackage, (.appx or .appxbundle) ProvisionedAppxPackage ( Windows.Photos 。 .appx or .appxbundle , , OOBE APP)

, MS_StartApp component APP, ProvisionedAppxPackage, , , ProvisionedAppxPackage , APP ( )

APP ProvisionedAppxPackage, MicrosoftEdge ( Win10 OS ) ProvisionedAppxPackage, AppxPackage 。 , APP, , SystemApps 。

AppxPackage ProvisionedAppxPackage , :
Modern APP, , ProvisionedAppxPackage , , OOBE APP, AppxPackage , , OOBE APP。

( 4 ), Provisioned Apps :

Apps that are installed in the Windows image are called provisioned apps. Provisioned apps are staged in the image and are scheduled to be installed for every user of the Windows image at first logon or at the next logon, if the user account is already created.

, !

  1. DISM App Package (.appx or .appxbundle) Servicing Command-Line Options ( DISM ProvisionedAppxPackage, )
  2. DISM Cmdlets (PowerShell DISM Cmdlets)
  3. Appx Module Cmdlets (PowerShell Appx Module Cmdlets)
  4. Sideload Apps with DISM ( Apps Sideload , )

 

:8/12/2016 3:06:42 PM