HTMLソース取得時のLINKタグ


fuji  2006-12-07 23:35:22  No: 63857

以前お世話になりましたfujiと申します。
(環境:VC++6.0 SP6 MFC使用 WindowsXP SP2)

CHtmlViewを使ったプロジェクトにて、ダウンロードしたHTMLの
ソースを取得したいと思い、CHtmlView::GetHtmlDocument()から
QueryInterfaceなどを使ってソースを取得する処理を追加したのですが、
なぜかLINKタグが加工された文字列として返ってきてしまいます…
具体的には、
<link rel="alternate" type="application/rss+xml" title="test" href="...">
の箇所が
<link title="test" href="...">
となってrelとtypeが抜かれている状態です。
(他の部分は実物のソースと同じです)

取得には(DocumentCompleteのタイミングで)
IHTMLElement::get_outerHTMLを使っているのですが
IEの「ソースの表示」ではそのままの状態のソースがちゃんと
表示されるので取得は可能と思うのですが、CHtmlViewの
インターフェースから完全ソースを取得できる処理を
みつけられずにいます…
この問題についてご存知の方がいらっしゃいましたら
ご教授お願いします。


fuji  2006-12-09 03:05:22  No: 63858

キャッシュに保存されているファイルを見つけられたら
そのファイルを開けばいいかなと思ったのですが、
FindFirstUrlCacheEntryでの検索はファイル指定による
検索ができないようで、一旦すべてのキャッシュファイルを
リストアップしないと該当のファイルを見つけられないようです…
(CFileFindではキャッシュフォルダを見ることはできないです)

またInternetReadFileによる再取得の方法もありますが、
できればHTMLビューでダウンロード完了したそのときの
ソースを(再アクセスせずに)すべて取得したいと思っています。

自分でも引き続き調べてみます。


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

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






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