請問要如何抓取檔案的自己ICON圖示呢? |
尚未結案
|
saam
初階會員 發表:61 回覆:75 積分:27 註冊:2003-03-03 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
|
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
|
saam
初階會員 發表:61 回覆:75 積分:27 註冊:2003-03-03 發送簡訊給我 |
謝謝二位先進:
可是使用ExtractIcon沒法抓執行檔和ICO檔外的ICON,
C:\Program Files\Borland\DelphiX\Demos\ResXplor這個範例
我一執行就有錯誤,不知道問題出在那裏,後來我改用SHGetFileInfo
來做,發現有些檔案也是不到他的圖示,如副檔名為.htm的出現的是無
圖示的ICON.
附上我的程式如下
var
info:SHFILEINFO;
a:word;
icon:TIcon;
begin
a:=0;
icon:=TIcon.Create ;
a:=SHGetFileInfo('D:\共用資料匣\index.htm',0,info,sizeof(info),SHGFI_USEFILEATTRIBUTES or SHGFI_ICON or SHGFI_SHELLICONSIZE or SHGFI_SYSICONINDEX);
icon.Handle:=info.hIcon ;
Image1.Picture.Icon :=icon; 請問我那錯了呢?
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
不是錯在程式,而是錯在觀念 去找取外部檔的 Icon ,其本上就是到這個檔案的資源 (resources) 資料裡抽取裡面的資源。基本上 Windows 的程式(包括 dll)是有固定的格式去存取,所以才可以被其他程式(如ResXplor)存取。其他的檔案其本上沒固定的格式去儲存資料所以亦無固定的格式去存取。 HTML 檔只是純文字的檔案,沒包含ICON的,你在檔案總管看到的 ICON 只是代表這裡檔案是甚麼類形的檔案及需設開啟程式,跟本就不是它自己有個 ICON。有關的檔案類形設定可在檔案總管->工具->資料夾選項->檔案類形 裡設定。
|
saam
初階會員 發表:61 回覆:75 積分:27 註冊:2003-03-03 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
|
banson1716
高階會員 發表:55 回覆:182 積分:167 註冊:2002-04-14 發送簡訊給我 |
|
saam
初階會員 發表:61 回覆:75 積分:27 註冊:2003-03-03 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |