IoVolumeDeviceToDosName 函式 (ntddk.h)

IoVolumeDeviceToDosName 例程會傳回代表文件系統磁碟區之指定裝置物件的 MS-DOS 路徑。

語法

NTSTATUS IoVolumeDeviceToDosName(
  [in]  PVOID           VolumeDeviceObject,
  [out] PUNICODE_STRING DosName
);

參數

[in] VolumeDeviceObject

裝置物件的指標,代表儲存類別驅動程式所建立的磁碟區裝置物件。

[out] DosName

呼叫端配置的 UNICODE_STRING 結構的指標。 如果呼叫成功, IoVolumeDeviceToDosName 會設定這個結構的 LengthMaximumLengthBuffer 成員的值。 結束時, Buffer 成員會指向寬字元的 Null 終止字串,其中包含 VolumeDeviceObject 所指定磁碟區裝置物件的 MS-DOS 路徑。 如需詳細資訊,請參閱<備註>。

傳回值

如果呼叫成功,IoVolumeDeviceToDosName 會傳回STATUS_SUCCESS。 可能的錯誤傳回值包括下列狀態代碼。

傳回值 描述
STATUS_INVALID_PARAMETER 例程失敗,因為呼叫端所傳遞的參數值無效。
STATUS_INSUFFICIENT_RESOURCES 例程無法配置此作業所需的資源。

備註

IoVolumeDeviceToDosName 會配置 DosName 參數指向之UNICODE_STRING結構的 Buffer 成員所指向的字串緩衝區。 不再需要此緩衝區之後,此例程的呼叫端應該呼叫 ExFreePool 例程來釋放緩衝區。

從 Windows Vista 開始,您必須先確定在呼叫此例程之前,不會停用 APC。 KeAreAllApcsDisabled 例程可用來確認 APC 未停用。

規格需求

需求
目標平台 Universal
標頭 ntddk.h (包含 Ntddk.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL PASSIVE_LEVEL

另請參閱

ExFreePool

KeAreAllApcsDisabled

UNICODE_STRING