Поделиться через


Управляющие коды для управления файлами

В управлении файлами используются следующие коды элементов управления.

В этом разделе

Код элемента управления Описание
FSCTL_ALLOW_EXTENDED_DASD_IO
Сигнализирует драйверу файловой системы не выполнять никаких проверок границ ввода-вывода при вызовах чтения или записи секций.
FSCTL_CREATE_OR_GET_OBJECT_ID
Извлекает идентификатор объекта для указанного файла или каталога. Если идентификатор объекта не существует, с помощью FSCTL_CREATE_OR_GET_OBJECT_ID создает его.
FSCTL_CSV_CONTROL
Извлекает результаты операции элемента управления CSV.
FSCTL_DELETE_OBJECT_ID
Удаляет идентификатор объекта из указанного файла или каталога.
FSCTL_DUPLICATE_EXTENTS_TO_FILE
Указывает файловой системе копировать диапазон байтов файлов от имени приложения.
FSCTL_FILE_LEVEL_TRIM
Указывает системе хранения, какие диапазоны в файле не требуется хранить.
FSCTL_FILESYSTEM_GET_STATISTICS
Извлекает сведения из различных счетчиков производительности файловой системы.
FSCTL_FILESYSTEM_GET_STATISTICS_EX
Извлекает сведения из различных счетчиков производительности файловой системы.
Поддержка этого кода элемента управления началась с Windows 10.
FSCTL_FIND_FILES_BY_SID
Выполняет поиск в каталоге файла, владелец создателя которого соответствует указанному идентификатору безопасности.
FSCTL_GET_COMPRESSION
Извлекает текущее состояние сжатия файла или каталога на томе, файловая система которого поддерживает сжатие потока.
FSCTL_GET_NTFS_FILE_RECORD
Извлекает первую используемую запись файла, которая имеет меньшее или равное порядковое значение запрошенного ссылочного номера файла.
FSCTL_GET_OBJECT_ID
Извлекает идентификатор объекта для указанного файла или каталога.
FSCTL_GET_REPAIR
Извлекает сведения о механизме самовосстановления файловой системы NTFS.
FSCTL_INITIATE_REPAIR
Активирует файловую систему NTFS для запуска цикла самовосстановления для одного файла.
FSCTL_MAKE_MEDIA_COMPATIBLE
Закрывает открытый сеанс UDF на носителе с поддержкой однократной записи, чтобы сделать ПЗУ носителя совместимым.
FSCTL_OPBATCH_ACK_CLOSE_PENDING
Уведомляет сервер о том, что клиентское приложение готово к закрытию файла.
FSCTL_OPLOCK_BREAK_ACK_NO_2
Реагирует на уведомление о том, что оппортунистическая блокировка файла вот-вот будет нарушена. Используйте эту операцию, чтобы разблокировать все оппортунистические блокировки файла, но сохранить файл открытым.
FSCTL_OPLOCK_BREAK_ACKNOWLEDGE
Реагирует на уведомление о том, что будет нарушена монопольная оппортунистическая блокировка файла. Используйте эту операцию, чтобы указать, что файл должен получить оппортунистическую блокировку уровня 2.
FSCTL_OPLOCK_BREAK_NOTIFY
Позволяет вызывающей приложению ожидать завершения оппортунистического разрыва блокировки.
FSCTL_QUERY_ALLOCATED_RANGES
Сканирует файл или альтернативный поток в поисках диапазонов, которые могут содержать ненулевые данные.
FSCTL_QUERY_ON_DISK_VOLUME_INFO
Запрашивает сведения о томе, относящееся к определяемой пользователем функции.
FSCTL_QUERY_SPARING_INFO
Извлекает свойства управления дефектами тома. Используется для файловой системы UDF.
FSCTL_RECALL_FILE
Возвращает файл с носителя, управляемого удаленным хранилищем, который является программным обеспечением для управления иерархическим хранилищем.
FSCTL_REQUEST_BATCH_OPLOCK
Запрашивает пакетную оппортунистическую блокировку файла.
FSCTL_REQUEST_FILTER_OPLOCK
Запрашивает оппортунистическую блокировку фильтра для файла.
FSCTL_REQUEST_OPLOCK
Запрашивает оппортунистическую блокировку (oplock) для файла и подтверждает, что произошел разрыв блокировки.
FSCTL_REQUEST_OPLOCK_LEVEL_1
Запрашивает оппортунистическую блокировку файла уровня 1.
FSCTL_REQUEST_OPLOCK_LEVEL_2
Запрашивает оппортунистическую блокировку файла уровня 2.
FSCTL_SET_COMPRESSION
Задает состояние сжатия файла или каталога на томе, файловая система которого поддерживает сжатие по файлам и каталогам.
FSCTL_SET_DEFECT_MANAGEMENT
Задает состояние управления дефектами программного обеспечения для указанного файла. Используется для файловой системы UDF.
FSCTL_SET_OBJECT_ID
Задает идентификатор объекта для указанного файла или каталога.
FSCTL_SET_OBJECT_ID_EXTENDED
Изменяет пользовательские данные, связанные с идентификатором объекта для указанного файла или каталога.
FSCTL_SET_REPAIR
Задает режим возможности самовосстановления файловой системы NTFS.
FSCTL_SET_SPARSE
Помечает указанный файл как разреженный или не разреженный. В разреженном файле для больших диапазонов нулей может не потребоваться выделение диска.
FSCTL_SET_ZERO_DATA
Заполняет указанный диапазон файла нулями (0).
FSCTL_SET_ZERO_ON_DEALLOCATION
Указывает, что при освобождении дескриптора файловой системы NTFS кластеры должны заполняться нулями.
FSCTL_WAIT_FOR_REPAIR
Возвращает по завершении указанного восстановления.

