共用方式為


ExtractIconA 函式 (shellapi.h)

從指定的可執行檔、DLL 或圖示檔取得圖示的句柄。

若要擷取大型或小型圖示的句柄陣列,請使用extractIconEx 函式

語法

HICON ExtractIconA(
  [in] HINSTANCE hInst,
  [in] LPCSTR    pszExeFileName,
       UINT      nIconIndex
);

參數

[in] hInst

類型:HINSTANCE

處理呼叫 函式的應用程式實例。

[in] pszExeFileName

類型:LPCTSTR

Null 終止字串的指標,指定可執行檔、DLL 或圖示檔的名稱。

nIconIndex

類型:UINT

指定要擷取之圖示之以零起始的索引。 例如,如果此值為 0,函式會將句柄傳回指定檔案中的第一個圖示。

如果此值為 -1,函式會傳回指定檔案中的圖示總數。 如果檔案是可執行檔或 DLL,傳回值就是RT_GROUP_ICON資源的數目。 如果檔案是 ,則為 。ICO 檔案,傳回值為 1。

如果這個值為負數不等於 –1,則函式會將句柄傳回指定檔案中的圖示,其資源標識符等於 nIconIndex的絕對值。 例如,您應該使用 –3 來擷取資源標識碼為 3 的圖示。 若要擷取資源標識碼為 1 的圖示,請使用 extractIconEx 函式

傳回值

類型:HICON

傳回值是圖示的句柄。 如果指定的檔案不是可執行檔、DLL 或圖示檔,則傳回值為 1。 如果在檔案中找不到任何圖示,則傳回值會 NULL

言論

不再需要時,您必須呼叫 DestroyIcon 函式,以終結 ExtractIcon 所傳回的圖示句柄。

注意

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

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 shellapi.h
DLL Shell32.dll
API 集 ext-ms-win-shell-shell32-l1-2-1 (在 Windows 10 版本 10.0.10240 中引進)

另請參閱

ExtractAssociatedIcon

ExtractAssociatedIconEx

ExtractIconEx