Struktur CIDA (shlobj_core.h)
Digunakan dengan format clipboard CFSTR_SHELLIDLIST untuk mentransfer penunjuk ke daftar pengidentifikasi item (PIDL) dari satu atau beberapa objek namespace Shell.
Sintaks
typedef struct _IDA {
UINT cidl;
UINT aoffset[1];
} CIDA, *LPIDA;
Anggota
cidl
Jenis: UINT
Jumlah PIDL yang sedang ditransfer, tidak termasuk folder induk.
aoffset[1]
Jenis: UINT[1]
Array offset, relatif terhadap awal struktur ini. Array berisi elemen cidl+1. Elemen pertama aoffset berisi offset ke PIDL yang sepenuhnya memenuhi syarat dari folder induk. Jika PIDL ini kosong, folder induk adalah desktop. Masing-masing elemen array yang tersisa berisi offset ke salah satu PIDL yang akan ditransfer. Semua PIDL ini relatif terhadap PIDL folder induk.
Keterangan
Untuk menggunakan struktur ini untuk mengambil PIDL tertentu, tambahkan nilai aoffset PIDL ke alamat struktur. Dua makro berikut dapat digunakan untuk mengambil PIDL dari struktur. Yang pertama mengambil PIDL folder induk. Yang kedua mengambil PIDL, yang ditentukan oleh indeks berbasis nol.
#define HIDA_GetPIDLFolder(pida) (LPCITEMIDLIST)(((LPBYTE)pida)+(pida)->aoffset[0])
#define HIDA_GetPIDLItem(pida, i) (LPCITEMIDLIST)(((LPBYTE)pida)+(pida)->aoffset[i+1])
Nilai yang dikembalikan oleh makro ini adalah penunjuk ke struktur ITEMIDLIST . Karena struktur ini bervariasi panjangnya, Anda harus menentukan akhir struktur dengan mengurainya. Lihat NameSpace untuk diskusi lebih lanjut tentang PIDL dan struktur ITEMIDLIST .
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Header | shlobj_core.h (termasuk Shlobj.h) |