Condividi tramite


Funzione SHHandleUpdateImage (shlobj_core.h)

[SHHandleUpdateImage è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Può essere modificato o non disponibile nelle versioni successive.

Gestisce la notifica di modifica della shell SHCNE_UPDATEIMAGE .

Sintassi

int SHHandleUpdateImage(
  [in] PCIDLIST_ABSOLUTE pidlExtra
);

Parametri

[in] pidlExtra

Tipo: PCIDLIST_ABSOLUTE

Indice nell'elenco di immagini di sistema modificato, specificato nel parametro pidl2 di IShellChangeNotify::OnChange.

Valore restituito

Tipo: int

Restituisce -1 in caso di errore o l'indice della voce dell'elenco di immagini modificate in caso di esito positivo.

Commenti

Usare SHHandleUpdateImage solo quando il parametro pidl2 ricevuto dal callback di notifica delle modifiche non è NULL.

Esempio

Nell'esempio seguente viene illustrato l'uso di SHHandleUpdateImage nell'implementazione di IShellChangeNotify::OnChange.

STDMETHODIMP CMyShellChangeNotify::OnChange(LONG lEvent, 
                                            LPCITEMIDLIST pidl1, 
                                            LPCITEMIDLIST pidl2)
{
    HRESULT hr = E_FAIL;
    int iImage;

    switch(lEvent)
    {
        // An image in the system image list has changed.
        case SHCNE_UPDATEIMAGE:
        {
            hr = S_OK;

            if (pidl2)
                iImage = SHHandleUpdateImage(pidl2);
            else
                iImage = *(int UNALIGNED *)((BYTE *)pidl1 + 2);
               
            if (iImage != -1)
            {
                // Process iImage as desired.
            }
            break;
        }
        // Other cases
    }
    return hr;
}

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shlobj_core.h (include Shlobj.h)
Libreria Shell32.lib
DLL Shell32.dll (versione 5.0 o successiva)

Vedi anche

IShellChangeNotify

SHChangeNotify