다음을 통해 공유


pHalExamineMBR 콜백 함수(ntddk.h)

HalExamineMBR 루틴은 디스크의 MBR(마스터 부팅 레코드)을 읽고 MBR이 호출자가 지정한 형식인 경우 MBR에서 데이터를 반환합니다.

통사론

pHalExamineMBR Phalexaminembr;

void Phalexaminembr(
  [in]  PDEVICE_OBJECT DeviceObject,
  [in]  ULONG SectorSize,
  [in]  ULONG MBRTypeIdentifier,
  [out] PVOID *Buffer
)
{...}

매개 변수

[in] DeviceObject

검사 중인 디바이스의 디바이스 개체에 대한 포인터입니다.

[in] SectorSize

I/O 작업이 검사 중인 디바이스에서 가져올 수 있는 최소 바이트 수입니다. 이 값이 512보다 작은 경우 HalExamineMBR 512바이트를 읽어 전체 파티션 테이블을 읽는지 확인합니다.

[in] MBRTypeIdentifier

MBR 파티션 형식 식별자입니다. 이 매개 변수는 디스크에 있을 수 있는 MBR의 형식을 지정합니다. 자세한 내용은 비고를 참조하세요.

[out] Buffer

HalExamineMBR MBR의 데이터가 포함된 버퍼에 대한 포인터를 쓰는 위치에 대한 포인터입니다. 버퍼의 레이아웃은 MBR 파티션 형식에 따라 달라집니다. HalExamineMBR 이 버퍼에 대한 스토리지를 할당합니다. 호출자는 ExFreePool 루틴을 호출하여 가능한 한 빨리 이 버퍼의 할당을 취소해야 합니다.

HalExamineMBR 설정 *버퍼 = NULL 디스크의 MBR 파티션 형식이 MBRTypeIdentifier 지정된 형식과 일치하지 않거나 오류가 있는 경우입니다.

반환 값

없음

발언

시스템 정의 MBR 파티션 형식 식별자 목록은 PARTITION_INFORMATION테이블을 참조하세요. 이러한 식별자는 Ntdddisk.h 헤더 파일에 정의됩니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows XP부터 사용할 수 있습니다.
대상 플랫폼 보편적
헤더 ntddk.h(Ntddk.h 포함)
IRQL PASSIVE_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs, PowerIrpDDis

참고 항목

ExFreePool

PARTITION_INFORMATION