Condividi tramite


Funzione FsRtlGetNextFileLock (ntifs.h)

La routine FsRtlGetNextFileLock viene utilizzata per enumerare i blocchi dell'intervallo di byte attualmente esistenti per un file specificato.

Sintassi

PFILE_LOCK_INFO FsRtlGetNextFileLock(
  [in] PFILE_LOCK FileLock,
  [in] BOOLEAN    Restart
);

Parametri

[in] FileLock

Puntatore alla struttura FILE_LOCK per il file. Questa struttura deve essere stata inizializzata da una chiamata precedente a FsRtlAllocateFileLock o FsRtlInitializeFileLock.

[in] Restart

Impostare su TRUE se l'enumerazione deve iniziare all'inizio dell'elenco di blocchi dell'intervallo di byte. Impostare su FALSE se si riprende l'enumerazione da una chiamata precedente.

Per enumerare tutti i blocchi di intervallo di byte per un determinato file, usare FsRtlGetNextFileLock come indicato di seguito:

for (p = FsRtlGetNextFileLock( FileLock, TRUE );
     p != NULL;
     p = FsRtlGetNextFileLock( FileLock, FALSE )) {
        // Process the lock information pointed to by p
}

Valore restituito

FsRtlGetNextFileLock restituisce un puntatore alla struttura FILE_LOCK_INFO per il blocco dell'intervallo di byte successivo, se presente. Se non sono presenti altri blocchi di intervallo di byte per questo file, FsRtlGetNextFileLock restituisce NULL.

Osservazioni

I blocchi dell'intervallo di byte non vengono enumerati in un ordine specifico.

Si noti che poiché lo stato di enumerazione corrente viene archiviato nella struttura FILE_LOCK, i chiamanti devono prestare attenzione a sincronizzare le chiamate a FsRtlGetNextFileLocke per evitare di modificare le strutture restituite. Se più thread tentano di usare FsRtlGetNextFileLock contemporaneamente, i risultati saranno imprevedibili e l'enumerazione non verrà completata in modo affidabile.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione ntifs.h (include Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL <= APC_LEVEL
regole di conformità DDI HwStorPortProhibitedDDIs(storport)

Vedere anche

FsRtlAreThereCurrentFileLocks

FsRtlCheckLockForReadAccess

FsRtlCheckLockForWriteAccess

FsRtlFastCheckLockForRead

FsRtlFastCheckLockForWrite

FsRtlFastLock

FsRtlFastUnlockAll

FsRtlFastUnlockAllByKey

FsRtlFastUnlockSingle

FsRtlInitializeFileLock

FsRtlProcessFileLock

FsRtlUninitializeFileLock