ブラウザー外実行の設定
先ほどブラウザー外実行を有効にしたVisual Studioのプロパティー画面で、[ブラウザー外実行の設定]ボタンをクリックすると、ブラウザー外実行時に表示するアイコンやブラウザー外実行の際にだけ可能になる機能の設定を行うことができます(図6)。
ブラウザー外実行の設定ダイアログで設定を行うと、OutOfBrowserSettings.xmlファイルに設定情報が書き込まれます(リスト2)。
なお、OutOfBrowserSettings.xmlファイルはSilverlightをC#プロジェクトで作成している場合、SilverlightプロジェクトのPropertiesフォルダの下に作成されます。
<OutOfBrowserSettings
ShortName="CodeZineOffline アプリケーション"
EnableGPUAcceleration="True"
ShowInstallMenuItem="True">
<OutOfBrowserSettings.Blurb>
デスクトップの CodeZineOffline アプリケーションを、自宅でも、職場でも、外出先でも利用できます。
</OutOfBrowserSettings.Blurb>
<OutOfBrowserSettings.WindowSettings>
<WindowSettings
Title="CodeZineOffline アプリケーション"
Height="500" Width="500" />
</OutOfBrowserSettings.WindowSettings>
<OutOfBrowserSettings.Icons />
</OutOfBrowserSettings>
ブラウザー外実行の実体
さて、ブラウザー外実行は一体どのように動作しているのでしょうか。インストールされたショートカットを確認するとそのヒントを得ることができます(図8)。

例えば、今回インストールしたブラウザー外実行のアプリケーションは次のようなコマンドラインで実行されます。
"C:\Program Files (x86)\Microsoft Silverlight\sllauncher.exe" 1558981859.localhost
どうやら、ブラウザー外実行はsllauncher.exeがブラウザーの代わりとなり、指定されたSilverlightアプリケーションを起動しているようです。では、引数として渡されている1558981859.localhostとは何でしょうか。
この引数はブラウザー外実行でインストールされたプログラムのIDのようなものです。ブラウザー外実行では、Silverlightアプリケーションがインストールされると「%UserPlofile%\AppData\LocalLow\Microsoft\Silverlight\OutOfBrowser」にSilverlightアプリケーションの実行に必要なXAPファイルやSilverlightをホストするHTMLなどが配置され、スタートメニューやデスクトップにsllauncherでこのフォルダーのSilverlightアプリケーションを起動するためのショートカットが作成されます。

