Share via


パッケージを作成してインストールする

パッケージは、Windows 10 IoT Core の構成要素です。 デバイスにインストールするには、デバイス ドライバーからシステム ファイルまで、すべてのコンポーネントをパッケージ化する必要があります。 パッケージは、デバイス上で保守可能な最小単位です。

手順 1: セットアップする

ツールのインストール

  1. Windows アセスメント & デプロイメント キット (Windows ADK)
  2. IoT Core ADK アドオン

環境を設定する

  • IoTCorePShell.cmd を起動します (これは管理者特権で起動します)。
  • new-ws C:\MyWorkspace <oemname> <arch> を使用して新しいワークスペースを作成します。

独自のイメージ (FFU) を作成するには、IoT 製造ガイドの「"基本イメージの作成" ラボ」に記載されている手順に従います。

手順 2: 新しいパッケージを作成する

  1. パッケージ定義 xml ファイル (.wm.xml ファイル) を作成し、追加するファイルと reg キーを指定します。 詳しくは、「Windows ユニバーサル OEM パッケージ スキーマ」をご覧ください。

  2. パッケージ 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 で再起動します。 このプロセスには数分かかることがあります。