使用 Microsoft Application Virtualization Sequencer (App-V Sequencer) 時自動更新多個應用程式

適用於

  • Windows 10
  • Windows 11

同時更新多個應用程式所遵循的程式與 用來同時自動排序多個應用程式的程序類似。 不過,更新時,您也必須將先前建立的應用程式套件檔案傳遞至 App-V Sequencer Cmdlet。

從 Windows 10 1703 版開始,執行 New-BatchAppVSequencerPackages Cmdlet 或 App-V Sequencer 介面會擷取並儲存所有自定義專案作為 App-V 專案範本。 如果您稍後想要變更此套件,則會自動從此範本檔案載入您的自訂專案。

使用 PowerShell Cmdlet 更新多個應用程式

同時更新多個應用程式需要您建立 ConfigFile ,其中包含每一輪更新的相關信息。 Cmdlet 接著會使用此檔案在「乾淨」檢查點啟動 VM、將安裝程式從主機裝置複製到 VM,然後啟動 App-V Sequencer 以監視指定的應用程式安裝。

建立您的 ConfigFile 以供 PowerShell Cmdlet 使用

  1. 判斷需要包含在應用程式套件中的應用程式,然後開啟文本編輯器,例如記事本。

  2. 為每個應用程式新增下列 XML 資訊:

    • <AppName>. 您要新增至套件的應用程式名稱。

    • <InstallerFolder>. 具有應用程式安裝程式的資料夾檔案路徑。

    • <Installer>. 應用程式可執行檔的檔名。 此檔案通常是 .exe 或 .msi 檔案。

    • <InstallerOptions>. 應用程式安裝所需的命令列選項。

    • <Package>. App-V 套件位置的檔案路徑。 這些套件是在您排序應用程式時建立的。

    • <TimeoutInMinutes>. Cmdlet 應該等候更新完成的時間上限,以分鐘為單位。 您可以根據應用程式本身的大小和複雜度,為每個應用程式輸入不同的值。

    • <Cmdlet>. 判斷排序器是使用 Cmdlet 還是 App-V Sequencer 介面。 True 表示排序器使用以 Cmdlet 為基礎的更新,而 False 則會告知排序器使用 App-V Sequencer 介面。 您可以在相同的 ConfigFile 中,針對不同的應用程式同時使用 Cmdlet 和 介面。

    • <Enabled>. 指出是否應該排序應用程式。 True 包含應用程式, 而 False 則會忽略它。 您可以在批處理檔中包含所需數量的應用程式,但選擇性地只啟用其中幾個應用程式。

      範例:

      <?xml version="1.0"?>
      <Applications>
          <Application>
              <AppName>Skype for Windows Update</AppName>
              <InstallerFolder>D:\Install\Update\SkypeforWindows</InstallerFolder>
              <Installer>SkypeSetup.exe</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\Microsoft_Apps\skypeupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>true</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
          <Application>
              <AppName>Microsoft Power BI Update</AppName>
              <InstallerFolder>D:\Install\Update\PowerBI</InstallerFolder>
              <Installer>PBIDesktop.msi</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\MS_Apps\powerbiupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>true</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
      </Applications>
      
  3. ConfigFile 名稱儲存已完成的檔案。

