Condividi tramite


Funzione ZwUnlockFile (ntifs.h)

La routine ZwUnlockFile sblocca un blocco di intervallo di byte in un file.

Sintassi

NTSYSAPI NTSTATUS ZwUnlockFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock,
  [in]  PLARGE_INTEGER   ByteOffset,
  [in]  PLARGE_INTEGER   Length,
  [in]  ULONG            Key
);

Parametri

[in] FileHandle

Handle per l'oggetto file che rappresenta il file il cui intervallo di byte deve essere sbloccato.

[out] IoStatusBlock

Puntatore a una struttura IO_STATUS_BLOCK che contiene lo stato finale.

[in] ByteOffset

Puntatore a una variabile che specifica l'offset di byte iniziale per l'intervallo di byte da sbloccare.

[in] Length

Puntatore a una variabile che specifica la lunghezza, in byte, dell'intervallo di byte da sbloccare.

[in] Key

Valore assegnato dal chiamante utilizzato per descrivere i gruppi di blocchi correlati. Questo valore deve essere impostato su zero.

Valore restituito

La routine ZwUnlockFile restituisce STATUS_SUCCESS in caso di esito positivo o di un valore NTSTATUS appropriato. I possibili valori NTSTATUS includono:

Codice restituito Descrizione
STATUS_RANGE_NOT_LOCKED L'intervallo di byte specificato non è bloccato.

Osservazioni

La routine ZwUnlockFile accetta un intervallo di byte come specificato dagli argomenti ByteOffset e Length. Questo intervallo deve essere identico a un intervallo di byte nel file bloccato in precedenza con una singola chiamata alla routine ZwUnlockFile. Non è possibile sbloccare due intervalli adiacenti precedentemente bloccati con una singola chiamata a ZwUnlockFile. Non è inoltre possibile sbloccare parte di un intervallo precedentemente bloccato con una singola chiamata alla routine ZwUnlockFile.

I chiamanti di ZwUnlockFile devono essere in esecuzione in IRQL = PASSIVE_LEVEL e con API kernel speciali abilitate**.

Nota

Se la chiamata alla funzione ZwUnlockFile viene eseguita in modalità utente, è necessario usare il nome "NtUnlockFile" anziché "ZwUnlockFile".

Per le chiamate da driver in modalità kernel, le NtXxx e ZwXxx versioni di una routine di Windows Native System Services possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Using Nt and Zw Versions of the Native System Services Routines.

Fabbisogno

Requisito Valore
client minimo supportato Windows 7
piattaforma di destinazione Universale
intestazione ntifs.h (include Ntifs.h, FltKernel.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL PASSIVE_LEVEL (vedere la sezione Osservazioni)
regole di conformità DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Vedere anche

ZwLockFile