pHalEx用MBR 回呼函式 (ntddk.h)
如果 MBR 是呼叫端所指定的類型, HalExR 例程會讀取磁碟 (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,HalEx用MBR 會讀取 512 個字節,以確保它會讀取整個數據分割數據表。
[in] MBRTypeIdentifier
MBR 磁碟分區類型標識碼。 此參數會指定可能位於磁碟上的 MBR 類型。 如需詳細資訊,請參閱<備註>。
[out] Buffer
HalEx要MBR 寫入包含 MBR 數據之緩衝區指標的位置指標。 緩衝區的配置取決於 MBR 數據分割類型。 HalEx要MBR 配置此緩衝區的記憶體。 呼叫端必須儘快解除分配此緩衝區,方法是呼叫 ExFreePool 例程。
如果磁碟的 MBR 磁碟分區類型不符合 MBRTypeIdentifier 所指定的磁碟類型,或發生錯誤,HalExableMBR 會設定 *Buffer = NULL。
傳回值
無
備註
如需系統定義的 MBR 磁碟分區類型識別碼清單,請參閱 PARTITION_INFORMATION 中的數據表。 這些標識元定義於 Ntdddisk.h 頭檔中。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows XP 開始提供。 |
目標平台 | Universal |
標頭 | ntddk.h (包含 Ntddk.h) |
IRQL | PASSIVE_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDIS、 PowerIrpDDis |