啟動App-V Sequencer 介面和應用程式安裝程式

  • 在主計算機上以系統管理員身分開啟 PowerShell,然後執行下列命令來啟動批次更新:

    New-BatchAppVSequencerPackages –ConfigFile <path_to_configfile> –VMName <name_of_vm> -OutputPath <path_to_your_output>
    

    其中 <name_of_vm> 是虛擬機 (VM 的名稱,) 安裝您將執行批次更新的 App-V Sequencer,而 <path_to_your_output> 是應複製更新套件的完整路徑。

    Cmdlet 會在 VM 上建立「乾淨」檢查點。 建立檢查點之後,Cmdlet 會將 ConfigFile 中所列的第一個應用程式安裝程式從主計算機複製到 VM。 此複製作業會透過 VMConnect) 開啟 VM (的新工作階段,讓應用程式更新從命令行開始。 完成 VM 上第一個應用程式的更新和套件建立之後,套件會從 VM 複製到 OutputPath 參數中指定的主電腦。 Cmdlet 接著會移至清單上的第二個應用程式,將 VM 還原回「乾淨」檢查點,然後再次執行所有步驟,直到第二個應用程式套件複製到您的輸出資料夾為止。 此程式會繼續進行,直到您清單中包含的所有應用程式都完成為止。 在最後一個應用程式之後,VM 會還原回「乾淨」檢查點並關閉。

使用 App-V Sequencer 介面更新多個應用程式

同時更新多個應用程式需要您建立 ConfigFile ,以收集與每一輪更新相關的所有資訊。 在 VM 上建立「乾淨」檢查點之後,App-V Sequencer 介面便會使用此檔案。

建立 ConfigFile 以供 App-V Sequencer 介面使用

  1. 判斷需要更新的應用程式,然後開啟文本編輯器,例如記事本。

  2. 為每個應用程式新增下列 XML 資訊:

    • <AppName>. 您要新增至套件的應用程式名稱。

    • <InstallerFolder>. 具有應用程式安裝程式的資料夾檔案路徑。

    • <Installer>. 應用程式可執行檔的檔名。 此檔案通常是 .exe 或 .msi 檔案。

    • <Package>. App-V 套件位置的檔案路徑。 這些套件是在您排序應用程式時建立的。

    • <TimeoutInMinutes>. Cmdlet 應該等候更新完成的時間上限,以分鐘為單位。 您可以根據應用程式本身的大小和複雜度,為每個應用程式輸入不同的值。

    • <Cmdlet>. 判斷排序器是使用 Cmdlet 還是 App-V Sequencer 介面。 True 表示排序器使用以 Cmdlet 為基礎的更新,而 False 則會告知排序器使用 App-V Sequencer 介面。 您可以在相同的 ConfigFile 中,針對不同的應用程式同時使用 Cmdlet 和 介面。

    • <Enabled>. 指出是否應該排序應用程式。 True 包含應用程式, 而 False 則會忽略它。 您可以在批處理檔中包含所需數量的應用程式,但選擇性地只啟用其中幾個應用程式。

      範例:

      <?xml version="1.0"?>
      <Applications>
          <Application>
              <AppName>Skype for Windows Update</AppName>
              <InstallerFolder>D:\Install\Update\SkypeforWindows</InstallerFolder>
              <Installer>SkypeSetup.exe</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\Microsoft_Apps\skypeupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>false</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
          <Application>
              <AppName>Microsoft Power BI Update</AppName>
              <InstallerFolder>D:\Install\Update\PowerBI</InstallerFolder>
              <Installer>PBIDesktop.msi</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\MS_Apps\powerbiupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>false</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
      </Applications>
      

啟動App-V Sequencer 介面和應用程式安裝程式

  • 在主計算機上以系統管理員身分開啟 PowerShell,然後執行下列命令來啟動批次更新:

    New-BatchAppVSequencerPackages –ConfigFile <path_to_configfile> –VMName <name_of_vm> -OutputPath <path_to_your_output>
    

    其中 <name_of_vm> 是已安裝 App-V Sequencer (VM) 的虛擬機名稱,您將在其中執行批次更新,而 <path_to_your_output> 是應複製更新套件的完整路徑。

    此 Cmdlet 會在 VM 上建立「乾淨」檢查點。 建立檢查點之後,Cmdlet 會將 ConfigFile 中所列的第一個應用程式安裝程式從主計算機複製到 VM。 這會透過 VMConnect) 開啟 VM (的新工作階段,並從命令行開始更新應用程式。 完成 VM 上第一個應用程式的更新和套件建立之後,套件會從 VM 複製到 OutputPath 參數中指定的主電腦。 Cmdlet 接著會移至清單上的第二個應用程式,將 VM 還原回「乾淨」檢查點,然後再次執行所有步驟,直到第二個應用程式套件複製到您的輸出資料夾為止。 此程式會繼續進行,直到您清單中包含的所有應用程式都完成為止。 在最後一個應用程式之後,VM 會還原為「乾淨」檢查點並關閉。

檢閱記錄檔

當您同時排序多個應用程式時,會發生三種類型的記錄檔:

  • New-BatchAppVSequencerPackages-time_stamp<.txt>。 位於 %temp%\AutoSequencer\Logs 目錄中。 此記錄包含有關更新每個應用程式活動的資訊,例如「將安裝程式複製到 VM」、「排程更新工作」等等。 此外,如果應用程式逾時,此記錄檔會包含失敗,以及用於疑難解答問題的檢查點。
  • New-BatchAppVSequencerPackages-report-time_stamp<.txt>。 位於您稍早指定的 OutputPath 資料夾中。 此記錄包含與 VM 連線的相關信息,其中顯示是否有任何失敗。 此外,其中簡短包含所有應用程式的成功或失敗資訊。
  • Log.txt 檔案。 位於 [輸出套件] 資料夾中。 此檔案包含 NewAppVSequencerPackage Cmdlet 中包含的所有程式代碼,包括允許的參數。