3
我有一個簡單的文件瀏覽器,並有我顯示的文件和文件夾,的SHGetFileInfo呼籲目錄古怪
通過(對目錄)
SHFILEINFO info = new SHFILEINFO();
SHGetFileInfo(filename,
FILE_ATTRIBUTE_DIRECTORY,
ref info,Marshal.SizeOf(info),
SHGFI_ICON | SHGFI_USEFILEATTRIBUTES | SHGFI_SMALLICON | SHGFI_ADDOVERLAYS);
它工作100%的罰款所得,但我已經注意到了奇怪 - 如果我嘗試獲取目錄的圖標,但指定FILE_ATTRIBUTE_NORMAL而不是FILE_ATTRIBUTE_DIRECTORY ,但它對目錄確實很奇怪 - 普通文件夾有「未知文件類型的白皮書」圖標,回收站具有VLC圖標等。SVN下的目錄有適當的覆蓋,但基本文件圖標(白紙)。
據我所知,目錄的基本圖標現在是未知文件,但爲什麼有些文件夾有完全奇怪的圖標? Config.MSI有安裝程序圖標,回收站有VLC圖標(wtf ?!)等。shell函數對此參數有什麼作用?它究竟獲得了什麼圖標?
同樣,這不是問題,我只是好奇。
我從來沒有使用過ShGetFileInfo,但它讓我想到了你所得到的圖標可能代表文件夾內的第一個文件。 – Diadistis 2010-03-17 15:27:00
不,事實並非如此,普通文件夾總是有'未知文件'圖標;只是一些特殊的圖標有不同的圖標。 – Axarydax 2010-03-17 15:32:01