0

特定のURLにアクセスするためのコントロール(複合コントロールダイアログペインに埋め込まれたWebブラウザーコントロール)を含むActiveXコンポーネントがあります。URLにアクセスするActiveXコンポーネントは、他のMFCまたはVBプロジェクトで使用できます。使用法は、ActiveXコンポーネントを登録し(zippy32 cmdを使用)、「ActiveXコントロールの挿入」を使用してダイアログウィンドウにコントロールを挿入することです。

今、私はActiveXコンポーネントを同じブラウザウィンドウとWebアクセス機能を備えた静的ライブラリに変換することを計画しています。どうすればいいの?さらに、(静的ライブラリ内の)ブラウザウィンドウを他のMFCプロジェクトで使用する方法。関数呼び出しによるものですか?利用可能なサンプルプロジェクトはありますか?

開発ツールとしてMicrosoft.Net2003を使用しました。

事前にどうもありがとうございました。

4

1 に答える 1

0

そのすべてを静的ライブラリに入れることができるとあなたが考える範囲については、少しわかりません。

これはおそらく、あなたが思っているほど簡単ではありません。ダイアログに ActiveX コントロールを挿入できるようにする VS/MFC/ATL のウィザードとコードは、多くの作業を行っています。とはいえ、メッセージ ポンプの動作方法、ウィンドウの所有者、スレッド モデルなど、ActiveX コントロールのサイトの性質について一定の前提を置いています。ダイアログでは、これらは既知です。別の文脈では、そうではありません。

現在行っていることを実行する正しい方法は、ActiveX コントロールのままにしておくことです。静的ライブラリに入れることで解決しようとしている問題を述べた場合は、他のオプションを提供できます。

WebBrowser ActiveX コントロールは、実際には system32 フォルダーにある shdocvw.dll ライブラリのラッパーです。shdocvw.dll は IE の心臓部です (さらには、Windows エクスプローラー インターフェイスの大部分も)。それはすべて、ライブラリなどをロードするための独自のルールを持つ COM に大きく基づいています。したがって、サイト (ActiveX コントロールを使用するすべてのアプリケーション) は、ActiveX/COM に対応している必要があります。

于 2009-05-06T22:18:26.577 に答える