掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Documentの複写を行なうには?(WebBrowser) (ID:88994)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんな感じでいけるかな……。Documentプロパティから、 現在表示中のIPersistを取得して、それを表示させてみました。 Option Explicit Private Sub Form_Load() Command1.Caption = "ブラウザ列挙" WebBrowser1.Navigate2 "about:blank" WebBrowser1.Visible = False End Sub Private Sub Command1_Click() List1.Clear Dim O As Object For Each O In CreateObject("Shell.Application").Windows() If TypeName(O.Document) = "HTMLDocument" Then List1.AddItem O.Document.Title List1.ItemData(List1.NewIndex) = O.hWnd End If Next End Sub Private Sub List1_DblClick() Dim IEDoc As IPersistStreamInit Dim WBDoc As IPersistStreamInit Set WBDoc = Me.WebBrowser1.object.Document Dim h As Long Dim O As Object h = List1.ItemData(List1.ListIndex) For Each O In CreateObject("Shell.Application").Windows() If O.hWnd = h Then Set IEDoc = O.Document Exit For End If Next If IEDoc Is Nothing Then MsgBox "ドキュメント取得失敗", vbInformation Else Dim Bin As ADODB.Stream 'IStreamインターフェイス Set Bin = New ADODB.Stream Bin.Type = adTypeBinary Bin.Open IEDoc.Save Bin, True Bin.position = 0 WBDoc.Load Bin Me.WebBrowser1.Visible = True Set IEDoc = Nothing End If Set WBDoc = Nothing End Sub 上記では、IPersistStreamInitインターフェイスを用いていますが、 メモリではなく、ファイル経由でのやりとりが必要な場合は、 IPersistFileインターフェイスを利用してみてください。 なお、ファイルでアクセスするにしても、オンメモリで処理するにしても、 ロケーションの制御までは組み込まれていませんから、 <a href="http://www.google.co.jp/">〜</a> のようなリンクは正しくジャンプできますが、 <a href="wwwlng.cgi?print+200503/05030018.txt">〜</a> のような、相対パスで記述された URL については対処できません。 これについては、もう少し考慮する必要があるかも知れませんね。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.