структура MARK_HANDLE_INFO (ntifs.h)
Структура MARK_HANDLE_INFO передается в качестве входного буфера во время запроса кода FSCTL_MARK_HANDLE элемента управления.
Синтаксис
typedef struct _MARK_HANDLE_INFO {
union {
ULONG UsnSourceInfo;
ULONG CopyNumber;
} DUMMYUNIONNAME;
ULONG UsnSourceInfo;
HANDLE VolumeHandle;
ULONG HandleInfo;
} MARK_HANDLE_INFO, *PMARK_HANDLE_INFO;
Члены
DUMMYUNIONNAME
DUMMYUNIONNAME.UsnSourceInfo
См. UsnSourceInfo ниже.
DUMMYUNIONNAME.CopyNumber
Определяет, какая копия файла для чтения, при чтении из файла, который находится на избыточном носителе.
UsnSourceInfo
Необязательные флаги сведений о исходном номере обновления (USN). Чтобы задать любое из этих значений, необходимо указать дескриптор DASD тома в поле VolumeHandle. Может быть сочетанием следующих значений:
Флаг | Значение |
---|---|
USN_SOURCE_DATA_MANAGEMENT | Служба не изменяет внешнее представление любой части файла. Типичным случаем является перемещение данных hSM в внешнее хранилище и из нее. |
USN_SOURCE_AUXILIARY_DATA | Служба не изменяет внешнее представление файла относительно приложения, создавшего этот файл. Можно использовать для добавления потоков частных данных в файл. |
USN_SOURCE_REPLICATION_MANAGEMENT | Служба изменяет файл в соответствии с содержимым того же файла, который существует в другом элементе набора реплик. |
USN_SOURCE_CLIENT_REPLICATION_MANAGEMENT | Репликация выполняется в клиентских системах из облака или серверов. Для задания этого значения не требуется дескриптор тома. |
VolumeHandle
Дескриптор тома для этой операции.
HandleInfo
Содержит флаги для идентификации запроса. Это поле может быть одним из следующих значений:
Флаг | Значение |
---|---|
MARK_HANDLE_PROTECT_CLUSTERS | Не разрешайте дефрагментацию (FSCTL_MOVE_FILE), пока дескриптор не будет закрыт. |
MARK_HANDLE_TXF_SYSTEM_LOG | Этот поток используется в качестве журнала Txf для диспетчера ресурсов в томе. Необходимо вызывать в ядре с помощью IRP_MN_KERNEL_CALL. Доступно начиная с Windows Vista. |
MARK_HANDLE_NOT_TXF_SYSTEM_LOG | Этот компонент больше не использует этот объект в качестве файла журнала TxF. Доступно начиная с Windows Vista. |
MARK_HANDLE_REALTIME | Поддерживается только файловой системой UDFS. Помечает устройство для потоковой передачи видео в режиме реального времени. Доступно начиная с Windows 7. |
MARK_HANDLE_NOT_REALTIME | Поддерживается только файловой системой UDFS. Помечает устройство, чтобы больше не выполнять потоковую передачу видео в режиме реального времени. Доступно начиная с Windows 7. |
MARK_HANDLE_CLOUD_SYNC | Устаревшие; Не используйте этот флаг. |
MARK_HANDLE_READ_COPY | Данные должны быть считываются из указанной копии данных. Поддерживается только для избыточных томов дисковых пространств. Доступно начиная с Windows 8. |
MARK_HANDLE_NOT_READ_COPY | Данные больше не будут считываться из определенной копии. Поддерживается только для избыточных томов дисковых пространств. Доступно начиная с Windows 8. |
MARK_HANDLE_FILTER_METADATA | Зарезервировано только для внутреннего использования Майкрософт. |
MARK_HANDLE_RETURN_PURGE_FAILURE | При перемечении памяти, сопоставленной с кэшируемым операцией ввода-вывода с не кэшируемым операцией ввода-вывода и не кэшированного ввода-вывода, система пытается очистить сопоставления памяти для диапазона не кэшированных операций ввода-вывода. Если эти очистки завершаются сбоем системы обычно не возвращает ошибку вызывающей стороны, что может привести к поврежденном состоянию. Этот флаг сообщает системе возвращать сбои очистки для заданного дескриптора, чтобы приложение могли лучше справиться с этой ситуацией. Доступно начиная с Windows 8.1. |
MARK_HANDLE_DISABLE_FILE_METADATA_OPTIMIZATION | Отключает функцию сжатия сегмента записи файлов (FRS) в указанном файле. Доступно начиная с Windows 10 версии 1507. |
MARK_HANDLE_ENABLE_USN_SOURCE_ON_PAGING_IO | Указывает NTFS задать заданное значение UsnSourceInfo для записи по страницам в журнале USN. Традиционно это не было сделано при разбиении на страницах, так как вы не знали, какой поток сделал указанные изменения. Это переопределение. Это работает только в том случае, если fileObject, на который диспетчер памяти держится, чтобы оно связано с этим состоянием. Доступно начиная с Windows 10 версии 1507. |
MARK_HANDLE_SKIP_COHERENCY_SYNC_DISALLOW_WRITES | Сообщает системе, что записи не разрешены в этом файле. Если кто-то пытается открыть файл для доступа на запись, операция завершается ошибкой STATUS_ACCESS_DENIED. Если запись отображается сбоем операции с STATUS_MARKED_TO_DISALLOW_WRITES. Доступно начиная с Windows 10 версии 1507. |
MARK_HANDLE_ENABLE_CPU_CACHE | Зарезервировано только для внутреннего использования Майкрософт. |
MARK_HANDLE_SUPPRESS_VOLUME_OPEN_FLUSH | Как правило, при первой операции чтения и записи в дескрипторе тома (DASD открыт), файловая система очищает том. Это может иметь последствия для производительности в определенных сценариях. Если этот флаг установлен в дескрипторе тома, он будет подавлять этот сброс при первом вводе в секунду. Доступно начиная с Windows 11. |
Замечания
MARK_HANDLE_INFO содержит сведения, используемые для пометки указанного файла или каталога, а его номер последовательности обновления (USN) изменяет запись журнала с данными об изменениях.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP |
заголовка | ntifs.h |