質問

これはMFCとChtmlViewですが、おそらくすべてのIE Web Controlの使用に適用されます。

Webコントロールがいくつかのサイトのページにナビゲートしているとき、HTTP / HTTPS混合コンテンツ警告ポップアップを取得しています。

プログラムの実行中に設定できるフラグ、コマンド、またはEXE固有のレジストリキーは警告を無効にしますか?さらに良い、「はい」または「いいえ」の回答を選択できますか?

ウェブサイトを制御しないので、「Webページの修正」はオプションではありません。私たちのプログラムは顧客PC上で実行されているので、「IEの設定に入る」も良い解決策ではありません。

役に立ちましたか?

解決

urlaction_html_mixed_content サクセスコード付き。コントロールサイトは、MFCのActiveXクライアントサイトの実装、 CHTMLViewに使用されるWebBrowserコントロールがホスト機能に使用されます。

MFC 7.0以降を使用する場合は、コントロールサイトを交換する必要があります。オーバーライデンCreateControlsite関数を介して。 MFC 6.0では、コントロールコンテナのみをグローバルに置き換えることができます。オーバーライドする独自のCoccManagerとの呼び出しCreateSiteメソッド

コントロールサイトを置き換え、ISERVICEPROVIDERとSecurity Managerインタフェース(、IInternetSecurityManager、オプションでIInternetSecurityManagerEx、およびIInternetSecurityManagerEx2)を追加するコントロールサイトクラスのbegin_interface_part / end_interface_part macrosを介してMACROSを介してMACROSを使用します。 MFCマクロに慣れていない場合は、 tn038:mfc / ole iunknown実装。メソッドがProcessUrlActionAction / ProcessURLACTIONATIONEX / ProcessURLACTIONEX2の場合はinet_e_default_actionを返し、コードはurlaction_html_mixed_contentの場合はinet_e_default_actionを返す必要があります。次にS_OKを返す必要があります。 Ppolicyのアドレスをurlpolicy_allowに埋める混合コンテンツ、またはurlpolicy_disallowが無効にするために静かに許可します。 urlpolicy_queryを使用して必要なときにユーザーに尋ねます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top