アプリは都度インストールが必要

 Windows サンドボックスにインストールされているアプリケーションは、クリーンインストール時のものに限られる。特定のアプリケーションに依存したファイルを検証したい場合は、Windows サンドボックス側に同アプリケーションを別途インストールする必要がある。

 起動のたびにアプリケーションをインストールしたり、Windowsの設定を変更したりするのは面倒だ。必要な設定をXML形式で定義した「サンドボックス構成ファイル」を利用すると、これらの作業を自動化できる。

 サンドボックス構成ファイルは、「.wsb」の拡張子でWindows サンドボックスに関連付けされている。同ファイルを実行すると、事前に定義した設定を適用したWindows サンドボックスを起動する。

 設定できるのは、GPU、ネットワーク、フォルダーマップ、起動コマンドの4項目だ。

サンドボックス構成ファイルで設定できる項目
項目概要
GPU標準では仮想GPUが利用されるが、これを無効にできる。無効にした場合はソフトウエアレンダリングで実行される
ネットワーク標準ではホストOSのWindows 10に仮想ネットワークアダプターが作成され、Windows サンドボックスがこのアダプターをルーターとして利用する。無効にした場合はWindows サンドボックスのネットワークが無効化される
フォルダーマップホストOS側のフォルダーをWindows サンドボックスから相互参照できるようにする。フォルダーを読み取り専用とするかも設定できる。標準では無効化されている
起動コマンドWindows サンドボックス起動後に実行するコマンドを指定できる。フォルダーマップと組み合わせて利用すると、複雑なコマンドやスクリプトの実行も可能

 Windows サンドボックスでは、起動後に実行するコマンドを「起動コマンド」として設定できる。サンドボックス構成ファイルで1つの起動コマンドを指定でき、フォルダーマップと組み合わせれば複数コマンドの実行も可能だ。

 例として、Windows サンドボックスの起動時にWebブラウザーの「Firefox」をダウンロードしてインストールするスクリプトを示す。

chcp 65001 
@REM フォルダーの作成
mkdir %USERPROFILE%\Desktop\FirefoxSetup

@REM Firefox のダウンロード
curl -L "https://download.mozilla.org/?product=firefox-latest-ssl&os=win64&lang=ja" --output "%USERPROFILE%\Desktop\FirefoxSetup\Firefox Installer.exe"

@REM Firefox のインストールを実行
"%USERPROFILE%\Desktop\FirefoxSetup\Firefox Installer.exe" /S

 ホストOSのWindows 10のCドライブ直下に「SandboxScripts」フォルダーを作成して、上記のスクリプトを「FirefoxInstall.cmd」の名前で保存したとする。このスクリプトを実行するように設定したサンドボックス構成ファイルは以下となる。

<Configuration>
<VGpu>Default</VGpu>
<Networking>Default</Networking>
<MappedFolders>
   <MappedFolder>
     <HostFolder>C:\SandboxScripts</HostFolder>
     <ReadOnly>true</ReadOnly>
   </MappedFolder>
</MappedFolders>
<LogonCommand>
   <Command>C:\users\wdagutilityaccount\desktop\SandboxScripts\FirefoxInstall.cmd</Command>
</LogonCommand>
</Configuration>

 ファイルを実行すると、Windows サンドボックスの起動時にFirefoxInstall.cmdが実行され、Firefoxをダウンロードしてインストールする。

Windows サンドボックスの起動後にスクリプトを実行している様子
[画像のクリックで拡大表示]