IStream::Metode pencarian (objidl.h)
Metode Pencarian mengubah penunjuk pencarian ke lokasi baru. Lokasi baru relatif terhadap awal aliran, akhir aliran, atau penunjuk pencarian saat ini.
Sintaks
HRESULT Seek(
[in] LARGE_INTEGER dlibMove,
[in] DWORD dwOrigin,
[out] ULARGE_INTEGER *plibNewPosition
);
Parameter
[in] dlibMove
Perpindahan yang akan ditambahkan ke lokasi yang ditunjukkan oleh parameter dwOrigin . Jika dwOriginSTREAM_SEEK_SET, ini ditafsirkan sebagai nilai yang tidak ditandatangani daripada nilai yang ditandatangani.
[in] dwOrigin
Asal untuk perpindahan yang ditentukan dalam dlibMove. Asalnya dapat menjadi awal file (STREAM_SEEK_SET), penunjuk pencarian saat ini (STREAM_SEEK_CUR), atau akhir file (STREAM_SEEK_END). Untuk informasi selengkapnya tentang nilai, lihat enumerasi STREAM_SEEK .
[out] plibNewPosition
Penunjuk ke lokasi tempat metode ini menulis nilai penunjuk pencarian baru dari awal aliran.
Anda dapat mengatur penunjuk ini ke NULL. Dalam hal ini, metode ini tidak menyediakan penunjuk pencarian baru.
Nilai kembali
Metode ini dapat mengembalikan salah satu nilai ini.
Menampilkan kode | Deskripsi |
---|---|
S_OK | Penunjuk pencarian berhasil disesuaikan. |
E_PENDING | Hanya Penyimpanan Asinkron: Bagian atau semua data aliran saat ini tidak tersedia. |
STG_E_INVALIDPOINTER | Menunjukkan bahwa plibNewPosition menunjuk ke memori yang tidak valid, karena plibNewPosition tidak dibaca. |
STG_E_INVALIDFUNCTION | Parameter dwOrigin berisi nilai yang tidak valid, atau parameter dlibMove berisi nilai offset yang buruk. Misalnya, hasil penunjuk pencarian adalah nilai offset negatif. |
STG_E_REVERTED | Objek tidak valid oleh operasi kembali di atasnya di pohon transaksi. |
Keterangan
IStream::Seek mengubah penunjuk pencarian sehingga operasi baca dan tulis berikutnya dapat dilakukan di lokasi yang berbeda di objek aliran. Ini adalah kesalahan untuk mencari sebelum awal aliran. Namun, bukan kesalahan untuk mencari melewati akhir aliran. Mencari melewati akhir aliran berguna untuk operasi tulis berikutnya, karena rentang byte aliran akan diperluas ke posisi pencarian baru segera sebelum penulisan selesai.
Anda juga dapat menggunakan metode ini untuk mendapatkan nilai pointer pencarian saat ini dengan memanggil metode ini dengan parameter dwOrigin diatur ke STREAM_SEEK_CUR dan parameter dlibMove diatur ke 0 sehingga penunjuk pencarian tidak diubah. Penunjuk pencarian saat ini dikembalikan dalam parameter plibNewPosition .
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows 2000 Server [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | objidl.h |
Pustaka | Uuid.lib |
DLL | Ole32.dll |