FSCTL_WRITE_USN_CLOSE_RECORD IOCTL (winioctl.h)
Создает запись в потоке журнала изменений номера обновления (USN) входного файла. Эта запись будет иметь флаг USN_REASON_CLOSE.
Чтобы выполнить эту операцию, вызовите функцию DeviceIoControl со следующими параметрами.
C++ |
---|
BOOL WINAPI DeviceIoControl( (HANDLE) hDevice, // handle to volume FSCTL_WRITE_USN_CLOSE_RECORD, // dwIoControlCodeNULL, // lpInBuffer0, // nInBufferSize(LPVOID) lpOutBuffer, // output buffer (DWORD) nOutBufferSize, // size of output buffer (LPDWORD) lpBytesReturned, // number of bytes returned (LPOVERLAPPED) lpOverlapped ); // OVERLAPPED structure |
Замечания
Сведения о последствиях перекрывающихся операций ввода-вывода в этой операции см. в разделе "Примечания" для DeviceIoControl.
Вы можете использовать FSCTL_WRITE_USN_CLOSE_RECORD для принудительной принудительной записи закрытия в журнал изменений для дескриптора ввода. Закрытая запись также будет содержать все текущие причины USN для этого файла. Выходной буфер вернет значение USN, связанное с этой операцией.
Дополнительные сведения см. в разделе Создание, изменение и удаление журнала изменений.
Чтобы получить дескриптор тома, вызовите CreateFile с параметром lpFileName в строке в следующей форме:
\\.\X:
В приведенной выше строке X — это буква, определяющая диск, на котором отображается том. Том должен быть NTFS 3.0 или более поздней версии. Чтобы получить версию тома NTFS, откройте командную строку с правами доступа администратора и выполните следующую команду:
fsutil fsinfo ntfsinfo X:
где X — буква диска тома.
В Windows 8 и Windows Server 2012 этот код поддерживается следующими технологиями.
Технологии | Поддержанный |
---|---|
Протокол SMB 3.0 | Нет |
Отработка отказа SMB 3.0 (TFO) | Нет |
SMB 3.0 с масштабируемыми общими папками (SO) | Нет |
Файловая система общего тома кластера (CSVFS) | Да |
операции с транзакцией
Если FSCTL_WRITE_USN_CLOSE_RECORD вызывается с дескриптором, заблокированным транзакцией, он всегда завершается ошибкой.Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
заголовка | winioctl.h (включая Windows.h) |