アドレスバーに表示されるアイコンを取得したい

[戻る]
かわずくん 2007/07/28(土) 22:55:27
お世話になっております。

インターネットエクスプローラーのアドレス欄に表示されるアイコンは
どこから取得しているのでしょうか?

URLから取得できるのでしょうか?


開発環境は VisualStudio 2005 です。
よろしくおねがいします。

瀬戸っぷ [E-Mail] 2007/07/28(土) 23:23:09
> インターネットエクスプローラーのアドレス欄に表示されるアイコンは
> どこから取得しているのでしょうか?
> URLから取得できるのでしょうか?

実際の挙動については、ご自分で確認を…
って調べていたら詳しく解説しているサイトが。
http://allabout.co.jp/internet/hpcreate/closeup/CU20070302A/index.htm

ちなみに、私が知っていたのは、
「Page.3:ウェブサイト全体に一括適用する方法」
に書かれている方法です。
URLからファイル名をカットして、"favicon.ico"を付加したURLでリクエストを。
パケットキャプチャすると、リクエスト出しているのが確認できると思います。

RAPT [HomePage] 2007/07/29(日) 11:59:43
多くのブラウザでは、下記の順番で表示するアイコンを決定しているようです。
1.htmlドキュメントのmetaタグで指定(FAVICON対応している場合)
2.ドメインルートのfavicon.ico(FAVICON対応している場合)
3.そのプロトコルに関連付けられているアイコン

かわずくん 2007/07/31(火) 02:18:26
ありがとうございます。

IEのお気に入りでは、ICOファイルをダウンロードしているということですね。
PARTさんが、書かれたような順番でICOファイルを取得する場合のAPIなどは
存在するのでしょうか?

自分で、HTMLの解析やダウンロード、関連づけられているアイコンを
取得しないといけないということでしょうか?

PATIO 2007/08/01(水) 14:45:00
FAVICON用のAPIと言うのは無いのではないかと思います。
そもそも、HTMLをダウンロードする為のAPIと言うのも有りませんし。
基本的にはwininetのAPIを使ってHTTP通信をするのと変わり無いと
思います。METAタグからデータを取り出したりをサポートする物は
このAPIにあったと思います。
いずれにしてもAPIを呼べば、FAVICONが取得できると言うようなものは
恐らく無いと思います。
もしあるなら私も知りたいですね。
何に使うのかといわれると答えようが無いですけれど。

2007/08/01(水) 19:46:01
IEコンポーネントだとか、MFCのラッパあたりを使うと楽が出来るかも知れません。
他にも、XMLHTTPRequest(XMLHTTP)等もあるようです。

RAPT [HomePage] 2007/08/01(水) 22:01:15
少なくとも、拙作 Donut RAPT では、FAVICON の在り処について
HTTP レスポンスヘッダを自前でパーズし、取得しています。

かわずくん 2007/08/10(金) 00:17:12
[[解決]]
返信ありがとうございます。
自分でFaviconを取得するルーチンを作成してみます。
また、何かありましたらよろしくお願いします。

古いスレッドには追加発言できません。