インターネットエクスフローラのお気に入りのリストを取得したいのですが?
例えばメニューバーに作成し、クリックするとURLを把握でき、WebBrowserへ
反映するような事は、可能でしょうか?
よろしくお願いします。
>インターネットエクスフローラのお気に入りのリストを取得したいのですが?
レジストリ
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
の
Favoritesの値
で、どうですか?
私も作ったことがあります。
流れとしては、
(1)お気に入りフォルダの位置を取得
(2)その中のファイルやフォルダの名前をリストアップする。
(3)そのファイル構造にしたがって、TMenuItemを動的生成する。
ということになるかと思います。
メニュークリック時には、
(1)対応するショートカットのファイルをIniファイルとして開き、
[InternetShortcut]セクションのURLの項目を取得
(テキストエディタで、IEのお気に入りに並んでいる
ショートカットを開いてみてください。意味が分かると思います。)
(2)そのURLをWebBrowserに表示する
でOKです。
まずやってみて、できないところがあれば、もっと具体的な
形で質問すると回答も付きやすいと思いますよ。
m.a.さん、すみません。便乗質問です。
私も同じようなもので、クリックするとIEで開くものを作ったことがあります。
var
sURL:String;
IniF:TIniFile;
begin
IniF:=TIniFile.Create(sFileName);
sURL:=IniF.ReadString('InternetShortcut','URL','');
IniF.Free;
で、URLを取得しましたが、ショートカットのプロパティで見ると、表示回数もありますよね。これが欲しくて、いろいろ情報を集めました。その際に、
>>テキストエディタで、IEのお気に入りに並んでいる
ショートカットを開いてみてください。
と同じ情報にいきつきました。しかし、たとえば、NotePadでショートカットを開くとURL指定先のページのテキストベースの情報が表示されます。
中身を見れたら、表示回数に関するキーワードもわかると思ったのですが、簡単と思われるテキストエディタで開くことができませんでした。
未解決のままにしておりましたが、このスレを見て思い出し、今、また、NotePadで開いてみましたが同じです。たぶん、簡単なことなのだとは思いますが、iniファイルの構造で開くにはどうしたらよいのでしょうか?
よろしくお願いします。
環境による違いはないと思いますが、念のため、OSはWin2000です。
GetUrlCacheEntryInfoを使用して表示回数を取得することはできました。
ツイート | ![]() |