パッケージを作成してインストールする
パッケージは、Windows 10 IoT Core の構成要素です。 デバイスにインストールするには、デバイス ドライバーからシステム ファイルまで、すべてのコンポーネントをパッケージ化する必要があります。 パッケージは、デバイス上で保守可能な最小単位です。
手順 1: セットアップする
ツールのインストール
環境を設定する
IoTCorePShell.cmd
を起動します (これは管理者特権で起動します)。new-ws C:\MyWorkspace <oemname> <arch>
を使用して新しいワークスペースを作成します。
独自のイメージ (FFU) を作成するには、IoT 製造ガイドの「"基本イメージの作成" ラボ」に記載されている手順に従います。
手順 2: 新しいパッケージを作成する
パッケージ定義 xml ファイル (.wm.xml ファイル) を作成し、追加するファイルと reg キーを指定します。 詳しくは、「Windows ユニバーサル OEM パッケージ スキーマ」をご覧ください。
パッケージ
buildpkg filename.wm.xml
をビルドします。 ビルド ディレクトリ<workspace>\Build\<arch>\pkgs
に .cab ファイルが作成されます。
ファイルと reg キーを使用してパッケージを作成する
ファイルと reg キーを指定する例を以下に示します。
<?xml version="1.0" encoding="utf-8"?>
<identity xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
name="SUBNAME" namespace="COMPNAME" owner="Contoso" legacyName="Contoso.COMPNAME.SUBNAME"
xmlns="urn:Microsoft.CompPlat/ManifestSchema.v1.00">
<onecorePackageInfo
targetPartition="MainOS"
releaseType="Production"
ownerType="OEM" />
<regKeys>
<regKey
keyName="$(hklm.software)\Contoso\Test">
<regValue name="StringValue" type="REG_SZ" value="Test string" />
<regValue name="DWordValue" type="REG_DWORD" value="0x12AB34CD" />
<regValue name="BinaryValue" type="REG_BINARY" value="12ABCDEF" />
</regKey>
<regKey
keyName="$(hklm.software)\Contoso\EmptyKey" />
</regKeys>
<files>
<file
destinationDir="$(runtime.system32)"
source="filename.txt" />
<file
destinationDir="$(runtime.bootDrive)\OEMInstall"
source="filename2.txt"
name="filename2.txt" />
</files>
</identity>
Appx パッケージを作成する
Add-IoTAppxPackage を追加して、指定の appx ファイル用の .wm.xml ファイルを生成します。 このツールでは、appx ファイルが含まれるフォルダーの "dependencies" という名前のサブ ディレクトリ内に、appx の依存関係が必要です。
Add-IoTAppxPackage HelloWorld.appx fga Appx.HelloWorld
(or) newappxpkg HelloWorld.appx fga Appx.HelloWorld
New-IoTCabPackage Appx.HelloWorld
(or) buildpkg Appx.HelloWorld
fga
は appx をフォアグラウンドのスタートアップ アプリとして、bgt
は appx をバックグラウンド タスクとして設定し、none
はスタートアップ構成をスキップします。
以前のコマンドライン ツールについては、newappxpkg.cmd をご覧ください。
例として、「Appx.IoTCoreDefaultApp」を参照してください。
同じ証明書で署名された複数のアプリケーションをインストールする必要がある場合は、1 つのアプリと共にその証明書を追加し、残りのアプリについては skipcert フラグを使用して証明書の追加をスキップできます。
newappxpkg AnotherApp.appx none Appx.AnotherApp skipcert
関連項目
ドライバー パッケージの作成
ドライバ― パッケージには、そのドライバーの Inf ファイルに対するリファレンス (InfSource) が含まれています。 ドライバ―の .wm.xml ファイルを手動で作成するか、入力した inf ファイルに基づいてパッケージの xml を生成する Add-IoTDriverPackage を使用できます。
Add-IoTDriverPackage C:\Mydriver\GPIO.inf MyDriver.GPIO
(or) newdrvpkg C:\Mydriver\GPIO.inf MyDriver.GPIO
New-IoTCabPackage MyDriver.GPIO
(or) buildpkg MyDriver.GPIO
以前のコマンドライン ツールの場合は、inf2cab.cmd を使用するとパッケージの xml ファイルが作成されます。また、buildpkg.cmd
を内部的に呼び出すことで、cab ファイルが直接構築されます。
Note
Windows IoT Core では、ユニバーサル Inf のみをサポートしています。
関連項目
手順 3: デバイスにインストールする
- SSH または PowerShell を使用してデバイスに接続します。
- デバイスのディレクトリ (C:\OemInstall など) に
<filename>.cab
ファイルをコピーします。 applyupdate -stage C:\OemInstall\<filename>.cab
を使用してパッケージのステージングを開始します。 インストールするパッケージが複数ある場合は、パッケージごとにこの手順を繰り返します。applyupdate -commit
を使用してパッケージをコミットします。
Note
Windows Device Portal の [Windows Update] > [CAB Install](CAB インストール) オプションを使用して cab をインストールすることもできます。 デバイスが更新 OS (歯車を表示) で再起動してパッケージがインストールされ、もう一度メイン OS で再起動します。 このプロセスには数分かかることがあります。