IEを制御したい


u_1  2003-11-06 21:12:04  No: 109720

こんにちは。初めて投稿させて頂きます。
早速お聞きしたいのですが、現在VBでIEを制御する簡単なツールを
作成しております。VBからIEを起動した際に、アドレスバーやメニューバー、ツールバーを表示させなくし指定したURL以外のサイト
にはアクセスできなくしようと思っています。アドレスバー等の
制御はできたのですが、IEを起動した後、F1やF3を押すと検索
バー等がでてきてしまい、結局は他のサイトにアクセスできてしま
います。VBが作成したフォームの中でIEを起動させれば良い気が
するのですが、その方法もわかりません。ファンクションキーの制御や、他のサイトへのアクセスを
制御する良い方法は無いでしょうか?ご存知の方がいらっしゃいましたら教えてください。

環境は  OS  Win2000sp4
        VB6.0sp5
        IE5.5sp2以上です。


魔界の仮面弁士  2003-11-06 22:22:16  No: 109721

> ファンクションキーの制御や、
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


u_1  2003-11-06 23:17:02  No: 109722

魔界の仮面弁士様早速のお返事ありがとうございます。
参考にして試してみたいと思います。
また結果を投稿させて頂きますので、よろしくお願いいたします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加