структура 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). Чтобы задать любое из этих значений, в поле VolumeHandle должен быть указан дескриптор DASD тома. Может быть сочетанием следующих значений:
Flag | Значение |
---|---|
USN_SOURCE_DATA_MANAGEMENT | Служба не изменяет внешнее представление какой-либо части файла. Типичный случай — это перемещение данных во внешнее хранилище и из нее. |
USN_SOURCE_AUXILIARY_DATA | Служба не изменяет внешнее представление файла в отношении приложения, создавшего этот файл. Можно использовать для добавления частных потоков данных в файл. |
USN_SOURCE_REPLICATION_MANAGEMENT | Служба изменяет файл в соответствии с содержимым того же файла, который существует в другом элементе набора реплика. |
USN_SOURCE_CLIENT_REPLICATION_MANAGEMENT | Репликация выполняется в клиентских системах из облака или серверов. Для задания этого значения не требуется дескриптор тома |
VolumeHandle
Дескриптор тома для этой операции.
HandleInfo
Содержит флаги для идентификации запроса. Это поле может иметь одно из следующих значений:
Flag | Значение |
---|---|
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 |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по