Bagikan melalui


Fungsi SHHandleUpdateImage (shlobj_core.h)

[SHHandleUpdateImage tersedia untuk digunakan dalam sistem operasi yang ditentukan di bagian Persyaratan. Ini mungkin diubah atau tidak tersedia dalam versi berikutnya.]

Menangani pemberitahuan perubahan SHCNE_UPDATEIMAGE Shell.

Sintaks

int SHHandleUpdateImage(
  [in] PCIDLIST_ABSOLUTE pidlExtra
);

Parameter

[in] pidlExtra

Jenis: PCIDLIST_ABSOLUTE

Indeks dalam daftar gambar sistem yang telah berubah, ditentukan dalam parameter pidl2IShellChangeNotify::OnChange.

Nilai kembali

Jenis: int

Mengembalikan -1 pada kegagalan atau indeks entri daftar gambar yang diubah saat berhasil.

Keterangan

Gunakan SHHandleUpdateImage hanya ketika parameter pidl2 yang diterima oleh panggilan balik pemberitahuan perubahan Anda bukan NULL.

Contoh

Contoh berikut menunjukkan penggunaan SHHandleUpdateImage dalam implementasi 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;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header shlobj_core.h (termasuk Shlobj.h)
Pustaka Shell32.lib
DLL Shell32.dll (versi 5.0 atau yang lebih baru)

Lihat juga

IShellChangeNotify

SHChangeNotify