Fonction CcUnpinRepinnedBcb (ntifs.h)
La routine CcUnpinRepinnedBcb dissocie un bloc de contrôle de mémoire tampon réinpiné (BCB).
Syntaxe
void CcUnpinRepinnedBcb(
[in] PVOID Bcb,
[in] BOOLEAN WriteThrough,
[out] PIO_STATUS_BLOCK IoStatus
);
Paramètres
[in] Bcb
Pointeur vers le BCB repiné.
[in] WriteThrough
Définissez sur TRUE si le BCB doit être écrit.
[out] IoStatus
Pointeur vers une structure IO_STATUS_BLOCK. Si l’appel à CcUnpinRepinnedBcb réussit, IoStatus.Status est défini sur STATUS_SUCCESS. Sinon, il est défini sur un code d’erreur NTSTATUS approprié. IoStatus.Information est défini sur le nombre réel d’octets qui ont été correctement vidés sur le disque.
Valeur de retour
None
Remarques
Les systèmes de fichiers appellent CcUnpinRepinnedBcb pour écrire une mémoire tampon précédemment épinglée sur le disque.
Chaque appel à CcRepinBcb doit être mis en correspondance par un appel suivant à CcUnpinRepinnedBcb.
Étant donné que CcUnpinRepinnedBcb acquiert exclusivement la ressource BCB, l’appelant doit être extrêmement prudent pour éviter les blocages. Si possible, l’appelant ne doit posséder aucune ressource. Sinon, l’appelant doit garantir qu’il n’a rien d’autre épinglé dans le même fichier mis en cache. Normalement, CcUnpinRepinnedBcb est appelé lors de l’achèvement de la demande, une fois que toutes les autres ressources ont été libérées.
CcUnpinRepinnedBcb écrit de manière synchrone la mémoire tampon (pour les demandes d’écriture directe) et désépine le BCB réinscrit par l’appel précédent à CcRepinBcb.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ntifs.h (inclure Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |