使用 DISM 側載應用程式

您可以使用 PowerShell 或部署映像服務與管理 (DISM) ,側載企業營運 (LOB) 通用 Windows 應用程式。 Windows 應用程式包括:

一般而言,Windows 應用程式只能透過 Microsoft Store 取得。 您可以將 LOB Windows 應用程式提交至 Microsoft Store,並在企業外部提供它們。 不過,您也可以開發僅適用于企業內的 Windows 應用程式,並將它們新增至您透過稱為 側載的程式管理的 Windows 裝置。 側載的應用程式不需要透過 Microsoft Store 進行認證或安裝。

以下是側載應用程式時需要知道的內容:

如何? 描述

瞭解側載概念

介紹一些您需要瞭解側載應用程式的基本概念。

設定電腦以側載需求

顯示要符合的需求,以便在執行不同 Windows 版本之裝置上側載應用程式。 包含如何使用 群組原則 來設定企業電腦以側載應用程式。

設定電腦以開發 Microsoft Store Apps

示範如何設定您的電腦具有未到期的開發人員授權。 電腦可用來開發將新增至企業裝置的 Microsoft Store 應用程式或企業應用程式。

新增應用程式

示範如何側載您開發的應用程式。

新增應用程式的多種語言

示範如何準備多語系映射、登入映射、安裝任何所需的應用程式資源套件, (包括語言) ,然後使用複製設定檔來擷取映射。

清查應用程式

示範如何列出您企業或離線 Windows 映像中裝置上安裝的 LOB 應用程式。

移除應用程式

示範如何移除應用程式的個別實例,或移除應用程式的布建設定。

瞭解側載概念

Windows 應用程式與 Windows 傳統型應用程式的設計不同,以及使用者與其互動的方式。 若要深入瞭解 Windows 應用程式,請參閱 什麼是 Microsoft Store 應用程式?

您無法側載已從 Microsoft Store 下載的應用程式。 若要安裝不屬於您企業營運的 Windows 應用程式,您必須使用 Microsoft Store。 若要深入瞭解,請參閱 管理 Microsoft Store 的用戶端存取

未由 Microsoft Store 簽署的 LOB Windows 應用程式可以側載或新增至企業中的電腦,透過每個使用者在執行時間的腳本。 企業也可以在映射中布建它們,讓應用程式註冊到電腦上建立的每個新使用者設定檔。 側載每位使用者或映射中應用程式的需求相同,但您用來新增、取得和移除應用程式的Windows PowerShell Cmdlet 不同。 本主題提供這兩種方法的步驟。

您必須先設定電腦,才能側載未由 Microsoft Store 簽署的 LOB Windows 應用程式,請參閱 設定電腦以側載需求

當您開發企業用 LOB Windows 應用程式時

未由 Microsoft Store 簽署的 LOB Windows 應用程式必須經過密碼編譯簽署。 應用程式只能安裝在信任簽署憑證的電腦上。

如需如何簽署應用程式及使用憑證的詳細資訊,請參閱 應用程式封裝工具

不過,您可以使用開發人員授權,將開發中的應用程式新增至您的電腦。 如需有關測試開發中應用程式的詳細資訊,請參閱 取得開發人員授權

您可以使用群組原則設定已加入網域的電腦,讓開發人員授權過期,以支援應用程式開發。 設定電腦之後,您就不需要連線到網際網路來取得或更新授權。 如需詳細資訊,請參閱 設定電腦以開發 Microsoft Store Apps

設定電腦以側載需求

在裝置符合所有側載需求之前,[開始] 功能表上的應用程式磚會顯示右下角的 「X」,以指出問題導致應用程式無法執行。

在某些情況下,這些需求的一部分包括使用側載產品金鑰,以提供直接將應用程式部署至裝置所需的使用許可權,而不需要透過公用 Microsoft Store 進行安裝。

您必須先根據下列條件來設定裝置,才能新增並執行未由 Microsoft Store 簽署的側載 LOB Windows 應用程式:

  1. 對於已加入工作組的裝置,您必須:

    這適用於:

    • Windows 10 Enterprise
    • Windows 8.1 Enterprise
    • Windows 8 企業版
    • Windows Embedded 8.1 Industry Enterprise
    • Windows 8.1 專業版更新
  2. 對於將加入 Active Directory 網域的裝置,您必須:

    這適用於:

    • Windows 10 Enterprise
    • Windows 8.1 Enterprise
    • Windows 8 企業版
    • Windows Embedded 8.1 Industry Enterprise
    • Windows 8.1 專業版更新
    • Windows Server 2016 Technical Preview
    • Windows Server 2012 R2 更新
    • Windows Server 2012
  3. 對於需要側載產品金鑰的裝置,無論是已加入網域的裝置還是工作組的成員,您都必須:

    這適用於:

    • Windows 10 Pro
    • Windows RT 8.1
    • Windows 8.1 專業版
    • Windows RT
    • Windows 8 Pro
    • Windows Embedded 8.1 Industry Pro
  4. 針對某些 Windows Embedded 8 產業裝置,不論裝置已加入網域或工作組成員,您不再需要側載產品金鑰。 在此情況下,您必須:

    • 啟用[允許所有受信任的應用程式在裝置上安裝群組原則設定。

    如需有關側載 Windows Embedded 8 產業的詳細資訊,請參閱在Windows Embedded 8 產業上安裝通用Windows 8應用程式的企業指南

    這適用於:

    • Windows Embedded 8.1 產業專業版更新
    • Windows Embedded 8.1 產業企業版更新

使用群組原則設定企業電腦以側載應用程式

  1. 開啟網域的群組原則管理編輯器,群組原則物件 (GPO) ,您將依照下列指定,將群組原則設定套用至您選取的電腦。

    注意

    此程式中提供的步驟假設您瞭解群組原則設計和作業的基本概念。 若要管理網域,群組原則。 您必須安裝隨選隨選遠端伺服器管理工具功能的群組原則 Management Console。 如需群組原則的詳細資訊,請參閱初學者群組原則 Techcenter 群組原則

  2. 按一下以展開 [電腦設定]、[ 系統管理範本]、 [Windows 元件] 和 [ 應用程式套件部署]。

  3. 按兩下 [允許所有受信任的應用程式安裝 ] 設定。

  4. 在 [ 允許所有受信任的應用程式安裝 ] 視窗中,按一下 [ 已啟用 ],然後按一下 [ 確定]。

將群組原則設定為允許信任的應用程式更新 HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Appx\AllowAllTrustedApps = 1 登錄機碼。

啟用側載產品金鑰

  1. 使用系統管理員許可權開啟命令提示字元,並輸入下列命令以新增側載產品金鑰:

    Slmgr /ipk <sideloading product key>
    

    其中 <sideloading product key> 是在電腦上啟用側載的 25 位數金鑰。

  2. 輸入下列命令以啟用側載金鑰:

    slmgr /ato ec67814b-30e6-4a50-bf7b-d55daf729d1e
    

    注意

    啟用 GUID 與側載產品金鑰不同。 啟用 GUID 一律為 ec67814b-30e6-4a50-bf7b-d55daf729d1e。

設定開發 Windows 應用程式的電腦

您可以將電腦設定為具有未過期的開發人員授權。 設定好電腦之後,您就不需要連線到網際網路,即可取得或更新授權。 您的電腦必須是網域的成員,而且正在執行下列任一作業系統:

  • Windows 10 Enterprise
  • Windows 8.1 Enterprise
  • Windows 8 Pro

注意

若要在Windows 8 專業版裝置上啟用側載,您必須使用側載產品啟用金鑰。 如需詳細資訊,請參閱 設定電腦以側載需求

使用開發人員授權設定企業電腦

  1. 開啟網域群組原則管理編輯器,群組原則物件 (GPO) ,您將依照下列方式將群組原則設定套用至您選取的電腦。

    注意

    此程式中提供的步驟假設您瞭解群組原則設計和作業的基本概念。 若要管理網域,以群組原則為基礎。 您必須安裝隨選遠端伺服器管理工具功能的群組原則 Management Console。 如需群組原則的詳細資訊,請參閱初學者群組原則和群組原則 Techcenter

  2. 按一下以展開 [電腦設定]、[ 系統管理範本]、 [Windows 元件] 和 [ 應用程式套件部署]。

  3. 按兩下 [允許開發 Windows 應用程式而不安裝開發人員授權 ] 設定。

  4. 在 [ 允許開發 Windows 應用程式而不安裝開發人員授權 ] 視窗中,按一下 [ 已啟用 ],然後按一下 [ 確定]。

  5. 按兩下 [允許所有受信任的應用程式安裝 ] 設定。

  6. 在 [ 允許所有受信任的應用程式安裝 ] 視窗中,按一下 [ 已啟用 ],然後按一下 [ 確定]。

將群組原則設定為允許開發 Windows 應用程式,而不需安裝開發人員授權更新登錄 HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Appx\AllowDevelopmentWithoutDevLicense = 1 機碼。

將群組原則設定為允許信任的應用程式更新 HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Appx\AllowAllTrustedApps = 1 登錄機碼。

新增應用程式

有兩種方式可以新增應用程式。 使用者可以新增應用程式套件,讓應用程式只可供該使用者使用。 或者,應用程式可以安裝在 Windows 映像中,如果使用者帳戶已建立,則該應用程式可在第一次登入或下次登入時提供給 Windows 映像的每個使用者使用。 第二個案例稱為布建應用程式套件。

新增應用程式套件

您可以使用 add-appxpackage PowerShell Cmdlet,以個別使用者為基礎安裝應用程式套件 (.appx 或 .appxbundle) 。 您可以為每個使用者新增的 LOB 應用程式數目沒有任何限制。

將 LOB 應用程式新增至使用者帳戶

  • 在 Windows PowerShell,新增 .appx (或 .appxbundle) 檔案套件。 當您新增應用程式時,請包含任何必要的相依性應用程式套件。 例如,輸入:

    add-appxpackage C:\app1.appx -DependencyPath C:\winjs.appx
    

    如需詳細資訊,請參閱Windows PowerShell 中的應用程式安裝 Cmdlet

將布建的 LOB 應用程式新增至 Windows 映像

安裝在 Windows 映像中的應用程式稱為 已布建 的應用程式。 布建的應用程式會暫存于映射中,並排定在第一次登入時或下次登入時,針對 Windows 映像的每個使用者安裝。

當您開機進入稽核模式時,可以使用 DISM 應用程式布建命令,將這些應用程式新增至 Windows 映像。 如需稽核模式的詳細資訊,請參閱 稽核模式概觀

布建的應用程式專屬於電腦,且不會與使用者漫遊。 您只能在映射中安裝 24 個布建的應用程式。

在已部署的 Windows 映像上,您應該改為在 PowerShell 中使用 Add-AppxPackage Cmdlet。 如果您在已部署的 Windows 映像上使用 DISM 應用程式布建命令搭配使用中使用者,您應該將所有使用者登出映射,以便在執行命令之前,您是唯一登入的使用者。

將布建的 LOB 應用程式新增至 Windows 映像

  • 使用部署映射服務與管理 (DISM) 命令列工具或 PowerShell Cmdlet,在沒有 Microsoft Store 授權的情況下新增 LOB 應用程式。 例如,在提升許可權的命令提示字元中,輸入:

    DISM /Online /Add-ProvisionedAppxPackage /PackagePath:C:\App1.appx /SkipLicense
    

    或者,在Windows PowerShell提示字元中,輸入:

    Add-AppxProvisionedPackage -Online -FolderPath C:\Appx -SkipLicense
    

    如需詳細資訊,請參閱 DISM 應用程式套件 (.appx 或 .appxbundle) 服務Command-Line選項DISM Cmdlet。 如需 DISM 支援平臺的資訊,請參閱 DISM 支援的平臺

注意

安裝布建的 LOB 應用程式之前,電腦不需要加入網域或啟用側載產品金鑰。 不過,除非電腦符合此側載需求,否則應用程式不會執行。 如需詳細資訊,請參閱 自訂開始畫面

將布建的 LOB 應用程式新增至 Windows 映像後更新

若要更新布建的應用程式,您必須針對已使用應用程式布建的 Windows 映像的每個使用者更新應用程式:

將布建的 LOB 應用程式更新為 Windows 映像

  1. 使用 PowerShell 在沒有 Microsoft Store 授權的情況下更新 LOB 應用程式。 這必須針對已登入執行 Windows 映像之電腦的每個使用者完成。 例如,如果您已安裝應用程式的原始版本 1.0.0.0,則現在必須更新為 1.0.0.1 版,然後在 PowerShell 會話中輸入:

    Add-AppxPackage -Path App1_1.0.0.2 -DependencyPath C:\appx\WinJS.appx
    

    其中 c:\appx\WinJS.appx 是相依性套件的路徑。

  2. 更新應用程式之後,您可以確認已更新的應用程式版本。 從 PowerShell 會話,輸入:

    Get-AppxPackage | Out-GridView
    

為應用程式新增多種語言

若要準備多語言映射,請登入映射,請安裝任何所需的應用程式資源套件, (包括語言) ,然後使用複製設定檔來擷取映射。

為應用程式準備多語系影像

  1. 使用下列內容建立unattend.xml,以c:\unattend.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
        <settings pass="specialize">
            <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <CopyProfile>true</CopyProfile>
                <RegisteredOrganization />
                <RegisteredOwner />
            </component>
        </settings>
        <cpi:offlineImage cpi:source="catalog:d:/desktop/x86 clgs/install_windows vista ultimate.clg" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
    </unattend>
    

    注意

    如需從 Microsoft Store 設定語言及安裝更新的相關資訊,請參閱 變更應用程式中所使用的語言

  2. 在全新映射上從 OOBE 登入本機系統管理員使用者帳戶。

    重要

    將特定語言新增至 Windows 應用程式時,您也會想要使用與 Windows 應用程式相同的語言 將語言套件新增至 Windows

  3. 將所需的語言新增至目前使用者的語言喜好設定清單。

  4. 使用 Microsoft Store 帳戶安裝應用程式更新, (MSA 帳戶)

    1. 使用 MSA 帳戶登入 Microsoft Store。

      注意

      僅限 Microsoft Store。 請勿將本機帳戶轉換為 MSA。

      如果您沒有 MSA 帳戶,則可以在沒有 Microsoft Store 帳戶的情況下更新應用程式。

    2. 檢查更新並安裝新的語言資源套件。

    3. 登出 Microsoft Store 並移除 MSA 帳戶。

  5. 開啟提升許可權的命令提示字元並截取:

    Sysprep.exe /generalize /oobe /reboot /unattend:C:\unattend.xml
    
  6. 您應該會看到電腦開機至 OOBE。 此時應該會出現您在複製設定檔之前新增的任何語言。

不使用 Microsoft Store 帳戶安裝應用程式更新, (MSA 帳戶)

  1. 電腦安裝完成之後,以系統管理員身分開啟命令提示字元。

  2. 執行 Start ms-windows-store:Updates

  3. 您會看到 Microsoft Store 更新 頁面。 您應該會看到顯示的擱置更新。

  4. 點選 [安裝 ] 以安裝更新。

清查應用程式

您可以列出在離線或線上 Windows 映像上安裝的 LOB 應用程式,並取得套件的其他資訊。

列出每個使用者帳戶的 LOB Apps

  1. 您可以取得電腦上安裝特定使用者帳戶的 Windows 應用程式清單。 您必須以系統管理員許可權開啟 PowerShell,以列出目前使用者以外的使用者套件。 例如,在 PowerShell 提示字元中,輸入:

    Get-AppxPackage -AllUsers
    
  2. 您可以取得針對特定使用者安裝的套件清單。 您必須以系統管理員許可權開啟 PowerShell,以列出目前使用者以外的使用者套件。 例如,在 PowerShell 提示字元中,輸入:

    Get-AppxPackage -Name Package1 -User domain\username
    
  3. 您也可以取得應用程式套件 (.appx) 的資訊清單,其中包含套件識別碼等資訊。 例如,在 PowerShell 提示字元中,輸入:

    Get-AppxPackageManifest -Package Package1
    
  4. 如果您不知道套件的完整名稱,您可以使用管線來取得應用程式套件的資訊清單 (.appx) 。 例如,在 PowerShell 提示字元中,輸入:

    (Get-AppxPackage -Name "*WinJS*" | Get-AppxPackageManifest).package.applications.application.id
    

列出 Windows 映像中布建的 LOB 應用程式

  • 您可以使用 Dism.exe 或 PowerShell,取得 Windows 映像中布建的套件清單,這些套件將會針對每個新使用者安裝。 例如,在 PowerShell 提示字元中,輸入:

    Get-AppxProvisionedPackage -Path c:\offline
    

    或者,在命令提示字元中,輸入:

    DISM.exe /Image:C:\test\offline /Get-ProvisionedAppxPackages
    

如需詳細資訊,請參閱 使用 DISM 擷取映射或元件的清查

移除應用程式

您可以移除應用程式的個別實例,或移除應用程式的布建設定。

移除每個使用者帳戶的 LOB 應用程式

  • 您只能移除目前使用者的單一應用程式。 例如,請在命令提示字元鍵入:

    Remove-AppxPackage Package1
    

移除 Windows 映像中布建的 LOB 應用程式

  • 當您移除布建的應用程式時,將不會為新的使用者帳戶安裝應用程式。 對於目前登入的使用者和其他在電腦上使用中的使用者帳戶,應用程式將不會從這些帳戶中移除。 應用程式必須針對這些現有的應用程式卸載。

    例如,若要從 Windows 映像中移除布建的 LOB 應用程式 MyAppxPkg,請在提升許可權的 PowerShell 提示字元中輸入:

    Remove-AppxProvisionedPackage -Online -PackageName MyAppxPkg
    

    或者,在命令提示字元中,輸入:

    DISM.exe /Online /Remove-ProvisionedAppxPackage /PackageName:microsoft.app1_1.0.0.0_neutral_en-us_ac4zc6fex2zjp
    

Windows PowerShell 中的應用程式安裝 Cmdlet

DISM 應用程式套件 (.appx 或 .appxbundle) 服務Command-Line選項

應用程式封裝工具

AppX 模組 Cmdlet

變更應用程式中使用的語言

DISM Cmdlet

DISM 支援的平臺

在 Windows Embedded 8 產業上安裝通用Windows 8應用程式的企業指南

取得開發人員授權

適用于初學者的群組原則

群組原則 Techcenter

自訂開始畫面

管理 Microsoft Store 的用戶端存取

Microsoft 大量授權

Windows 8.1 的遠端伺服器管理工具

什麼是 Microsoft Store 應用程式?