VBでウェブブラウザを作っています

タグの編集
投稿者 KEN  (小学生) 投稿日時 2009/10/3 06:17:11
Form1がウェブブラウザの本体で、
お気に入り表示.vbがお気に入りを表示するフォームなんですが、
お気に入り表示.vbにはWebBrowser1が作成してあります。
なので、IEと共用のお気に入りにしたくて、
Temporary Internet FilesをVBで取得しました。(↓のアドレス)
"C:\Users\ken\AppData\Local\Microsoft\Windows\Temporary Internet Files"

お気に入り表示.WebBrowser1.Navigate(System.Environment.GetFolderPath(Environment.SpecialFolder.Favorites))

上のようにしました。

そして、その後に
お気に入り表示.Show()
をして、
お気に入り表示.vbを開きました。
その時点ではちゃんとWebBrowser1にファイルの一覧が表示されます。

でも、そのファイルをクリックすると、自作のウェブブラウザ(Form1)ではなく、お気に入り表示.vbのWebBrowser1でもなく、IEが起動してしまいます。

この時にIEで起動しないようにして、Form1のウェブブラウザに映す ということは可能なのでしょうか?
可能ならばサンプルコードなどを教えていただければありがたいです。
投稿者 匿名  (社会人) 投稿日時 2009/10/3 19:57:44
明快入門VB2008 シニア編 (林晴比古著)に掲載されてますよ。
投稿者 brv  (中学生) 投稿日時 2009/10/4 01:20:36
ウェブブラウザを作るのであれば、拡張子の関連付けを変更して、HTMLが自作ブラウザで開かれるようにすればこの問題は解決できます。
そのためには、拡張子の関連付け以外にもコマンドライン引数でファイル名を処理することが必要です。

拡張子の関連付けの変更
http://dobon.net/vb/dotnet/system/associatedapp.html

コマンドライン引数から、開かれたファイルを知るためには、このようにします。
Dim filePath As String = Environment.GetCommandLineArgs()(0)


filePathにファイルのパスが格納されます。