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


FSCTL_ENUM_USN_DATA IOCTL (winioctl.h)

Перечисляет данные последовательного номера обновления (USN) между двумя указанными границами для получения master записей таблицы файлов (MFT).

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

C++
BOOL 
WINAPI 
DeviceIoControl( (HANDLE) hDevice,              // handle to volume
                 (DWORD) FSCTL_ENUM_USN_DATA,   // dwIoControlCode(LPVOID) lpInBuffer,           // input buffer
                 (DWORD) nInBufferSize,         // size of input buffer
                 (LPVOID) lpOutBuffer,          // output buffer
                 (DWORD) nOutBufferSize,        // size of output buffer
                 (LPDWORD) lpBytesReturned,     // number of bytes returned
                 (LPOVERLAPPED) lpOverlapped ); // OVERLAPPED structure);

Комментарии

Сведения о последствиях перекрывающихся операций ввода-вывода для этой операции см. в разделе Примечания статьи DeviceIoControl .

Чтобы перечислить файлы в томе, используйте операцию FSCTL_ENUM_USN_DATA один или несколько раз. При первом вызове задайте для начальной точки элемент StartFileReferenceNumberструктуры MFT_ENUM_DATA значение (DWORDLONG)0. Каждый вызов FSCTL_ENUM_USN_DATA получает начальную точку для последующего вызова в качестве первой записи в выходном буфере.

Чтобы определить последние изменения тома, используйте код элемента управления FSCTL_READ_USN_JOURNAL .

Чтобы получить дескриптор тома, вызовите CreateFile с параметром lpFileName , для которого задана строка в следующей форме:

\\.\X:

В предыдущей строке X — это буква, обозначающая диск, на котором отображается том. Том должен быть NTFS.

В Windows 8 и Windows Server 2012 этот код поддерживается следующими технологиями.

Технология Поддерживается
Протокол SMB 3.0 Нет
SMB 3.0 Transparent Failover (TFO) Нет
SMB 3.0 с масштабируемыми общими папками (SO) Нет
Файловая система общего тома кластера (CSVFS) Да

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть winioctl.h (включая Windows.h)

См. также раздел

CreateFile

DeviceIoControl

FSCTL_READ_USN_JOURNAL

GetOverlappedResult

MFT_ENUM_DATA

ПЕРЕКРЫВАЮЩИХСЯ

USN_RECORD

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