IExtractIconA 介面 (shlobj_core.h)

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

繼承

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

方法

IExtractIconA介面具有這些方法。

 
IExtractIconA::Extract

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

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

備註

有兩種方式可以擷取物件的圖示。 最簡單的方式是呼叫 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 標頭會將 IExtractIcon 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 shlobj_core.h