

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 應用程式詳細資訊
<a name="applications-details"></a>

應用程式詳細資訊包含有關預熱資訊清單和應用程式目錄組態的資訊。

## 應用程式PreWarm資訊清單
<a name="application-prewarm-manifests"></a>

建立 WorkSpaces 應用程式映像時，您可以指定要提供給使用者的應用程式。若要加速應用程式的啟動時間，您可以準備 PreWarm 資訊清單。這基本上是應用程式在使用者啟動應用程式時需要啟動的檔案目錄。在執行個體佈建期間，這些檔案將在工作階段連線之前準備好，以加快使用者工作階段中的應用程式啟動時間。

預熱資訊清單必須先在 AMI 上預先建立，才能匯入 WorkSpaces 應用程式環境。您可以選擇建立一個常見的預熱資訊清單檔案，或為每個應用程式建立一個。這會變更您稍後匯入 AMI 的方式。

### 常見的預熱資訊清單
<a name="common-prewarm-manifest"></a>

對於您要預熱的每個應用程式，請啟動應用程式並執行使用者可能執行的任何初始互動。然後，使用下列命令以存放應用程式資料的目錄為目標。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\ProgramData\Amazon\Photon\Prewarm\PrewarmManifest.txt" -encoding UTF8 -append
```

這會將每個應用程式要最佳化的檔案附加到通用`C:\\ProgramData\\Amazon\\Photon\\Prewarm\\PrewarmManifest.txt`檔案中。執行應用程式預熱不需要其他動作。WorkSpaces 應用程式會在上述位置尋找預熱檔案，並在檔案存在時使用。

此程序是選用的，隨著預熱資訊清單的大小增加，機群佈建時間也會增加。因此，請注意在最佳化與機群佈建之間取得平衡。

### 應用程式特定資訊清單
<a name="application-specific-manifests"></a>

在映像匯入期間，您可能想要為每個應用程式指定個別的應用程式資訊清單檔案，以便更輕鬆地追蹤每個應用程式的預熱資產。若要執行與上述相同的步驟，但不建立通用`C:\\ProgramData\\Amazon\\Photon\\Prewarm\\PrewarmManifest.txt`檔案，請在 AMI 上為每個應用程式建立檔案。

對於您要預熱的每個應用程式，請啟動應用程式並執行使用者可能執行的任何初始互動。然後，使用下列命令以存放應用程式資料的目錄為目標。

```
dir -path "C:\Path\To\Folder\To\Optimize" -Recurse -ErrorAction SilentlyContinue | %{$_.FullName} | Out-File "C:\Path\To\My\<ApplicationName>PreWarm.txt" -encoding UTF8 -append
```

在映像匯入程序期間，我們將使用這些應用程式預熱檔案。同樣地，這是完全選用的。您可以選擇使用此方法、通用預熱資訊清單方法，或完全沒有預熱資訊清單。

## 應用程式目錄組態
<a name="application-catalog-configs"></a>

`AppCatalogConfig` 這可讓您指定要在 AMI 匯入期間註冊至 WorkSpaces 應用程式映像的應用程式。`AppCatalogConfig` 是下列結構的應用程式組態物件的 JSON 清單。

```
[  
    {  
        "Name": "Rufus", //Required and must be unique among the list of applications  
        "DisplayName": "Rufus",  
        "AbsoluteAppPath": "Rufus", //Required  
        "AbsoluteIconPath": "Rufus",  
        "AbsoluteManifestPath": "Rufus",  
        "WorkingDirectory": "Rufus",  
        "LaunchParameters": "Rufus"  
    }  

    ...  

    // Up to 50 applications total  
 ]
