Condividi tramite


Funzione NtUnlockFile (ntifs.h)

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

Sintassi

__kernel_entry NTSYSCALLAPI NTSTATUS NtUnlockFile(
  [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 dei 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 NtUnlockFile 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.

Commenti

La routine NtUnlockFile 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 NtUnlockFile . Non è possibile sbloccare due intervalli adiacenti precedentemente bloccati con una singola chiamata a NtUnlockFile. Non è inoltre possibile sbloccare parte di un intervallo bloccato in precedenza con una singola chiamata alla routine NtUnlockFile .

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

Nota

Se la chiamata alla funzione NtUnlockFile si verifica in modalità kernel, è necessario usare il nome "ZwUnlockFile" anziché "NtUnlockFile".

Per le chiamate da driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Servizi di sistema nativi di Windows 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 .For more information about the Nt Xxx and Zw versions of the Native System Services Routines.

Requisiti

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, PowerIrpDDis

Vedi anche

Uso delle versioni Nt e Zw delle routine native di Servizi di sistema

NtLockFile