Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
[Metode Baca tersedia untuk digunakan dalam sistem operasi yang ditentukan di bagian Persyaratan. Ini tidak tersedia untuk digunakan di Windows Server 2003 dengan Paket Layanan 1 (SP1) dan yang lebih baru, Windows Vista, Windows Server 2008, dan versi sistem operasi berikutnya. Antarmuka IStream menyediakan fungsionalitas serupa.]
Metode Baca membaca jumlah byte tertentu dari objek buffer ke dalam memori yang dimulai pada penunjuk pencarian saat ini.
Sintaks
HRESULT Read(
[out] BYTE *pByte,
[in] LONG cb,
[out] LONG *pcbRead
);
Parameter
-
pByte [out]
-
Menunjuk ke buffer tempat data aliran dibaca. Jika terjadi kesalahan, nilai ini adalah NULL.
-
cb [in]
-
Jumlah byte data untuk mencoba membaca dari objek stream.
-
pcbRead [out]
-
Alamat variabel LONG yang menerima jumlah byte aktual yang dibaca dari objek stream. Anda dapat mengatur penunjuk ini ke NULL untuk menunjukkan bahwa Anda tidak tertarik dengan nilai ini. Dalam hal ini, metode ini tidak menyediakan jumlah byte aktual yang dibaca.
Menampilkan nilai
Nilai yang dikembalikan adalah HRESULT. Nilai S_OK menunjukkan bahwa panggilan berhasil.
Keterangan
Metode ini membaca byte dari objek aliran ini ke dalam memori. Objek stream harus dibuka dalam mode STGM_READ. Metode ini menyesuaikan penunjuk pencarian dengan jumlah byte aktual yang dibaca.
Jumlah byte yang benar-benar dibaca juga dikembalikan dalam parameter pcbRead .
Catatan Bagi Pemanggil
Jumlah aktual byte yang dibaca dapat kurang dari jumlah byte yang diminta jika terjadi kesalahan atau jika akhir aliran tercapai selama operasi baca.
Beberapa implementasi mungkin mengembalikan kesalahan jika akhir aliran tercapai selama pembacaan. Anda harus siap untuk menangani pengembalian kesalahan atau S_OK mengembalikan nilai pada akhir pembacaan aliran.
Contoh
Contoh berikut menunjukkan pembacaan byte dari buffer.
BYTE byAtr[32];
long lBytesRead, i;
HRESULT hr;
// pAtr is a pointer to a previously instantiated IByteBuffer.
// It was used in an earlier call by ISCard::get_Atr.
// Use IByteBuffer::Read to access the retrieved ATR bytes.
hr = pAtr->Read(byAtr, 32, &lBytesRead);
// Use the ATR value. (This example merely displays the bytes.)
for ( i = 0; i < lBytesRead; i++)
printf("%c", *(byAtr + i));
printf("\n");
Persyaratan
| Persyaratan | Nilai |
|---|---|
| Klien minimum yang didukung |
Windows XP [hanya aplikasi desktop] |
| Server minimum yang didukung |
Windows Server 2003 [hanya aplikasi desktop] |
| Akhir dukungan klien |
Windows XP |
| Akhir dukungan server |
Windows Server 2003 |
| Header |
|
| Pustaka jenis |
|
| DLL |
|
| IID |
IID_IByteBuffer didefinisikan sebagai E126F8FE-A7AF-11D0-B88A-00C04FD424B9 |