Condividi tramite


Funzione SHDefExtractIconW (shlobj_core.h)

Fornisce un gestore predefinito per estrarre un'icona da un file.

Sintassi

SHSTDAPI SHDefExtractIconW(
  [in]            LPCWSTR pszIconFile,
                  int     iIndex,
  [in]            UINT    uFlags,
  [out, optional] HICON   *phiconLarge,
  [out, optional] HICON   *phiconSmall,
                  UINT    nIconSize
);

Parametri

[in] pszIconFile

Tipo: LPCTSTR

Puntatore a un buffer con terminazione Null contenente il percorso e il nome del file da cui viene estratta l'icona.

iIndex

Tipo: int

Posizione dell'icona all'interno del file denominato in pszIconFile. Se si tratta di un numero positivo, fa riferimento alla posizione in base zero dell'icona nel file. Ad esempio, 0 fa riferimento all'icona 1 nel file di risorse e 2 fa riferimento al terzo. Se si tratta di un numero negativo, fa riferimento all'ID risorsa dell'icona.

[in] uFlags

Tipo: UINT

Flag che controlla l'estrazione dell'icona.

GIL_SIMULATEDOC

Sovrappone l'icona estratta sull'icona predefinita del documento per creare l'icona finale. Questa icona può essere usata quando non è possibile trovare o recuperare un'icona più appropriata.

[out, optional] phiconLarge

Tipo: HICON*

Puntatore a un HICON che, quando la funzione viene restituita correttamente, riceve l'handle della versione grande dell'icona specificata nel LOWORD di nIconSize. Questo valore può essere NULL.

[out, optional] phiconSmall

Tipo: HICON*

Puntatore a un HICON che, quando questa funzione viene restituita correttamente, riceve l'handle della versione piccola dell'icona specificata nella HIWORD di nIconSize.

nIconSize

Tipo: UINT

Valore che contiene le dimensioni dell'icona di grandi dimensioni nella LOWORD e le dimensioni ridotte dell'icona nel HIWORD. Le dimensioni sono misurate in pixel. Passare 0 per specificare le dimensioni predefinite grandi e piccole.

Valore restituito

Tipo: HRESULT

Questa funzione può restituire uno di questi valori.

Codice restituito Descrizione
S_OK
Successo.
S_FALSE
L'icona richiesta non è presente.
E_FAIL
Impossibile accedere al file o accedervi tramite un collegamento lento.

Osservazioni

È responsabilità del chiamante liberare le risorse icona create tramite questa funzione quando non sono più necessarie. Questa operazione può essere eseguita tramite la funzione DestroyIcon.

Nota

L'intestazione shlobj_core.h definisce SHDefExtractIcon come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione shlobj_core.h (includere Shlobj.h, Shlobj_core.h)
libreria Shell32.lib
dll Shell32.dll (versione 6.0 o successiva)
set di API ext-ms-win-shell-shell32-l1-2-1 (introdotto in Windows 10, versione 10.0.10240)