Partager via


fonction WRITE_REGISTER_BUFFER_UCHAR (wdm.h)

Le WRITE_REGISTER_BUFFER_UCHAR routine déréférence le pointeur fourni, insère une barrière mémoire et écrit un ensemble d’octets d’une mémoire tampon à l’adresse spécifiée.

Syntaxe

void WRITE_REGISTER_BUFFER_UCHAR(
  [in] volatile UCHAR *Register,
  [in] PUCHAR         Buffer,
  [in] ULONG          Count
);

Paramètres

[in] Register

Pointeur vers le registre, qui doit être une plage mappée dans l’espace mémoire.

[in] Buffer

Pointeur vers une mémoire tampon à partir de laquelle un tableau de valeurs UCHAR doit être écrit.

[in] Count

Spécifie le nombre d’octets à écrire dans le registre.

Valeur de retour

None

Remarques

Cette routine insère une barrière mémoire dans votre code. Cette barrière garantit que chaque opération qui apparaît dans le code source avant l’appel à cette routine se termine avant toute opération qui apparaît après l’appel.

Pour plus d’informations sur les barrières mémoire, consultez KeMemoryBarrier.

La taille de la mémoire tampon doit être suffisamment grande pour contenir au moins le nombre d’octets spécifié.

Les appelants de WRITE_REGISTER_BUFFER_UCHAR peuvent être en cours d’exécution à n’importe quel IRQL, en supposant que la mémoire tampon est résidente et que le registre est résident, la mémoire de l’appareil mappée.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows 2000.
Plateforme cible Universal
En-tête wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h, Miniport.h, Wudfwdm.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL N’importe quel niveau (voir la section Remarques)