2009-04-29 4 views
0

VB6/.Net Winformsの "Browser Control"と似たようなものを探しています。アプリケーション内にブラウザを表示しましょう。 ページをレンダリングするだけではなく、人々がリンクをクリックしたり、JavaScriptを実行したりできる、完全に機能するブラウザにしたいと考えています。Flash/Silverlight内にWebサイトをホストする「ブラウザコントロール」はありますか?

本質的には、それは、FlashアプリケーションまたはSilverlightアプリケーション内で実行されるだけです。

この究極の理由は、IFrameバスターを倒したいということです。私はあなたの中に他のサイトを見ることができるウェブアプリを作っています。私はこのコードを持つたくさんのサイトに入っています:

var t = top.location、w = window.location; if (t!= w)t.replace(w);

(つまり、BTWのeBayからです)基本的に私のサイトから出て、彼らにユーザーをポップ

。 私の希望は、プラグインサンドボックス内の「トップ」は、ブラウザコントロールのトップになり、自分のサイトではないことになります。

もちろん、同じことを達成するための他のアイデアがあれば、それは歓迎されるものではありません。


編集:私はビルによって提案されたコンポーネントの一つの制御を試みたが、それはSilverlightコントロールの外のIFrame を作成しているため、それは、これらの目的のために動作しませんでしたので、それは同じで実行されます私が避けようとしているのはSilverlightをホストしているページのコンテキストです。

+1

エンドユーザーとして、私は良いものとしてiFrameのバスターを見る。 1つは、人々が自分のサイトの一部として別のサイトを装ってしまうことを防ぎます。コンテンツを埋め込むことを可能にするサイトには、通常、プログラムで行うためのAPI(RESTまたはSOAP)があります。 – Powerlord

+0

私はあなたの意見を絶対に見ていますが、同意しますが、サイト内の他のサイトとやりとりすることを意味する、ユーザーにとって非常に有用で非常に実用的な機能を提供するサイト全体を作成しています。私たちは偽装していません、フィッシング、またはそのようなもの。 –

+0

あなたは、あなたがイチジクと韻を踏むサイトで働くことはありませんか? :) – JasonMArcher

答えて

1

私はHTML control created by Component Oneを使用します。ページ内のSilverlightオブジェクトをウィンドウなしに設定する必要があるという制限がありますが、そうでない場合は非常にうまく動作します。

+1

便利なURLを追加するだけです。http://www.componentone.com/SuperProducts/HtmlHostSilverlight/ ありがとうございます、私はこれを見ていきます! –

+0

残念ながら、このコントロールは私がしようとしているものでは機能しません。 SilverlightコントロールをホストするHTMLページにIFrameを作成し、Silverlightのすぐ上に配置します(これはSLコントロールがウィンドウレスでなければならない理由です)。 IFrameのような*ものを作成するものを探していますが、** SLコンテキスト内に存在する**ため、周囲のWebサイトから隔離されています。 –

1

北コードSWF Studioを使用すると、Flashのステージにブラウザウィンドウを追加できます。私は個人的にFlash Studioのパワーを拡張するために、SWF StudioをサードパーティのSWF2EXEツールとして使用しています。それは非常に安定しており、強力です。限り、ブラウザの制御についてはhere isあなたがダウンロードして、あなたの目的を果たすかどうかをテストすることができます。ブラウザのAPTを確認してくださいhere.

+0

ありがとう!私はそれを調べます! –

1

私たちは人々がこれを行うためのコンポーネントを構築していませんが、私たちはここに提案しています。つまり、最も簡単な解決策はiFrameですが、Silverlightの上にiFrameを重ねると、結果としてperf問題が発生することがわかりました(主にiframeなどのアルファ透明度のため)。

これはSilverlightとは分離されていませんが、Flashは特定のオペレーティングシステム内でブラウザやレンダリングと同じ問題があります。

HTH。

Scott Barnes/Rich Platformsプロダクトマネージャー/ Microsoft。

+0

これはどれくらい実現可能かわかりません...完全にばかばかしいかもしれません...しかし、軽量のHTMLレンダラーのコードをSilverlightランタイムに埋め込む方法もあります。 WebKitは、軽量であることを理解しているので、WebKitは良い選択だと思っています... –

+1

もう1つのオプション(技術的には不可能かもしれません)は、いくつかの種類のインスタンスを作成しようとするものですプラグイン内のホストブラウザ。これにはもちろんブラウザ固有のコードが必要ですが、それは不可能かもしれませんが、Flash/Silverlightのような "プラグイン"がホストブラウザとどのようにやりとりをしているかはわかりません。 –

+0

このコンセプトで私を驚かせる部分はこの種の関係を持っています ブラウザ - >プラグイン - >ブラウザ..ブラウザプラグインがあるブラウザプラグインがプラグインをロードする必要があると思いますか? Oo –

0

これは古い投稿ですが、私はtupenceの回答を追加します。私はDivElementsフリーコントロールをSilverlight link textに使いました。それはとてもうまく動作します。それはそれが上にあるように見えるようにdivを正確に配置するだけです。

その他のコントロールについては、Silverlightコンテナのwindowlessプロパティをtrueに設定する必要があります。

これは本当にうまく動作します。私はSilverlightアプリケーションでGoogleマップとAcrobatのプラグインを並べて表示することができます。

PS:コンポーネントが<div>をページに追加するだけなので、<header>タグのように動的にJavascriptファイルを読み込むようなことはできません。

PPS:HTMLコードを「手作業で」設定する場合は、HTML DOMを再生する前にDocumentReadyまたはLoadedイベントに接続してください。

誰かを助ける希望。

+0

あなたの説明によると、これは私が探しているものではありません。私は、プラグイン自体の中で「ブラウザ」を「ホスト」する何かを探しています。これにより、プラグインをホストするページにIFrameが追加され、見栄えが良くなるように配置されていると、私が探している「ウィンドウ」オブジェクトから分離されません。 –

関連する問題