Macro FsRtlFastLock (ntifs.h)
La macro FsRtlFastLock est utilisée par les systèmes de fichiers et les pilotes de filtre pour demander un verrou de plage d’octets pour un flux de fichiers.
Syntaxe
BOOLEAN
FsRtlFastLock( A1, /* FileLock */
A2, /* FileObject */
A3, /* FileOffset */
A4, /* Length */
A5, /* ProcessId */
A6, /* Key */
A7, /* FailImmediately */
A8, /* ExclusiveLock */
A9, /* Iosb */
A10, /* Context */
A11 /* AlreadySynchronized */ )
Paramètres
A1
[in] FileLock: pointeur vers la structure FILE_LOCK du fichier. Cette structure doit avoir été initialisée par un appel précédent à FsRtlAllocateFileLock ou FsRtlInitializeFileLock.
A2
[in] FileObject: pointeur vers le FILE_OBJECT du fichier ouvert. L’objet fichier doit avoir été créé avec GENERIC_READ ou GENERIC_WRITE l’accès au fichier (ou les deux).
A3
[in] FileOffset: pointeur vers une variable qui spécifie le décalage d’octets de départ dans le fichier de la plage à verrouiller.
A4
[in] Longueur: pointeur vers une variable qui spécifie la longueur en octets de la plage à verrouiller.
A5
[in] ProcessId: pointeur vers l’ID de processus EPROCESS pour le processus demandant le verrou de plage d’octets.
A6
[in] clé: clé à affecter au verrou de plage d’octets.
A7
[in] FailImmediately: valeur booléenne qui spécifie si la demande de verrouillage doit échouer si le verrou ne peut pas être accordé immédiatement. Si l’appelant peut être placé dans un état d’attente jusqu’à ce que la demande soit accordée, définissez FailImmediately sur FALSE. Si ce n’est pas le cas, définissez FailImmediately sur TRUE.
A8
[in] ExclusiveLock: défini sur TRUE si un verrou exclusif est demandé, FALSE si un verrou partagé est demandé.
A9
[out] iosb: pointeur vers une structure IO_STATUS_BLOCK allouée par l’appelant qui reçoit des informations d’état sur la demande de verrouillage.
A10
[in] Context: pointeur facultatif vers un contexte à utiliser lors de la libération du verrou de plage d’octets.
A11
[in] AlreadySynchronized: ce paramètre est obsolète, mais est conservé pour la compatibilité avec les pilotes hérités.
Valeur de retour
Aucun
Remarques
La macro FsRtlFastLock entraîne l’acquisition d’un verrou de plage d’octets sur une région du fichier spécifié.
FsRtlFastLock retourne TRUE pour indiquer que la structure de IO_STATUS_BLOCK pointée par Iosb reçu des informations d’état sur l’opération de verrouillage ; sinon, elle retourne FALSE.
Pour examiner le contenu de la structure vers laquelle Iosb pointe, utilisez la macro NT_STATUS.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | ntifs.h (include Ntifs.h) |
IRQL | <= APC_LEVEL |