共用方式為


DEVICE_DSM_NOTIFICATION_PARAMETERS結構 (ntddstor.h)

DEVICE_DSM_NOTIFICATION_PARAMETERS 結構會指定與裝置數據集屬性相關的通知作業參數。

語法

typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
  ULONG Size;
  ULONG Flags;
  ULONG NumFileTypeIDs;
  GUID  FileTypeID[ANYSIZE_ARRAY];
} DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;

成員

Size

這個 結構的總大小,以位元組為單位。 這個成員的值必須包含 FileTypeID 成員的總大小,以位元組為單位。

Flags

指定通知作業特性的旗標。 旗標 成員必須設定為下列其中一個值:

意義
DEVICE_DSM_NOTIFY_FLAG_BEGIN 邏輯區塊位址 (LBA) 範圍目前正由 FileTypeID 成員中指定的檔案類型使用。 LBA 範圍是由 IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES 要求承載內的數據集範圍所指定。
DEVICE_DSM_NOTIFY_FLAG_END LBA 範圍不再由 FileTypeID 成員中指定的檔類型使用。

NumFileTypeIDs

FileTypeID 成員中的項目數。

FileTypeID[ANYSIZE_ARRAY]

指定通知作業檔類型的一或多個 GUID 值。 下表描述 FileTypeID GUID 值。

GUID 值 描述
FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE 指定頁面檔案的通知作業。
FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE 指定系統休眠檔案的通知作業。
FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE 指定系統損毀傾印檔案的通知作業。

言論

通知是在 IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES 要求承載內的參數區塊中指定。 如需承載配置的一般描述,請參閱 數據集管理概觀

從 Windows 7 開始,當邏輯區塊尋址 (LBA) 數據集範圍變更為一組指定的檔案時,NTFS 檔系統會通知儲存堆疊。 檔系統會傳送包含 DEVICE_DSM_INPUT 結構的系統緩衝區,以傳送記憶體堆疊 IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES 要求,以發出此通知。 針對通知作業,文件系統會設定DEVICE_DSM_INPUT結構的成員,如下所示:

  • Action 成員會設定為 DeviceDsmAction_Notification
  • ParameterBlockOffsetParameterBlockLength 成員指定通知作業的參數區塊位置和大小。 參數區塊會格式化為DEVICE_DSM_NOTIFICATION_PARAMETERS結構。
  • 如果 旗標 成員設定為零,DataSetRangesOffsetDataSetRangesLength 成員指定 IOCTL 承載內的數據集範圍區塊。
  • 如果 旗標 成員設定為 DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE,DataSetRangesOffsetDataSetRangesLength 成員設定為零,且通知動作包含指定檔案的整個數據集範圍。

要求

要求 價值
最低支援的用戶端 Windows 7
支援的最低伺服器 Windows Server 2008 R2
標頭 ntddstor.h (include Ntddstor.h)

另請參閱

數據集管理概觀

DEVICE_DSM_ACTION 描述

DEVICE_DSM_INPUT

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES