實驗室 1c:將檔案 () 和登錄設定新增至映射
我們會將一些測試檔案和登錄機碼建立至 Windows IoT 核心版映射,並將它們封裝在散發給您的客戶之後加以服務。 由於您新增至映射的檔案和登錄機碼通常不是架構特有的,因此建議您建立可在所有裝置架構中使用的通用套件。
目標
- 建立套件,其中包含裝置的登錄和檔案設定
- 封裝登錄/檔案設定套件,使其可以包含在 FFU 映射中
- 修改 IoT Addon Kit 專案組態檔,以包含您的登錄/檔案設定套件
- 建置並部署包含登錄/檔案設定套件的 FFU 映射
我們會建立映射的一些測試檔案和登錄機碼,並再次封裝它們,以便在客戶觸達客戶之後加以服務。
我們將這些專案新增至通用功能資訊清單 (OEMCommonFM.xml) ,其用於 x86、x64 和 Arm 組建中。
在此實驗室中,我們將啟動新產品 ProductB,以便稍後我們可以使用 IoT 範例應用程式來取得裝置的 IP 位址,並確認我們的檔案和註冊金鑰已進行。
先決條件
請確定您已從先前建立 基本映射建立基本映射 。
您需要安裝下列工具來共同執行此動作:
- Windows 評定與部署 KiT (Windows ADK)
- IoT 核心版 Powershell 環境
- Windows 10 IoT 核心版套件
- IoT 核心版 ADK Add-Ons
- [記事本] 或 [VS Code] 之類的文字編輯器。
建立測試檔案
使用記事本建立一些範例文字檔,並新增一些隨機文字,讓這些檔案不是空的。 在我們的範例中,我們已建立兩個標題 為TestFile1.txt 和 TestFile2.txt的檔案。
建置測試檔案的套件
開啟 IoT Core PowerShell 環境:以系統管理員身分執行
C:\MyWorkspace\IoTCorePShell.cmd
,並使用 Add-IoTFilePackage建立檔案套件:# Array of files with destinationDir, Source and destinationFilename $myfiles = @( ("`$(runtime.system32)","C:\Temp\TestFile1.txt", ""), ("`$(runtime.bootDrive)\OEMInstall","C:\Temp\TestFile2.txt", "TestFile2.txt") ) Add-IoTFilePackage Files.Configs $myfiles
這會在 建立新的資料夾
C:\MyWorkspace\Common\Packages\Files.Configs
。這也會將 FeatureID FILES_CONFIGS 新增至
C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml
檔案。之類的
$(runtime.system32)
變數定義于 中C:\Program Files (x86)\Windows Kits\10\Tools\bin\i386\pkggen.cfg.xml
。使用Add-IoTRegistryPackage建立登錄套件:
# Array of files with destinationDir, Source and destinationFilename $myregkeys = @( ("`$(hklm.software)\`$(OEMNAME)\Test","StringValue", "REG_SZ", "Test string"), ("`$(hklm.software)\`$(OEMNAME)\Test","DWordValue", "REG_DWORD", "0x12AB34CD") ) Add-IoTRegistryPackage Registry.Settings $myregkeys
這會在 建立新的資料夾
C:\MyWorkspace\Common\Packages\Registry.Settings
。這也會將 FeatureID REGISTRY_SETTINGS 新增至
C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml
檔案。使用 New-IoTCabPackage建置套件:
New-IoTCabPackage Files.Configs (or) buildpkg Files.Configs New-IoTCabPackage Registry.Settings (or) buildpkg Registry.Settings
套件是建置的,可在 取得
C:\MyWorkspace\Build\<arch>\pkgs
。
建立新產品
建立新的產品資料夾。
Add-IoTProduct ProductB RPi2 (or) newproduct ProductB RPi2
這會提示您輸入 SMBIOS 值。
更新專案的組態檔
更新產品測試組態,以包含使用 Add-IoTProductFeature的功能:
Add-IoTProductFeature ProductX Test FILES_CONFIGS -OEM
(or) addfid ProductX Test FILES_CONFIGS -OEM
Add-IoTProductFeature ProductX Test REGISTRY_SETTINGS -OEM
(or) addfid ProductX Test REGISTRY_SETTINGS -OEM
建置及測試映射
再次建置 FFU 映射,如 建立基本映射中所指定。 您只需要執行 New-IoTFFUImage 命令:
New-IoTFFUImage ProductX Test
(or)buildimage ProductX Test
一旦建置 FFu 檔案,您就可以將它刷新到硬體裝置,如 快閃 Windows IoT 核心版映射中所指定。
確認已新增檔案和登錄機碼
若要確認裝置上已新增檔案,請執行下列動作:
將技術人員電腦和裝置連線到相同的乙太網路。
例如,若要透過有線網路連線,請插入乙太網路纜線。 若要直接連線到裝置,請直接從技術人員電腦將網路纜線插入裝置。
在測試應用程式上,記下裝置的 IP 位址。 例如,10.100.0.100。
在技術人員電腦上,開啟 檔案總管,然後在裝置的 IP 位址中輸入 \prefix 和 \c$ 尾碼:
\\10.100.0.100\c$
使用 devicename、預設的系統管理員帳戶和密碼來登入。 (預設值為:minwinpc\Administrator / p@ssw0rd)
檢查裝置上是否有檔案存在。 在我們的範例中,尋找:
\\10.100.0.100\c$\Windows\system32\TestFile1.txt
\\10.100.0.100\c$\OEMInstall\TestFile2.txt
驗證登錄機碼
在技術人員電腦上,使用 SSH 用戶端連線您的裝置,例如 PuTTY。 例如,使用 IP 位址和埠 22 連線到裝置。 然後使用系統管理員帳戶和密碼登入。 (若要深入瞭解,請參閱 SSH) 。
從 SSH 用戶端的命令列,查詢系統是否有登錄機碼。 在我們的範例中,執行此命令來檢查登錄機碼是否存在:
reg query HKLM\Software\Fabrikam\Test
SSH 用戶端應該會顯示您的測試值。
或者,您也可以在 Windows 裝置入口網站中使用 [ 執行命令 ] 來執行
reg query
命令。
輸出視窗應該會顯示您的測試值。