.NET TIPS 部分信頼のClickOnceアプリケーションをデバッグするには?[VS 2005のみ]デジタルアドバンテージ 一色 政彦2007/01/19 |
|
|
「TIPS:ClickOnceアプリケーションをデバッグするには?」では、開発中のClickOnceアプリケーション(以降、ClickOnceアプリ)をデバッグする方法を紹介している。この方法以外にも、コード・アクセス・セキュリティ(CAS)により制限されたサンドボックス・セキュリティ環境をシミュレートして、「部分信頼」(Partial Trust)状態のClickOnceアプリを簡単にデバッグ・検証する方法が提供されている。そこで本稿ではその方法について紹介する。
なお、この方法はVisual Studio 2005(以降、VS 2005)の機能であるため、VS 2005のIDEを使うことを前提とする。
ちなみに、部分信頼の詳細については、次のリンク先のページを参照されたい。
部分信頼デバッグの設定
まずはClickOnceアプリが部分信頼の状態で配布されるように設定しておこう。
その具体的な方法については、「ClickOnceが持つセキュリティ機構とは? ― ClickOnceの権限要求の設定方法」が詳しいのでそちらを参照してほしい。ここでは割愛する。
次に部分信頼のデバッグを有効にする(※ただし基本的にデフォルトで有効のはず)。これには、VS 2005のIDEでClickOnceアプリのプロジェクト・プロパティの[セキュリティ]タブを開き、さらにその中の[詳細]ボタンから[セキュリティの詳細設定]ダイアログを開く。そこで[このアプリケーションを選択されたアクセス許可のセットでデバッグする]チェック・ボックスにチェックを入れればよい(デフォルトでチェックが入っている)。
VS 2005のIDEにおける部分信頼デバッグの設定 | |||||||||||||||||||||||||||
部分信頼状態でClickOnceアプリをデバッグするための設定を行っているところ。なお、画面のようなプロジェクト・プロパティは[ソリューション エクスプローラ]でClickOnceアプリのプロジェクト項目を右クリックし、表示されるコンテキスト・メニューから[プロパティ]をクリックすることによって開かれる。なお以下の〜は「ClickOnceが持つセキュリティ機構とは? ― ClickOnceの権限要求の設定方法」で説明している、ClickOnceアプリを部分信頼の状態で配布するための設定と同じだ。 | |||||||||||||||||||||||||||
|
以上の設定が終わったら実際にデバッグを開始してみよう。
部分信頼デバッグの実行とアクセス許可の追加方法
メニュー・バーから[デバッグ]−[デバッグ開始]をクリックする(※[デバッグなしで開始]を実行したときは、部分信頼状態では起動しないので注意すること)。これにより、(インターネット・ゾーンの場合は)次の画面のような「Microsoft .NET セキュリティ警告」というタイトルのバルーン・メッセージが表示され、このClickOnceアプリが部分信頼で実行されていることを確認できる。
部分信頼状態でデバッグ実行されたClickOnceアプリの例 |
(インターネット・ゾーンの場合は)部分信頼の状態では「Microsoft .NET セキュリティ警告」というタイトルのバルーン・メッセージが表示される。 |
デバッグ実行の最中に、ClickOnceアプリが許可されていないコード(.NET Frameworkのクラスやそのメソッド、プロパティ)にアクセスすると、セキュリティ例外(SecurityException)が発生し、[例外処理アシスタント]ダイアログが表示される。ここでそのコードに対するアクセス許可を設定するには、次の画面のように[例外処理アシスタント]ダイアログの[プロジェクトにアクセス許可を追加]をクリックすればよい。
[アクション]欄にある[プロジェクトにアクセス許可を追加]をクリック |
[例外処理アシスタント]ダイアログでのアクセス許可の追加方法 |
許可が認められないコードにアクセスするとセキュリティ例外が発生し、VS 2005のデバッグ機能により、このような[例外処理アシスタント]ダイアログが表示される。[アクション]欄にある[プロジェクトにアクセス許可を追加]をクリックすると、プロジェクト・プロパティに対してアクセス許可の追加が行われる。 |
これにより、セキュリティ例外の原因となったコードが要求するアクセス許可が追加される。具体的には、先ほど示した「VS 2005のIDEにおける部分信頼デバッグの設定」という画面のの[アプリケーションで必要なアクセス許可:]の中の設定が変更されている。
なおデバッグを引き続き行う際、ここで設定されたアクセス許可を有効にしたい場合には、(上掲の画面の[アクセス許可の追加]メッセージ・ボックス上の「新しいアクセス許可がアプリケーションに追加されました。新しいアクセス許可は、デバッグ セッションが再起動されたときに有効になります。」というテキストにあるように)メニュー・バーから[デバッグ]−[再起動]をクリックして、デバッグを最初からやり直す必要がある。
利用可能バージョン:.NET Framework 2.0のみ カテゴリ:Windowsフォーム 処理対象:ClickOnce 関連TIPS:ClickOnceアプリケーションをデバッグするには? |
|
「.NET TIPS」 |
- 第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用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|