IoT 殼層概觀
本檔涵蓋 IoT Shell、前景和背景應用程式,以及如何在裝置上的這些應用程式之間巡覽。
IoT Shell、前景和背景應用程式
IoT 核心版裝置會執行 IoT 殼層。 它有許多責任,但其主要工作是確定已註冊的啟動應用程式已啟動。 它有兩種模式:前端和無頭。 在前端模式中,IoT 殼層會啟動單一已註冊的啟動應用程式,以全螢幕顯示其 UI (也稱為「前端應用程式」) 。 前端模式假設您已連線螢幕並顯示 UI。 在無周邊模式中, (在這裡 詳細說明) ,沒有 UI;IoT Shell 只會啟動背景應用程式。
以下是前景與背景應用程式之間的主要差異:
前景應用程式 具有 UI。 當裝置處於前端模式時,其中一項會在啟動時啟動。 所有前景應用程式都會在裝置上註冊,而且使用者可以在裝置作業期間在前景應用程式之間切換。
背景應用程式 沒有 UI,因此關閉 UI 堆疊來儲存裝置資源。 背景應用程式通常會從啟動持續執行,而且通常用來監視裝置。
使用主應用程式在應用程式之間切換
目前,啟動應用程式可讓您建立適用于Windows 10 IoT 核心版的主應用程式,這可讓您在不同的前景應用程式之間切換。
IoT 啟動應用程式 (範例代表一個簡單的啟動應用程式,其中列出您裝置上安裝的應用程式,然後使用 PackageManager API 啟動一個應用程式。
在具有 HID 插入金鑰的應用程式之間切換
下列指示說明如何透過登錄的專案開啟 Hotkey 支援。 如果您要建置自己的映射,並想要支援下列熱鍵, (首頁、先前的應用程式和下一個應用程式) ,而不需要存取登錄,您可以包含可為您處理這些步驟的選擇性功能套件。
要尋找的功能套件稱為: Microsoft-OneCore-IoTUAP-Shell-HotKeys-Feature-Package.cab ,且功能稱為 IOT_SHELL_HOTKEY_SUPPORT。 如需範例,請參閱 Settings.HotKey 範例套件 。
本檔的其餘部分涵蓋如何手動實作這項功能。
返回首頁
使用 Windows 10 IoT 年度更新版 (1607) ,IoT Shell 支援在另一個應用程式執行時,將預設應用程式視窗帶入前景,方法是按下 「GO HOME」 鍵,這會設定為鍵盤上的 Windows 按鈕發行。 如果您的 IoT 裝置上沒有鍵盤,而且需要透過 HID 插入插入來插入低階鍵盤事件,或只是想要將 「GO HOME」 功能重新對應至應用程式中的不同機碼,您可以調整登錄中的機碼值。 例如,若要啟用將 ESCAPE 鍵 (0x1B) 為 「GO HOME」,請在登錄中輸入下列命令:
“HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\HotKeys” “HOME” QWORD 0x0000000 0000001B
作為 REG 檔案,如下所示:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\HotKeys]
"Home"=hex(b):1B,00,00,00,00,00,00,00
在應用程式之間切換
或者,如果您想要在前景應用程式之間切換,您可以在登錄中輸入下列命令,在映射中輸入下列命令,以設定 Alt-Tab (下一個應用程式) 和 Shift-Alt-Tab (先前的應用程式) 功能:
“HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\HotKeys” “PREV” QWORD 0x00010000 00010009 “NEXT” QWORD 0x00020000 00050009
作為 REG 檔案,如下所示: [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\HotKeys] "Prev"=hex(b):09,00,01,00,00,00,01,00 "Next"=hex(b):09,00,05,00,00,00,02,00
位翻譯
上述 REG 檔案專案會以左至右解碼,如下所示:
- 位 0-15:虛擬金鑰程式碼 (也就是 1B,00 代表 ESCAPE) 。 如需金鑰碼值的完整清單,請參閱虛擬金鑰程式碼
- 位 16-19:修飾詞索引鍵。 0x0 = 無修飾詞、0x1 = ALT、0x2 = CTRL,0x4 = SHIFT。 結合索引鍵會將值加在一起 (,也就是 ALT+SHIFT 0x5)
- 位 20-47:保留供日後使用;必須是 0
- 位 48-62:動作
- 0 = 首頁
- 1 = 先前的檢視 (在未來版本中可能無法運作)
- 2 = 下一個檢視 (在未來版本中可能無法運作)
- 位 63:保留;必須是 0