FltGetVolumeFromFileObject 函式 (fltkernel.h)

FltGetVolumeFromFileObject 例程會傳回指定檔案數據流所在磁碟區的不透明指標。

語法

NTSTATUS FLTAPI FltGetVolumeFromFileObject(
  [in]  PFLT_FILTER  Filter,
  [in]  PFILE_OBJECT FileObject,
  [out] PFLT_VOLUME  *RetVolume
);

參數

[in] Filter

呼叫端的不透明篩選指標。 這個參數是必要的,而且不能是 NULL

[in] FileObject

位於磁碟區上之檔案數據流的檔案對象指標。

[out] RetVolume

接收磁碟區不透明指標之呼叫端配置的變數指標。 這個參數是必要的,而且不能是 NULL

傳回值

FltGetVolumeFromFileObject 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,例如下列其中一項:

傳回碼 Description
STATUS_FLT_DELETING_OBJECT
磁碟區正在損毀。 這是錯誤碼。
STATUS_INVALID_PARAMETER
找不到相符的磁碟區。 這是錯誤碼。

備註

FltGetVolumeFromFileObject 會在 RetVolume 參數中傳回的不透明磁碟區指標新增下拉式參考。 不再需要此指標時,呼叫端必須呼叫 FltObjectDereference 來釋放它。 因此,每次成功呼叫 FltGetVolumeFromFileObject 時,都必須比對 FltObjectDereference 的後續呼叫。

若要取得指定磁碟區的裝置物件的指標,請呼叫 FltGetDeviceObject

規格需求

需求
目標平台 Universal
標頭 fltkernel.h (包含 Fltkernel.h)
程式庫 FltMgr.lib
Dll Fltmgr.sys
IRQL <= APC_LEVEL

另請參閱

FltGetDeviceObject

FltGetDiskDeviceObject

FltGetVolumeFromDeviceObject

FltObjectDereference