埋め込みモード
埋め込みモードは、Windows IoT Core と Windows IoT Enterprise でサポートされています。 埋め込みモードでは次のことが可能です。
- バックグラウンド アプリケーション (詳細情報)
- lowLevelDevice 機能の使用
- systemManagement 機能の使用
埋め込みモードは Window IoT Core で常に有効になります。 埋め込みモードを有効にするには、Windows IoT Enterprise で次の手順に従う必要があります。
バックグラウンド アプリケーション
バックグラウンド アプリケーションは、Visual Studio でバックグラウンド アプリケーション (IoT) テンプレートを使用して作成します。 詳細については、バックグラウンド アプリケーションの作成に関するページを参照してください。
バックグラウンド アプリケーションは、リソースの制限なく停止せずに実行されます。 また、何らかの理由でバックグラウンド アプリケーションが停止し、埋め込みモードが有効になっている場合は、システムによってバックグラウンド アプリケーションが再起動されます。
バックグラウンド アプリケーションはシステムによって自動的に再起動されますが、ユーザーがバックグラウンド アプリケーションの操作を停止したり妨害することを防ぐには、システムのロックダウン機能が有効になっている必要があります。
lowLevel デバイスの機能と lowLevelDevice の機能
lowLevel デバイス機能を使用すると、GPIO、SPI、I2C のような低レベルのハードウェア インターフェイスにアクセスできます。
lowLevelDevices 機能を使用すると、いくつかの追加要件が満たされた場合に、アプリがカスタム デバイスにアクセスできます。 この機能を lowLevel デバイス機能と混同しないでください。lowLevel デバイス機能は、GPIO、I2C、SPI、PWM デバイスにアクセスできるようにするものです。
詳細は、アプリ機能の宣言を参照してください。
systemManagment 機能
アプリケーションの systemManagment 機能を有効にすると、次の API のセットがロック解除されます。
- Windows.System.ProcessLauncher
- Windows.System.TimeZoneSettings
- Windows.System.ShutdownManager
- Windows.Globalization.Language.TrySetInputMethodLanguageTag
バックグラウンド アプリケーションのデバッグ
Windows IoT Core を実行していないデバイスでデバッグしているときに、次のいずれかのエラー メッセージが表示される場合は、デバイスで AllowEmbeddedMode が有効であり、埋め込みモード サービスが実行されていることを確認する必要があります。
- エンドポイント マッパーから使用できるエンドポイントはこれ以上ありません
- このプログラムは、グループ ポリシーによりブロックされています。 詳細については、システム管理者にお問い合わせください。
モードの変更
埋め込みモードを有効にするには、イメージングおよび構成デザイナー (ICD) で、プロビジョニング パッケージを作成し、AllowEmbeddedMode = 1 を設定する必要があります。 ICD をインストールするには、Windows ADK for Windows 10 をダウンロードしインストールする必要があります。
ADK をインストールするときに、[イメージングおよび構成デザイナー (ICD)] を選択します。
インストールが完了したら、Windows イメージングおよび構成デザイナー (WICD) を実行します。
[プロビジョニングの詳細設定] をクリックします。 プロジェクトに AllowEmbeddedMode という名前を付け、[次へ] をクリックします。
[すべての Windows エディションに共通] を選び、[次へ] をクリックします。
[完了] をクリックします。
検索ボックスに EmbeddedMode と入力し、AllowEmbeddedMode をクリックします。
中央のペインで、AllowEmbeddedMode の値を Yes に設定します。
[エクスポート] > プロビジョニング パッケージをクリックします
[次へ] をクリックします。
[次へ] をクリックします。
[次へ] をクリックします。
[ビルド] をクリックします。
Windows IoT Enterprise に埋め込みモードの .PPKG をインストールするには、.PPKG をダブルクリックします。
[はい、追加する]をクリックします。 LUA ダイアログが表示されたら [はい] をクリックし、次に示すダイアログで [はい、追加する] をクリックします。
自動的に実行されるようにバックグラウンド アプリケーションを構成する
自動的に実行されるようにバックグラウンド アプリケーションを構成するには、指示に従って MinnowBoardMax SD カードを作成し、
D:\windows\system32\iotstartup.exe
をコピーする必要があります (D: は SD カードです)。インストールされているバックグラウンド アプリケーションの一覧を取得するには、次のコマンドを入力します。
C:\> iotstartup list BackgroundApplication1
出力には、インストールされている各バックグラウンド アプリケーションの完全な名前が含まれています。次のように表示されます。
Headless : BackgroundApplication1-uwp_1.0.0.0_x86__cqewk5knvpvee
起動時に実行されるようにこのアプリを構成するには、次のように入力します。
C:\> iotstartup add headless BackgroundApplication1
バックグラウンド アプリケーションがスタートアップ リストに正常に追加された場合は、次のように表示されます。
Added Headless: BackgroundApplication1-uwp_1.0.0.0_x86__cqewk5knvpveeplication1
埋め込みモード デバイスを再起動します。
デバイスが再起動すると、バックグラウンド アプリケーションが自動的に起動します。 バックグラウンド アプリケーションを管理する埋め込みモード サービスの開始には数分かかる場合があります。 埋め込みモード サービスは、スタートアップ リストに登録されているバックグラウンド アプリケーションを監視し、停止した場合は、再起動したことを確認します。 バックグラウンド アプリケーションが短時間に数回停止した場合、バックグラウンド アプリケーションは再起動されなくなります。
スタートアップ リストからバックグラウンド アプリケーションを削除するには、次のようにを入力します。
C:\> iotstartup remove headless BackgroundApplication1
バックグラウンド アプリケーションがスタートアップ リストから削除されると、出力は次のように表示されます。
Removed headless: BackgroundApplication1-uwp_1.0.0.0_x86__cqewk5knvpvee