IE のみでよろしければ、私は Active-X よりも IE ホスト コントロールのセキュリティ モデルが好きですが、2009 年 1 月 1 日現在、Microsoft は .NET を使用して IE を拡張することを (進行中) 廃止するため、XBAP は問題ありません。 、ただし、ActiveX コントロールまたは IE Hosted コントロールではありません。
更新 7/13: Microsoft は、インプロセス拡張機能の実装に関するガイダンスを公開しました。それはまだ推奨されていません。
編集: レジストリを微調整しなくても、IE8 はイントラネットまたは信頼ゾーンからのみ .NET ホスト コントロールをロードするため、一般的なインターネット使用では、ブラウザ内の完全な信頼アクセスには Active-X が必要です。
Russ の投稿のフォローアップ: Silverlight がクリップボードにアクセスできない: http://silverlight.net/forums/t/13024.aspx
IE のホストされたコントロールに関する情報のほとんどはブログにあるので、http://www.google.com/search?q=ie+hosted+control+site: msdn.comを使用して検索します。以下は、私が特に便利だと思ったものです。
すばやく簡単に制御: http://blogs.msdn.com/mikechr/archive/2006/11/28/writing-a-simple-managed-control-under-ie.aspx
セキュリティに関する奇妙な点は、「証拠」が URL でない限り、アセンブリは信頼されている可能性がありますが、ドメインではなく、アサートを修正する必要がある場合です: http://blogs.msdn.com/carloc/archive/2006/11/01/コード アクセス セキュリティ ホスティング コントロール イン ie.aspx
これは、マニフェストを使用して 3.5 で「修正」されています。正しく理解するのは複雑なので、Shawnfa の .NET Security Blog for the .NET 3.5 Betaからマニフェストを使用する手順を参照し、 GA .NET 3.5を投稿してください。Todd の Random Discovery ブログにも、ホストされたコントロールのマニフェストを作成する手順が記載されています。
これは、セキュリティの設定に関する KB 記事から役立つことがわかりましたが、まだ CAS についてかなりのことを学ぶ必要があります: http://support.microsoft.com/kb/892466。これはおそらく、(.net) Active-X と IE でホストされるコントロールのどちらを使用するかを決定する際の主な考慮事項です。つまり、どのセキュリティ モデルがあなたとあなたのユーザーにとって最適に機能するかということです。私の希望は、マニフェストを使用することで、IE のホストされたコントロールがクリック 1 回のように機能し、ユーザーが「信頼」するように求められ、システムによって正しい設定が作成されることです。私の会社では、ユーザーのセキュリティ設定を自動化できるので、ホストされた ie を選択しました。
私が理解できなかった 1 つのことは、UI のないコントロールの (User) コントロールから継承する必要があるかどうかでした。そうするほうがうまくいきましたが、オブジェクトタグが存在するdivを「非表示」にする必要がありました.
コントロールをロードしたら、デバッグ用にコンパイルし、「マネージ」デバッグ用に IE にアタッチすると、コントロールを簡単にデバッグできます。コントロールをロードできない場合は、フュージョン アセンブリ バインディング ビューアー ( http://msdn.microsoft.com/en-us/library/e74a18c4.aspx ) および IEHost トレースをオンにする方法 ( http: //support.microsoft.com/kb/313892ロード プロセスをデバッグするため。
アセンブリのすべてのバージョンを必ずバージョン管理してください。そうしないと、IE が混乱し、ダウンロード キャッシュ内のアセンブリが異なっていても、URL が参照するものと同じバージョン # を持つ場合に、コントロールが読み込まれません (gacutil /cdl は .net ダウンロード キャッシュをクリアします)。