請問如何抓取IE中我的最愛的內容。 |
答題得分者是:hagar
|
pcernet
初階會員 發表:69 回覆:113 積分:41 註冊:2002-11-29 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
pcernet
初階會員 發表:69 回覆:113 積分:41 註冊:2002-11-29 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
參考底下這篇, 看看是不是您要的:
How do I get Internet Explorer's Favorites? Accessing Internet Explorer favorites is not hard
since they are nothing more than files and folders.
All you have to basically do is find the IE Favorites
folder, then read it's structure and file list. Once
this is done you will need to read the URL that's in
each of the files. Sounds easy? You can always use
the code below... ;->
function GetIEFavorites(const Path: string): TStrings; var Buffer : array[0..2047] of Char; iFound : Integer; Dir, FileName, Path : string; SearchRec: TSearchRec; Links : TStrings; begin Links := TStringList.Create; // Get all file names in the favourites path Path := FavPath '*.url'; Dir := ExtractFilepath(Path); iFound := FindFirst(Path, faAnyFile, searchrec); while iFound = 0 do begin // Get now URLs from files Setstring(FileName, Buffer, GetPrivateProfilestring('InternetShortcut', PChar('URL'), nil, Buffer, SizeOf(Buffer), PChar(Dir SearchRec.Name))); Links.Add(FileName); iFound := FindNext(SearchRec); end; // Find subfolders iFound := FindFirst(Dir '*.*', faAnyFile, searchrec); while iFound = 0 do begin if ((SearchRec.Attr and faDirectory) > 0) and (SearchRec.Name[1] <> '.') then Links.Addstrings(GetIEFavorites(dir '' SearchRec.Name)); iFound := FindNext(searchrec); end; FindClose(SearchRec); Result := Links; end; ... procedure FreePidl(pIDL: PItemIDList); var Allocator: IMalloc; begin if Succeeded(SHGetMalloc(Allocator)) then begin Allocator.Free(pIDL); {$ifdef VER100} Allocator.Release; {$endif} end; end; ... var FavPath: array[0..MAX_PATH] of Char; pIDL : PItemIDList; begin if Succeeded(ShGetSpecialFolderLocation(Handle, CSIDL_FAVORITES, pIDL)) then begin if ShGetPathfromIDList(pIDL, FavPath) then ListBox1.Items := GetIEFavourites(StrPas(FavPath)); // We are responsible for freeing the PItemIDList pointer with the // Shell's IMalloc interface FreePIDL(pIDL); end; end;-- Everything I say is a lie. |
pcernet
初階會員 發表:69 回覆:113 積分:41 註冊:2002-11-29 發送簡訊給我 |
|
jackkcg
站務副站長 發表:891 回覆:1050 積分:848 註冊:2002-03-23 發送簡訊給我 |
pcernet 大大 你忘記選擇回應的分數ㄛ hagar 大大 已經快 滿100分了 記的幫回應者加分 才是 轉述
*******************************************************************
RaynorPao
版主 針對「無人回應」而且又已經拖很久的「問題」
請參考「總績分制度」中的說明結案
而針對已經「有人回應」的問題
如果對答案「滿意」的話~~請選一位會員給分
如果對答案「不滿意」的話~~也可以「從缺」結案 另外~~給所有網友一個建議
在這裡發問的所有會員們
請以「感恩」的心~~對待答題前輩們提供的答案
這些答案~~都是所有答題前輩們以前花費
幾小時、幾天、幾星期...甚至幾個月才得到的研究成果
而發問者卻只要短短的幾分鐘就可以得到答案
因此~~適當的鼓勵「答題者」的善意,絕對是必要的
而且,也才能在往後形成「良性循環」
讓更多的答題前輩~~願意貢獻他們寶貴的知識 ******************************************************************* 哈哈 下一個金牌得主 hagar 大大 發表人 - jackkcg 於 2002/11/30 13:05:02
------
********************************************************** 哈哈&兵燹 最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好 Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知 K.表Knowlege 知識,就是本站的標語:Open our mind |
moli1943
一般會員 發表:9 回覆:18 積分:5 註冊:2003-07-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |