Bagikan melalui


IEnumIDList::Metode berikutnya (shobjidl_core.h)

Mengambil jumlah pengidentifikasi item yang ditentukan dalam urutan enumerasi dan memajukan posisi saat ini dengan jumlah item yang diambil.

Sintaks

HRESULT Next(
  [in]  ULONG         celt,
  [out] PITEMID_CHILD *rgelt,
  [out] ULONG         *pceltFetched
);

Parameter

[in] celt

Jenis: ULONG

Jumlah elemen dalam array yang dirujuk oleh parameter rgelt .

[out] rgelt

Jenis: LPITEMIDLIST*

Alamat penunjuk ke array penunjuk ITEMIDLIST yang menerima pengidentifikasi item. Implementasi harus mengalokasikan pengidentifikasi item ini menggunakan CoTaskMemAlloc. Aplikasi panggilan bertanggung jawab untuk membebaskan pengidentifikasi item menggunakan CoTaskMemFree.

Struktur ITEMIDLIST yang dikembalikan dalam array relatif terhadap IShellFolder yang sedang dijumlahkan.

[out] pceltFetched

Jenis: ULONG*

Pointer ke nilai yang menerima hitungan pengidentifikasi item benar-benar dikembalikan dalam rgelt. Jumlahnya bisa lebih kecil dari nilai yang ditentukan dalam parameter celt . Parameter ini dapat berupa NULL pada entri hanya jika celt = 1, karena dalam hal ini metode hanya dapat mengambil satu item (S_OK) atau nol (S_FALSE).

Mengembalikan nilai

Jenis: HRESULT

Mengembalikan S_OK jika metode berhasil mengambil elemen celt yang diminta. Metode ini hanya mengembalikan S_OK jika jumlah lengkap item yang diminta berhasil diambil.

S_FALSE menunjukkan bahwa lebih banyak item yang diminta daripada yang tersisa dalam enumerasi. Nilai yang ditujukkan oleh parameter pceltFetched menentukan jumlah aktual item yang diambil. Perhatikan bahwa nilainya akan menjadi 0 jika tidak ada lagi item untuk diambil.

Mengembalikan nilai kesalahan yang ditentukan COM jika tidak.

Keterangan

Jika metode ini mengembalikan kode kesalahan Model Objek Komponen (COM) (seperti yang ditentukan oleh makro GAGAL ), maka tidak ada entri dalam array rgelt yang valid saat keluar. Jika metode ini mengembalikan kode keberhasilan (seperti S_OK atau S_FALSE), maka ULONG yang ditunjukkan oleh parameter pceltFetched menentukan berapa banyak entri dalam array rgelt yang valid saat keluar.

Perbedaannya penting dalam kasus di mana celt> 1. Misalnya, jika Anda melewati celt=10 dan hanya ada 3 elemen yang tersisa, *pceltFetched akan menjadi 3 dan metode akan mengembalikan S_FALSE berarti Anda mencapai akhir file. Tiga elemen yang diambil akan disimpan ke dalam rgelt dan valid.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header shobjidl_core.h (termasuk Shobjidl.h)
DLL Shell32.dll (versi 4.0 atau yang lebih baru)

Lihat juga

IEnumIDList