Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Silverlightによるデスクトップアプリケーション

Silverlight 4で作る新しいRIAアプリケーション(8)

  • LINEで送る
  • このエントリーをはてなブックマークに追加

ダウンロード sample.zip (2.1 MB)

 Silverlight 4では、ブラウザ外実行時に限りHTMLをSilverlightのウインドウ内に表示したり、OSに対してトースト通知を行ったりする機能が追加されています。また、信頼されたアプリケーションという完全信頼の実行形態では、Silverlightのさまざまな制約が緩和され、よりパワフルな機能が利用可能になります。

目次

はじめに

 Silverlightが、それまでのWebブラウザのプラグインという位置づけから一歩抜け出したのは、Silverlight 3でブラウザ外実行というアプリケーションの形態をサポートした時からでしょう。

 Silverlight 4では、ブラウザ外実行時に限りHTMLをSilverlightのウインドウ内に表示したり、OSに対してトースト通知を行ったりする機能が追加されています。また、信頼されたアプリケーションという完全信頼の実行形態では、Silverlightのさまざまな制約が緩和され、よりパワフルな機能の利用が可能になります。

 また下記のURLでは、毎年パシフィコYokohamaで行われているMicrosoftの大規模カンファレンスTechEdで、Microsoftのデベロッパーエバンジェリストである大西氏によるラウザー外実行に関するセッションビデオを参照できます。

 今回はブラウザ外実行のうち、権限の昇格が必要ない機能について解説します。

ブラウザ外実行の復習と開発ツールのサポート

 ブラウザ外実行の設定の方法や基本的な概要は、Silverlight 3時点とあまり変わっていません。まずはこちらの記事を参照して、ブラウザ外実行がどのようなものかを確認してください。

Visual StudioやExpressionBlendを使った設定

 Silverlightの機能強化を受け、Visual Studio 2010のブラウザ外実行の設定画面には、表示するウインドウの位置や、Silverlight 4で追加された信頼されたアプリケーションの設定チェックボックス、ウインドウスタイルなどの設定項目が追加されていることを確認できます(図1)。

図1 Visual Studio 2010で追加されたブラウザ外実行の設定項目
caption

 また、XAMLのデザインツールであるExpression Blend 4でも、ブラウザ外実行の設定を行うことができるようになりました。Expression Blendでは、[プロジェクト]-[Silverlightプロジェクトの設定]メニューから設定できます(図2)。

図2 Expression Blendでの設定
caption

 Silverlight 4で追加されたブラウザ外実行の設定情報も、Silverlight 3の場合と同様に、OutOfBrowserSettings.xmlに保存されます。OutOfBrowserSettings.xmlの詳しい要素の説明は、MSDNの『方法:ブラウザ外実行サポート用にアプリケーションを構成する』を参照してください。

Visual Studio でのデバックの強化

 Silverlight 3の連載で紹介したとおり、Visual Studio 2008では、動作中のブラウザ外アプリケーションにVisual Studioでアタッチすることで、デバックを行うことができました。Visual Studio 2010では、Silverlightプロジェクトにブラウザ外実行の設定が行われている場合は、デバックの開始動作の設定でブラウザ外実行アプリケーションを選択できます。この場合、Visual Studioから直接ブラウザ外実行のSilverlightを起動して、アプリケーションのデバックを行うことができます。

図3 デバック方法の指定
caption

 また、図3のデバックの設定画面で[ページを指定する]を選択することで、特定ページに埋め込まれたSilverlightアプリケーションのデバックを行うこともできます。

sllauncherのデバック機能

 ブラウザ外実行のアプリケーションは、ローカル環境にインストールしたSilverlightアプリケーションを、sllauncherと呼ばれるアプリケーションにホストすることで実現されています。Silverlight 4のsllauncherは /emulateスイッチと/originスイッチを利用することで、インストールされいないXAPファイルを指定して起動する機能が追加されています。起動例を下記に示します。

sllauncher /emulate:"C:¥temp¥sample.xap" /origin:http://localhost

 /emulateスイッチは起動するXAPファイルのパスを、/originスイッチには、Silverlightが通信するWebサイトのURLを指定します。たとえSilverlightが通信を行わない場合でも、/emulate スイッチでSilverlightを起動する場合には、/originに何らかのURLを指定する必要があります。もちろん、Visual Studioのアタッチ機能を利用することで、デバックを行うことができます。

 sllauncherは、次のディレクトリーに配置されています。

  • %ProgramFiles(x86)%¥Microsoft Silverlight¥

  • LINEで送る
  • このエントリーをはてなブックマークに追加

修正履歴

  • 2011/04/06 19:44 図1を修正

著者プロフィール

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

  • WINGSプロジェクト かるあ (杉山 洋一)(カルア(スギヤマ ヨウイチ))

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

バックナンバー

連載:Silverlight 4で作る新しいRIAアプリケーション

もっと読む

All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5