共用方式為


IExtractIconW 介面 (shlobj_core.h)

公開方法,允許用戶端擷取與資料夾中其中一個對象相關聯的圖示。

遺產

IExtractIcon 介面繼承自 IUnknown 介面 IExtractIcon 也有下列類型的成員:

方法

IExtractIconW 介面具有這些方法。

 
IExtractIconW::Extract

從指定的位置擷取圖示影像。 (Unicode)
IExtractIconW::GetIconLocation

取得圖示的位置和索引。 (Unicode)

言論

有兩種方式可以擷取對象的圖示。 最簡單的方式是呼叫 SHGetFileInfo。 不過,此方法不具彈性,而且可能很慢。 擷取項目圖示的更有彈性且更有效率的方式,就是使用IExtractIcon。 Shell 會在顯示資料夾的內容時,使用 IExtractIcon 來擷取圖示。 若要使用 IExtractIcon 來擷取物件的圖示,請執行下列動作:

  1. 取得包含 物件之資料夾 IShellFolder 介面的指標。
  2. 呼叫 IShellFolder::GetUIObjectOf,其中包含物件的專案標識符清單 (PIDL) 指標,以及 IExtractIcon (IID_IExtractIcon) 的介面識別符。 資料夾會建立對象來處理圖示擷取,並傳回物件的 IExtractIcon 介面指標。
  3. 呼叫 IExtractIcon::GetIconLocation 來擷取圖示的位置。
  4. 呼叫 IExtractIcon::Extract 來擷取圖示的句柄。
您也可以在背景線程上以異步方式擷取圖示。 當擷取是耗時的作業時,此方法很有用。 如需詳細資訊,請參閱 IExtractIcon::GetIconLocation

命名空間延伸模組 實作 IExtractIcon,以提供其物件的圖示。 用戶端會呼叫資料夾的 IShellFolder::GetUIObjectOf 方法,以取得資料夾中物件的 IExtractIcon 介面指標。 IShellFolder::GetUIObjectOf 實作必須建立對象來處理圖示擷取,並傳回物件 IExtractIcon 介面的指標。

圖示處理程式 也會實作 IExtractIcon。 圖示處理程式是殼層延伸模組處理程式的類型,可讓您將圖示動態指派給 檔案類型的成員,

如果您的應用程式需要比 SHGetFileInfo更有彈性的方式來擷取物件的圖示,請呼叫這個介面。

注意

shlobj_core.h 標頭會根據 UNICODE 預處理器常數的定義,將 IExtractIcon 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 shlobj_core.h