Funzione di callback pHalExamineMBR (ntddk.h)
La routine HalExamineMBR legge il record di avvio master (MBR) di un disco e restituisce i dati dall'MBR se l'MBR è del tipo specificato dal chiamante.
Sintassi
pHalExamineMBR Phalexaminembr;
void Phalexaminembr(
[in] PDEVICE_OBJECT DeviceObject,
[in] ULONG SectorSize,
[in] ULONG MBRTypeIdentifier,
[out] PVOID *Buffer
)
{...}
Parametri
[in] DeviceObject
Puntatore all'oggetto dispositivo per il dispositivo da esaminare.
[in] SectorSize
Numero minimo di byte che un'operazione di I/O può recuperare dal dispositivo da esaminare. Se questo valore è minore di 512, HalExamineMBR legge 512 byte per assicurarsi che legga un'intera tabella di partizione.
[in] MBRTypeIdentifier
Identificatore del tipo di partizione MBR. Questo parametro specifica il tipo di MBR che può trovarsi sul disco. Per altre informazioni, vedere la sezione Osservazioni.
[out] Buffer
Puntatore a una posizione in cui HalExamineMBR scrive un puntatore in un buffer che contiene dati dall'MBR. Il layout del buffer dipende dal tipo di partizione MBR. HalExamineMBR alloca lo spazio di archiviazione per questo buffer. Il chiamante deve deallocare il buffer appena possibile chiamando la routine ExFreePool .
HalExamineMBR imposta *Buffer = NULL se il tipo di partizione MBR del disco non corrisponde a quello specificato da MBRTypeIdentifier o se si verifica un errore.
Valore restituito
nessuno
Osservazioni
Per un elenco degli identificatori di tipo di partizione MBR definiti dal sistema, vedere la tabella in PARTITION_INFORMATION. Questi identificatori sono definiti nel file di intestazione Ntdddisk.h.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows XP. |
Piattaforma di destinazione | Universale |
Intestazione | ntddk.h (include Ntddk.h) |
IRQL | PASSIVE_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDIs, PowerIrpDDis |