こんにちは。初めて投稿させて頂きます。
早速お聞きしたいのですが、現在VBでIEを制御する簡単なツールを
作成しております。VBからIEを起動した際に、アドレスバーやメニューバー、ツールバーを表示させなくし指定したURL以外のサイト
にはアクセスできなくしようと思っています。アドレスバー等の
制御はできたのですが、IEを起動した後、F1やF3を押すと検索
バー等がでてきてしまい、結局は他のサイトにアクセスできてしま
います。VBが作成したフォームの中でIEを起動させれば良い気が
するのですが、その方法もわかりません。ファンクションキーの制御や、他のサイトへのアクセスを
制御する良い方法は無いでしょうか?ご存知の方がいらっしゃいましたら教えてください。
環境は OS Win2000sp4
VB6.0sp5
IE5.5sp2以上です。
> ファンクションキーの制御や、
IEを制御するのではなく、WebBrowserを貼ったFormを作り、それを起動するという手もありますね。
この場合は、IDocHostUIHandlerインターフェイスを使って制限がかけられます。
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200311/03110001.txt
> 他のサイトへのアクセスを制御する
BeforeNavigate2などのイベントを使って、他のページへの移動をキャンセルさせるという手があります。
'ShDocVw.DLLを参照設定しておいてください。
Option Explicit
Private WithEvents IE As InternetExplorer
Private Sub Form_Load()
Set IE = New InternetExplorer
IE.Navigate2 表示されるURL
IE.Visible = True
End Sub
Private Sub IE_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)
If URLなどが他のページのものだったら Then
Cancel = True
End If
End Sub
魔界の仮面弁士様早速のお返事ありがとうございます。
参考にして試してみたいと思います。
また結果を投稿させて頂きますので、よろしくお願いいたします。
ツイート | ![]() |