```

每個應用程式唯一的必要欄位是 `Name`和 `AbsoluteAppPath`。每個欄位的詳細資訊如下：

名稱 **【必要**】  
+ 您的應用程式用來識別它的特定名稱
+ 介於 1 到 100 個字元之間
+ 允許字元 regex `^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,99}$`
+ 在指定的 AppCatalogConfig 中必須是唯一的

DisplayName  
+ 要顯示給使用者之特定應用程式的顯示名稱
+ 介於 0 到 100 個字元之間
+ 允許字元 regex `^[a-zA-Z0-9][a-zA-Z0-9_. -]{0,99}$`

AbsoluteAppPath **【必要**】  
+ 啟動應用程式的可執行檔路徑
  + 這是當使用者選取您的應用程式時將啟動的可執行檔
+ 介於 1 到 32767 個字元之間
  + 此字元長度上限是支援 Windows 中的擴充檔案路徑。如果使用大於 260 個字元的檔案路徑，請確定您的 AMI 和應用程式已正確設定為支援 Windows 擴充檔案路徑。
+ 使用逸出的檔案路徑字串，例如
  + `"C:\\Windows\\System32\\notepad.exe"`

AbsoluteManifestPath  
+ 只有在您使用 時才適用 [應用程式特定資訊清單](#application-specific-manifests)
+ 此應用程式預熱資訊清單檔案的路徑
+ 介於 0 到 32767 個字元之間
  + 此字元長度上限是支援 Windows 中的擴充檔案路徑。如果使用大於 260 個字元的檔案路徑，請確定您的 AMI 和應用程式已正確設定為支援 Windows 擴充檔案路徑。
+ 使用逸出的檔案路徑字串，例如
  + `"C:\\Path\\To\\PrewarmManifest.txt"`

AbsoluteIconPath  
+ AMI 上要用於應用程式的圖示檔案路徑。
  + 串流到此映像時，使用者會顯示此圖示。
  + 如果未提供任何 ，則圖示將衍生自可執行檔本身。
  + 請小心選取具有適當處理背景透明度的圖示檔案，為您的使用者提供良好的客戶體驗
    + 使用 PNG 映像
+ 介於 1 到 32767 個字元之間
  + 此字元長度上限是支援 Windows 中的擴充檔案路徑。如果使用大於 260 個字元的檔案路徑，請確定您的 AMI 和應用程式已正確設定為支援 Windows 擴充檔案路徑。
+ 使用逸出的檔案路徑字串，例如
  + `"C:\\Path\\To\\ApplicationIcon.png"`

WorkingDirectory  
+ 在 中啟動應用程式的工作目錄
+ 介於 0 到 32767 個字元之間
  + 此字元長度上限是支援 Windows 中的擴充檔案路徑。如果使用大於 260 個字元的檔案路徑，請確定您的 AMI 和應用程式已正確設定為支援 Windows 擴充檔案路徑。
+ 使用逸出的檔案路徑字串，例如
  + `"C:\\Path\\To\\Working\\Directory"`

LaunchParameters  
+ 用作 中指定可執行檔啟動參數的字串 `AbsoluteAppPath`
+ 介於 0 到 1024 個字元之間
+ 使用逸出字串搭配完整的必要啟動參數清單，例如下列範例，示範如何使用 PowerShell 指令碼做為您的應用程式，方法是使用 PowerShell 可執行檔做為您的應用程式，搭配啟動參數中提供的指令碼
  + AbsoluteAppPath
    + `"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe"`
  + LaunchParameters
    + `"-File \"C:\\Path\\To\\App\\Script.ps1\""`

### AppCatalogConfig 範例
<a name="sample-appcatalogconfig"></a>

這是適用於 Notepad、Google Chrome 和 Mozilla Firefox 的 AppCatalogConfig 的裸機範例

```
[  
    {  
        "Name": "Notepad",  
        "DisplayName": "Notepad",  
        "AbsoluteAppPath": "C:\\Windows\\System32\\notepad.exe"
    },  
    {  
        "Name": "Chrome",  
        "DisplayName": "Chrome",  
        "AbsoluteAppPath": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
        "LaunchParameters": "https://www.amazon.com/"  
    },  
    {  
        "Name": "Firefox",  
        "DisplayName": "Firefox",  
        "AbsoluteAppPath": "C:\\Program Files\\Mozilla Firefox\\firefox.exe",
        "LaunchParameters": "https://aws.amazon.com/"  
    }  
 ]
```