連載:Silverlight 3実践プログラミング

ネットワーク監視APIとブラウザ外実行

シグマコンサルティング 菅原 英治
2009/12/04
Page1 Page2

ブラウザ外実行

ブラウザ外実行とは

 ブラウザ外実行とは、ブラウザの外でSilverlightアプリを実行できるようにする機能です。もっと簡単にいうと、デスクトップ・アプリのようにSilverlightアプリを実行できるようになります。その際、そのコンピュータにSilverlightプラグインさえインストールされていれば、そのほかには追加プラグインなどは一切必要ありません。

 まず次のサンプルを動かして、その機能を実感してみましょう。

サンプルを動かしてみよう

 それでは、ブラウザ外実行を利用したサンプルを動かしてみましょう(※サンプルを動作させるためには、「Silverlightプラグインのインストール」が必要です)。

Microsoft Silverlight を入手
ブラウザ外実行を利用したサンプル
2つの数字の足し算ができる足し算アプリ。

 このサンプル・アプリは、2つの数字を単純に足し算し、その結果を表示するという非常にシンプルなものです。それでは、サンプル上で、右クリックをしてみてください。

 するとコンテキスト・メニュー上に次の画面のように、「このコンピュータに足し算アプリをインストールします」が表示されます。その項目をクリックしましょう。

サンプル・アプリ上で表示されるインストール用コンテキスト・メニュー

 クリックすると、次の画面のダイアログが表示されます。ここでは、[[スタート] メニュー]と[デスクトップ]にチェックをして、[OK]ボタンを押してください。

アプリケーションのインストール・ダイアログ

 [OK]ボタンを押すと、瞬時にSilverlightアプリのインストールが完了し、ブラウザ外実行でサンプル・アプリが起動されます。

ブラウザ外実行されたサンプル・アプリ

 ブラウザ外実行された状態でも、足し算など正常にアプリが動作することが確認できます。

 また、さきほどイントール時にショートカットの作成場所として、[[スタート] メニュー]と[デスクトップ]を選択しました。そちらも確認してみましょう。次の画面のように、[[スタート]メニュー]と[デスクトップ]にショートカットが追加されているはずです。

追加されたショートカット

 そして、追加されたショートカットから、サンプル・アプリが起動できることを確認してください。

 最後に、インストールしたアプリを削除してみましょう。ブラウザ「内」実行、ブラウザ外実行どちらでも構いませんので、サンプル・アプリ上で右クリックをしてください。今度は、コンテキスト・メニュー上に[このアプリケーションを削除します]というメニュー項目が表示されます。そのメニュー項目を選択すると、アプリケーションが削除されます。

サンプル・アプリ上で表示される削除用コンテキスト・メニュー

 ブラウザ外実行では、このようにブラウザ外で実行可能なSilverlightアプリを開発することができます。

 それでは、サンプルのソース・コードの解説……といきたいところですが、実は、Silverlightアプリをブラウザ外実行できるようにするためにコーディングは不要です。Visual Studioから簡単に設定できます。ですので、その方法を解説します。

【コラム】Silverlight 4でのブラウザ外実行

 本稿で解説しているブラウザ外実行ですが、Silverlight 4において、さらに機能が拡張される予定です(予定というのは、現在Silverlight 4はまだベータ版の段階のため、正式版リリース時には異なる可能性があるためです)。まずブラウザ外実行で役立つ新機能としては、次のような機能が追加される予定です。

  • アプリケーション内にHTMLを配置する機能(=htmlメールのように)
  • Windowsの通知ポップアップで通知する機能
  • オフラインでのDRM対応
  • ウィンドウの開始位置、サイズの制御

 さらに、信頼されたアプリケーション(Trusted applications)に権限を昇格することで、次のような機能が可能になる予定です。

  • マイドキュメント・フォルダへのアクセス
  • クロスドメインでのアクセス

などなど、ほかにも多数あります。

 詳しくは、次のリンクの「Move beyond the browser」にあります。

ブラウザ外実行の設定方法の解説

 それでは、Silverlightアプリをブラウザ外実行できるようにする設定方法を解説します。繰り返しになりますが、その設定方法は非常に簡単です。

 作成したSilverlightアプリのプロジェクトのプロパティを表示します。

Silverlightアプリのプロジェクトのプロパティ

 [Silverlight]タブを表示すると[アプリケーションのブラウザー外実行を有効にする]というチェックボックスがあります。Silverlightアプリをブラウザ外実行できるようにするためには、このチェックボックスをチェックするだけです。

 また、[ブラウザー外実行の設定]ボタンを押すと、ブラウザ外実行の設定ダイアログが表示され、より細かい設定が行えます。

ブラウザ外実行の設定ダイアログ

 このダイアログでは、アプリのウィンドウ・タイトルや、ショートカット名、ダウンロードの説明、16×16から128×128のアイコン(単位はピクセル)の画像のパスなどを設定できます。

 ちなみに、今回の足し算アプリのアイコンは、Icons Pediaのものを利用しました。アイコンにより利用できるライセンスが異なる場合があるのでご注意ください。

 ブラウザ外実行の解説は以上です。Visual Studio上のGUIで簡単に設定できることがご理解いただけましたでしょうか。

まとめ

 本稿では、ネットワーク監視APIとブラウザ外実行ついて、それぞれサンプルを示して解説しました。

 ネットワーク監視APIは、Silverlightアプリ上で、それを実行しているコンピュータのネットワークが有効かどうか、また、ネットワーク状態が変更(例えば有効から無効、無効から有効)されたタイミングを検知することができる機能でした。また、その機能は、簡単にコードで利用できることを解説しました。

 ブラウザ外実行は、ブラウザ外で、Silverlightアプリを実行できるようにする機能でした。その実装方法は、Visual Studio上のGUIで簡単に設定できることを解説しました。

 さて次回は、UI要素のプロパティのバインドを提供する「Element-to-Elementバインディング」と、Silvelightアプリ同士での通信を提供する「LocalConnection API」について解説します。お楽しみに!End of Article


 INDEX
  連載:Silverlight 3実践プログラミング 
  ネットワーク監視APIとブラウザ外実行
    1.ネットワーク監視API
  2.ブラウザ外実行

インデックス・ページヘ  「Silverlight 3実践プログラミング」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH