- PR -

IEの履歴の参照方法について

1
投稿者投稿内容
とら
ベテラン
会議室デビュー日: 2006/10/04
投稿数: 54
投稿日時: 2009-02-15 14:06
VisualStudio2005、C#でWindowsアプリケーションの開発を行っています。

IE7でWebの閲覧を行うと、エクスプローラーで見たときに、
Local Settings配下のHistoryフォルダにWebの参照履歴が格納されるのを
確認することができます。

この情報をWindowsアプリケーションから参照したいのですが、方法が
判りません。

WebBrowserコントロールで、ページを取得して、InnerHTMLの中のhrfe=の
内容を切り出すところまでは出来そうなんですが、切り出したURLが既に
履歴に格納されているかどうかの判断を行いたいのです。

何かご存知の方はいらっしゃいますでしょうか?
hebikuzure
ベテラン
会議室デビュー日: 2006/03/11
投稿数: 56
投稿日時: 2009-02-15 16:49
こういう情報をお探しでしょうか....

HtmlHistory Class
http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlhistory.aspx
とら
ベテラン
会議室デビュー日: 2006/10/04
投稿数: 54
投稿日時: 2009-02-16 09:37
末端技術者Aさん。
情報ありがとうございます。

勘違いだったら申し訳ありません。
私の書き方が明確ではなかったのですが、HtmlHistory Classは
「ユーザーが現在のセッションで表示した・・・」と有りますので、欲しい情報とは
違っているように思います。

私が欲しい情報は、以下のとおりです。

IEで、既に見たことのあるページに対するリンクについては、見たことの無いリンクと
違う色(紫色っぽいの)でリンクが表示されます。

想像ですが、多分IEが該当するリンクのURLについて、IEの履歴(今日表示したページとか先週表示したページで出てくるもの)に含まれているかどうかを判断して、表示色の変更をしていると思います。

これの時の判断と同じことをWindowsアプリケーション上でロジックで実装したいと思っています。

つまり、任意のURLについて、IEの履歴に存在するかどうかをチェックすると言うのが目的になります。

この場合、IEで履歴を削除されると、当然見たことが無いURLと判断される事に成ります。

IEの実装に依存する内容なのかもしれませんが、何かご存知の方はいらっしゃらないでしょうか?

ちなみに、IEのターゲットはVer 7です。

よろしくお願いします。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2009-02-16 13:26
IEコンポーネントを用意して、a:visitedに独自のスタイル(他とは被らない)をつけます。
で、そのコンポーネントに任意のURLのアンカータグを書き込んで、
そのスタイルを読み出せば、わかるかと思います。

IEコンポーネント内のJavaScriptで実装可能なレベルですが、
「visited」「行動ターゲティング広告」あたりのキーワードでググると、
具体的な実装方法が出てくると思います。

この方法だとIEがどんなに仕様変更しようとも「IEと同じ」が保障されますので、
安全に扱えるのではないかと思いますが、
visited擬似クラスの読み出しはプライバシー保護の観点から、
今後動作が保障されるかについて微妙な動きも有ります。
hebikuzure
ベテラン
会議室デビュー日: 2006/03/11
投稿数: 56
投稿日時: 2009-02-16 22:28
http://takagi-hiromitsu.jp/diary/20081019.html
こういう事でしたか。
サーバーサイドでクライアントの情報を取得する(悪く言えばぶっこ抜く)というのはややデリケートな話ですね。
Azulean
大ベテラン
会議室デビュー日: 2008/01/04
投稿数: 123
お住まい・勤務地: 大阪府
投稿日時: 2009-02-16 22:52
Windowsアプリケーションという前提ですが、下記とか参考になりますか?
http://msdn.microsoft.com/en-us/library/ms774939.aspx
http://www.codeproject.com/KB/cs/ponta.aspx?df=100&forumid=67589&exp=0&select=1050513


情報源
http://blogs.wankuma.com/katamari/archive/2007/12/01/111331.aspx
1

スキルアップ/キャリアアップ(JOB@IT)