Función HalExamineMBR (ntddk.h)

La rutina HalExamineMBR lee el registro de arranque maestro (MBR) de un disco y devuelve datos del MBR si el MBR es del tipo especificado por el autor de la llamada.

Sintaxis

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

Parámetros

[in] DeviceObject

Puntero al objeto de dispositivo para el dispositivo que se está examinando.

[in] SectorSize

Número mínimo de bytes que una operación de E/S puede capturar del dispositivo que se está examinando. Si este valor es menor que 512, HalExamineMBR lee 512 bytes para asegurarse de que lee toda una tabla de particiones.

[in] MBRTypeIdentifier

Identificador de tipo de partición MBR. Este parámetro especifica el tipo de MBR que puede estar en el disco. Para obtener más información, vea la sección Comentarios.

[out] Buffer

Puntero a una ubicación en la que HalExamineMBR escribe un puntero en un búfer que contiene datos de MBR. El diseño del búfer depende del tipo de partición MBR. HalExamineMBR asigna el almacenamiento para este búfer. El autor de la llamada debe desasignar este búfer lo antes posible llamando a la rutina ExFreePool .

HalExamineMBR establece *Buffer = NULL si el tipo de partición MBR del disco no coincide con el especificado por MBRTypeIdentifier o si se produce un error.

Valor devuelto

None

Observaciones

Para obtener una lista de identificadores de tipo de partición MBR definidos por el sistema, consulte la tabla en PARTITION_INFORMATION. Estos identificadores se definen en el archivo de encabezado Ntdddisk.h.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows XP.
Plataforma de destino Universal
Encabezado ntddk.h (incluya Ntddk.h)
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Consulte también

ExFreePool

PARTITION_INFORMATION