.netでWebBrowserをより高速に処理しようとしてて、レジストリーでIEの画像の表示のYes,Noをフォームで操作しています。
Dim regkey As Microsoft.Win32.RegistryKey = _
Microsoft.Win32.Registry.CurrentUser.OpenSubKey _
("Software\Microsoft\Internet Explorer\Main", True)
regkey.SetValue("Display Inline Images", "no")
んな感じで...。
WinXPなんかはIEのツール→オプション→詳細設定で表示のチェックを切り替えるとブラウザの再起動なしで反応しています。
WebBrowserの初期化みたいな再起動的な強力なやつありますか?
# 回答に非ず。
Inet SDK等を読んでみると、コンテナ(WebBrowserを貼り付けた相手?)の
アンビエントをオーバーライドして、メソッドの dispid 引数に
Const DISPID_AMBIENT_DLCONTROL As Int32 = -5512I
が渡された時に、pvar に、
Const DLCTL_DLIMAGES As Int32 = &H00000010I '画像許可
Const DLCTL_VIDEOS As Int32 = &H00000020I 'ビデオ許可
Const DLCTL_BGSOUNDS As Int32 = &H00000040I 'BGM再生
Const DLCTL_NO_SCRIPTS As Int32 = &H00000080I 'スクリプト実行不許可
Const DLCTL_NO_JAVA As Int32 = &H00000100I 'JAVA実行不許可
Const DLCTL_NO_RUNACTIVEXCTLS As Int32 = &H00000200I 'ActiveX実行不許可
Const DLCTL_NO_DLACTIVEXCTLS As Int32 = &H00000400I 'ActiveXダウンロード不許可
Const DLCTL_DOWNLOADONLY As Int32 = &H00000800I '
Const DLCTL_NO_FRAMEDOWNLOAD As Int32 = &H00001000I '
Const DLCTL_RESYNCHRONIZE As Int32 = &H00002000I '
Const DLCTL_PRAGMA_NO_CACHE As Int32 = &H00004000I '
Const DLCTL_FORCEOFFLINE As Int32 = &H10000000I '
Const DLCTL_NO_CLIENTPULL As Int32 = &H20000000I '
Const DLCTL_SILENT As Int32 = &H40000000I '
Const DLCTL_OFFLINEIFNOTCONNECTED As Int32 = &H80000000I '
の任意のフラグの組み合わせを渡した後、
CType(WebBrowser1.Application, IOleControl).OnAmbientPropertyChange( DISPID_AMBIENT_DLCONTROL)
を呼び出せば、WebBrowserの動作をカスタマイズできるようです。
http://msdn.microsoft.com/workshop/browser/hosting/wbcustomization.asp
# と書いておきながら、Ambientの実装方法がわからないのだけれど。(泣)
調べてもらってまでありがとうございます。
頂いたヒント元にカスタマイズして研究してみます。