SHDefExtractIconA 函式 (shlobj_core.h)
提供從檔案擷取圖標的默認處理程式。
語法
SHSTDAPI SHDefExtractIconA(
[in] LPCSTR pszIconFile,
int iIndex,
[in] UINT uFlags,
[out, optional] HICON *phiconLarge,
[out, optional] HICON *phiconSmall,
UINT nIconSize
);
參數
[in] pszIconFile
類型:LPCTSTR
Null 終止緩衝區的指標,其中包含從中擷取圖示之檔案的路徑和名稱。
iIndex
類型:int
pszIconFile中名為 的檔案中圖示的位置。 如果這是正數,它會參考檔案中圖示以零起始的位置。 例如,0 是指資源檔中的第 1 個圖示,2 則參考第 3 個。 如果這是負數,則會參考圖示的資源標識符。
[in] uFlags
類型:UINT
控件圖示擷取的旗標。
GIL_SIMULATEDOC
重迭預設文件圖示上擷取的圖示,以建立最終圖示。 找不到或擷取任何適當的圖示時,可以使用此圖示。
[out, optional] phiconLarge
類型:HICON*
HICON 的指標,當此函式成功傳回時,會接收 nIconSizeLO WORD 中所指定大型圖示版本的句柄。 這個值可以 NULL。
[out, optional] phiconSmall
類型:HICON*
HICON 的指標,當此函式成功傳回時,會接收 HI WORD 中所指定小型圖示版本的句柄,nIconSize。
nIconSize
類型:UINT
值,其中包含其 LOWORD 中的大型圖示大小,以及其 HIWORD中的小型圖示大小。 大小是以像素為單位來測量。 傳遞 0 以指定預設的大型和小型大小。
傳回值
類型:HRESULT
此函式可以傳回其中一個值。
傳回碼 | 描述 |
---|---|
|
成功。 |
|
要求的圖示不存在。 |
|
無法存取檔案,或正透過慢速連結存取。 |
言論
呼叫者有責任釋放不再需要此函式時透過此函式建立的圖示資源。 這可以透過 DestroyIcon 函式來完成。
注意
shlobj_core.h 標頭會根據 UNICODE 預處理器常數的定義,將 SHDefExtractIcon 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | shlobj_core.h (包括 Shlobj.h, Shlobj_core.h) |
連結庫 | Shell32.lib |
DLL | Shell32.dll (6.0 版或更新版本) |
API 集 | ext-ms-win-shell-shell32-l1-2-1 (在 Windows 10 版本 10.0.10240 中引進) |