Fungsi SHCreateShellItemArrayFromDataObject (shobjidl_core.h)

Membuat objek array item Shell dari objek data.

Sintaks

SHSTDAPI SHCreateShellItemArrayFromDataObject(
  [in]  IDataObject *pdo,
  [in]  REFIID      riid,
  [out] void        **ppv
);

Parameter

[in] pdo

Jenis: IDataObject*

Penunjuk ke antarmuka IDataObject .

[in] riid

Jenis: REFIID

Referensi ke ID antarmuka yang diinginkan.

[out] ppv

Jenis: batal**

Ketika metode ini kembali, berisi pointer antarmuka yang diminta dalam riid. Ini biasanya IShellItemArray.

Mengembalikan nilai

Jenis: HRESULT

Jika fungsi ini berhasil, fungsi akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.

Keterangan

Fungsi ini berguna untuk ekstensi Shell yang mengimplementasikan IShellExtInit dan diteruskan objek data ke metode IShellExtInit::Initialize ; misalnya, penangan menu konteks.

API ini memungkinkan Anda mengonversi objek data menjadi item Shell yang dapat digunakan handler. Disarankan agar handler menggunakan array item Shell daripada format clipboard seperti CF_HDROP dan CFSTR_SHELLIDLIST (juga dikenal sebagai HIDA) karena mengarah ke kode yang lebih sederhana dan memungkinkan beberapa peningkatan performa.

Array item shell yang dihasilkan menyimpan referensi ke objek data sumber. Oleh karena itu, objek data tersebut harus tetap valid untuk masa pakai array item shell. Terutama, objek data yang diteruskan ke metode IDropTarget tidak lagi valid setelah operasi penghilangan selesai.

Persyaratan

   
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header shobjidl_core.h (termasuk Shobjidl.h)
DLL Shell32.dll
Set API ext-ms-win-shell-shell32-l1-2-2 (diperkenalkan dalam Windows 10, versi 10.0.14393)