Следующие коды элементов управления используются для сжатия и распаковки файлов.

FSCTL_GET_COMPRESSION
FSCTL_SET_COMPRESSION

Следующие коды элементов управления используются с идентификаторами объектов.

FSCTL_CREATE_OR_GET_OBJECT_ID
FSCTL_DELETE_OBJECT_ID
FSCTL_GET_OBJECT_ID
FSCTL_SET_OBJECT_ID
FSCTL_SET_OBJECT_ID_EXTENDED

Следующие коды элементов управления используются с оппортунистическими блокировками.

FSCTL_OPBATCH_ACK_CLOSE_PENDING
FSCTL_OPLOCK_BREAK_ACK_NO_2
FSCTL_OPLOCK_BREAK_ACKNOWLEDGE
FSCTL_OPLOCK_BREAK_NOTIFY
FSCTL_REQUEST_BATCH_OPLOCK
FSCTL_REQUEST_FILTER_OPLOCK
FSCTL_REQUEST_OPLOCK
FSCTL_REQUEST_OPLOCK_LEVEL_1
FSCTL_REQUEST_OPLOCK_LEVEL_2

Следующие коды элементов управления используются с разреженными файлами.

FSCTL_QUERY_ALLOCATED_RANGES
FSCTL_SET_SPARSE
FSCTL_SET_ZERO_DATA

Следующие коды элементов управления используются с механизмом самовосстановления NTFS.

FSCTL_GET_REPAIR
FSCTL_INITIATE_REPAIR
FSCTL_SET_REPAIR
FSCTL_WAIT_FOR_REPAIR

Следующие коды элементов управления используются с определяемой пользователем функцией.

FSCTL_MAKE_MEDIA_COMPATIBLE
FSCTL_QUERY_ON_DISK_VOLUME_INFO
FSCTL_QUERY_SPARING_INFO
FSCTL_SET_DEFECT_MANAGEMENT

Коды управления каталогами

Управляющие коды для управления томами