Fonction ZwUnlockFile (ntifs.h)
La routine ZwUnlockFile déverrouille un verrou de plage d’octets dans un fichier.
Syntaxe
NTSYSAPI NTSTATUS ZwUnlockFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[in] PLARGE_INTEGER ByteOffset,
[in] PLARGE_INTEGER Length,
[in] ULONG Key
);
Paramètres
[in] FileHandle
Handle pour l’objet de fichier qui représente le fichier dont la plage d’octets doit être déverrouillée.
[out] IoStatusBlock
Pointeur vers une structure IO_STATUS_BLOCK qui contient le status final.
[in] ByteOffset
Pointeur vers une variable qui spécifie le décalage d’octet de début pour la plage d’octets à déverrouiller.
[in] Length
Pointeur vers une variable qui spécifie la longueur, en octets, de la plage d’octets à déverrouiller.
[in] Key
Valeur affectée par l’appelant utilisée pour décrire les groupes de verrous associés. Cette valeur doit être définie sur zéro.
Valeur retournée
La routine ZwUnlockFile retourne STATUS_SUCCESS sur la réussite ou une valeur NTSTATUS appropriée. Les valeurs NTSTATUS possibles sont les suivantes :
Code de retour | Description |
---|---|
STATUS_RANGE_NOT_LOCKED | La plage d’octets spécifiée n’est pas verrouillée. |
Remarques
La routine ZwUnlockFile prend une plage d’octets spécifiée par les arguments ByteOffset et Length . Cette plage doit être identique à une plage d’octets dans le fichier qui était précédemment verrouillé avec un seul appel à la routine ZwUnlockFile . Il n’est pas possible de déverrouiller deux plages adjacentes précédemment verrouillées avec un seul appel à ZwUnlockFile. Il n’est pas non plus possible de déverrouiller une partie d’une plage qui était précédemment verrouillée avec un seul appel à la routine ZwUnlockFile .
Les appelants de ZwUnlockFile doivent être en cours d’exécution sur IRQL = PASSIVE_LEVEL et avec des API de noyau spéciales activées**.
Notes
Si l’appel à la fonction ZwUnlockFile se produit en mode utilisateur, vous devez utiliser le nom « NtUnlockFile » au lieu de « ZwUnlockFile ».
Pour les appels à partir de pilotes en mode noyau, les versions NtXxx et ZwXxx d’une routine Windows Native System Services peuvent se comporter différemment dans la façon dont elles gèrent et interprètent les paramètres d’entrée. Pour plus d’informations sur la relation entre les versions NtXxx et ZwXxx d’une routine, consultez Utilisation des versions Nt et Zw des routines des services système natifs.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 |
Plateforme cible | Universal |
En-tête | ntifs.h (inclure Ntifs.h, FltKernel.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (voir la section Remarques) |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport),PowerIrpDDis(wdm) |