次の方法で共有


ファクトリ OS で診断 Win32 アプリを使用する

ファクトリ OS の win32_manufacturing および win32_development 製品構成を使用すると、製造、プロビジョニング、ハードウェア検証フロー中に、コンテナー内の既存の Win32 製造アプリと診断アプリを実行できます。 これらのファクトリ OS 製品構成では、コンテナーのサポートに Hyper-V が、また ホストとゲスト オペレーティング システム間の通信に RDP が使用されます。

win32 のサポートを含むファクトリ OS イメージ用のワークスペースを作成する

win32 のサポートを含むファクトリ OS イメージの作成を開始するには、新しいワークスペースを作成する必要があります。

  1. 管理者として Windows システム キット環境を開きます。

  2. FactoryOS 製品と win32_manufacturing または win32_development の製品構成を指定して、PrepWSKWorkspace を実行します。

    PrepWSKWorkspace C:\FactoryOSWin32Manufacturing -Product FactoryOS -ProductConfiguration win32_manufacturing
    

    新しいワークスペース内の OEMInput.xml には、コンテナーをイメージに含める機能があります。

  3. イメージをカスタマイズします。 [ファクトリ OS イメージを作成する](build-a-Factory OS-image.md#5-add-drivers) の手順 5 から実行して、イメージのカスタマイズを完了します。 テスト コンテンツ フォルダーを使用して付帯品をコンテナーに追加する方法については、以下の「付帯品をコンテナーに追加する」を参照してください。

ファクトリ OS のコンテナーを操作する

シェル ブートとコンソール ブートの両方から、Factory OS のコンテナーを制御したり操作したりできます。

シェル ブート

Factory OS シェルで起動した場合、以下を使用してコンテナーを操作できます。

  • 特別なファクトリ Orchestrator XML ファイルを含む、ファクトリ Orchestrator タスク一覧
  • ファクトリ Orchestrator アプリまたは API を使用してリモートに、またはデバイス上でローカルに操作
  • リモート デスクトップ アプリを介してローカルに操作 (コンテナーでコマンド プロンプトが起動します)

コンソール ブート

コンソール ブート モードでファクトリ OS を起動した場合、以下を使用してコンテナーを操作できます。

  • 特別なファクトリ Orchestrator XML ファイルを含む、ファクトリ Orchestrator タスク一覧
  • ファクトリ Orchestrator API を使用してリモートに、またはデバイス上でローカルに操作
  • ファクトリ Orchestrator アプリでリモートに操作

付帯品をコンテナーに追加する

この製品構成を使用してファクトリ OS イメージをビルドする場合、イメージングおよび実行時に診断 Win32 アプリを展開して実行できます。

  • イメージの作成中にコンテナー アプリを追加する: Container というフォルダーをテスト コンテンツ フォルダーに含めます。
    • Container フォルダー内のコンテンツはファクトリ OS と C:\TestContent\Container にあるコンテナーの両方で使用できます
    • Container フォルダーは、再起動後もそのコンテンツが保持される、コンテナー内の唯一のフォルダーです。 コンテナー内で他のファイルとレジストリに加えた変更は、デバイスを再起動するとすべて削除されます
  • 実行中にアプリを追加する: 実行中のデバイスがあり、コンテナーにアプリを追加する必要がある場合は、次を実行できます。
    • ファクトリ Orchestrator アプリまたは API を使用して、ローカルまたはリモートでファイルをコンテナーにコピーする
    • TShell の put-device コマンドを使用して、ファイルを C:\TestContent\Container フォルダーにコピーする
    • sftp を使用して、ファイルを C:\TestContent\Container フォルダーにコピーする

GUI win32 アプリを実行する

GUI を必要とする win32 アプリがある場合は、ファクトリ OS に含まれているリモート デスクトップ UWP アプリを使用します。 次の手順では、GUI アプリが読み込まれたコンテナーを含むファクトリ OS デバイスが実行中であることを前提としています。

  1. ファクトリ Orchestrator で、[コマンド プロンプト] タブに移動します。
  2. [コンテナーで実行] をオンにします。
  3. 表示される [コンテナー UI の表示] ボタンをクリックします。
  4. これで、デバイス上のコンテナーに接続され、コンテナーの左下隅に最小化されたコマンド プロンプトが表示されます。 このコマンド プロンプトを最大化して使用することで、アプリを起動できます。

ファクトリ OS に戻る方法

ファクトリ OS に戻るには、以下の手順を実行します。

  1. [リモート デスクトップ アプリ] ウィンドウの上部中央にある [...] をクリックします
  2. ファクトリ Orchestrator または切り替える別のアプリが表示されるまで、Alt + Tab キーを押し続けます。

コマンド プロンプト ウィンドウを誤って閉じてしまった場合

  1. ファクトリ OS に戻ります。

    1. [リモート デスクトップ アプリ] ウィンドウの上部中央にある [...] をクリックします
    2. ファクトリ Orchestrator が表示されるまで Alt + Tab キーを押し続けます
  2. ファクトリ Orchestrator で、[コマンド プロンプト] タブに移動します

  3. [コンテナーで実行] をオンにします

  4. [コマンド] テキスト ボックスで次のコマンドを実行します。

    RunAsRdUser "c:\windows\system32\cmd.exe` `/C start cmd.exe`
    
  5. [実行] アイコンのクリック

  6. [コンテナー UI の表示] ボタンをクリックすると、コマンド プロンプトが再び表示されます

ファクトリ Orchestrator タスクリストの一部としてコンテナーで win32 アプリを実行する

ファクトリ Orchestrator でタスクを作成する場合、タスクの作成時に [コンテナーで実行しますか? ] チェック ボックスをオンにすると、そのタスクがコンテナーで実行されるように構成できます。

Factory Orchestrator new executable task window showing the Run in container checkbox

また、FactoryOrchestratorXML ファイルを作成して、コンテナーで実行するタスクに RunInContainer="true" 属性を追加することで、これを実行することもできます。

  • タスク一覧を実行すると、ファクトリ Orchestrator によって、コンテナーで実行中のタスクに GUI が必要であるかどうかが自動的に検出されます。
  • タスクに GUI が必要な場合、コンテナーへのリモート デスクトップ接続が自動的に確立されます。 接続が確立されると、タスクが自動的に起動します。 プログラムが終了すると、リモート デスクトップ接続が終了し、タスク一覧の次のタスクが自動的に開始されます。

サポートの範囲

アプリのカテゴリ

一部のカテゴリのアプリは、コンテナーのサポート範囲に含まれていません。次に、ファクトリ OS コンテナーにおいて範囲内に含まれる、および含まれないアプリの一覧を示します。

  • 対象範囲内:
    • パッケージ化されていない Win32 コンソール アプリ
    • UI が制限されている、パッケージ化されていない Win32 アプリ
    • パッケージ化された Win32 コンソール アプリ
    • UI が制限されている、パッケージ化された Win32 アプリ
  • 対象範囲外:
    • プロ用のビデオ編集など、高スペックのハードウェアを必要とするカテゴリのアプリ
    • ホストとゲスト オペレーティング システムの間で COM (コンポーネント オブジェクト モデル) のサポートを必要とするアプリ

サポートされていないシナリオ

次の一部のシナリオはサポートされていません。

面グラフ シナリオ
メディア転送プロトコル (MTP)
  • デバイスへの接続
  • 電話と同様にデバイスをペアリング
    USB 印刷 プリンターのサポート
    Virtualization 独自のハイパーバイザーをインストールするアプリ
    独自のドライバーをインストールするアプリ コンテナー境界を越えた操作が必要なため、ドライバーをインストールして起動する Win32 アプリは予期しない動作をすることがあります
    画面の取り込み ホスト OS の画面の取り込みの作成を試みるアプリ
    シェル統合が必要なアプリ タスク バーの操作や他のシェル操作が必要なアプリ