Fungsi HalExamineMBR (ntddk.h)

Rutinitas HalExamineMBR membaca catatan boot master (MBR) disk dan mengembalikan data dari MBR jika MBR adalah jenis yang ditentukan oleh pemanggil.

Sintaks

void HalExamineMBR(
  [in]  PDEVICE_OBJECT DeviceObject,
  [in]  ULONG          SectorSize,
  [in]  ULONG          MBRTypeIdentifier,
  [out] PVOID          *Buffer
);

Parameter

[in] DeviceObject

Penunjuk ke objek perangkat untuk perangkat yang sedang diperiksa.

[in] SectorSize

Jumlah minimum byte yang dapat diambil operasi I/O dari perangkat yang sedang diperiksa. Jika nilai ini kurang dari 512, HalExamineMBR membaca 512 byte untuk memastikan bahwa nilai tersebut membaca seluruh tabel partisi.

[in] MBRTypeIdentifier

Pengidentifikasi jenis partisi MBR. Parameter ini menentukan jenis MBR yang mungkin ada di disk. Untuk informasi selengkapnya, lihat Keterangan.

[out] Buffer

Pointer ke lokasi tempat HalExamineMBR menulis pointer ke buffer yang berisi data dari MBR. Tata letak buffer tergantung pada jenis partisi MBR. HalExamineMBR mengalokasikan penyimpanan untuk buffer ini. Pemanggil harus membatalkan alokasi buffer ini sesegera mungkin dengan memanggil rutinitas ExFreePool .

HalExamineMBR menetapkan *Buffer = NULL jika jenis partisi MBR disk tidak cocok dengan yang ditentukan oleh MBRTypeIdentifier atau jika ada kesalahan.

Mengembalikan nilai

Tidak ada

Keterangan

Untuk daftar pengidentifikasi jenis partisi MBR yang ditentukan sistem, lihat tabel di PARTITION_INFORMATION. Pengidentifikasi ini didefinisikan dalam file header Ntdddisk.h.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows XP.
Target Platform Universal
Header ntddk.h (termasuk Ntddk.h)
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Lihat juga

ExFreePool

PARTITION_INFORMATION