WRITE_REGISTER_BUFFER_UCHAR-Funktion (wdm.h)

Die WRITE_REGISTER_BUFFER_UCHAR Routine dereferenziert den angegebenen Zeiger, fügt eine Speicherbarriere ein und schreibt einen Satz von Bytes aus einem Puffer in die angegebene Adresse.

Syntax

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

Parameter

[in] Register

Zeiger auf das Register, das ein zugeordneter Bereich im Arbeitsspeicher sein muss.

[in] Buffer

Zeiger auf einen Puffer, aus dem ein Array von UCHAR-Werten geschrieben werden soll.

[in] Count

Gibt die Anzahl der Bytes an, die in das Register geschrieben werden sollen.

Rückgabewert

Keine

Bemerkungen

Diese Routine fügt eine Speicherbarriere in Ihren Code ein. Diese Barriere garantiert, dass jeder Vorgang, der vor dem Aufruf dieser Routine im Quellcode angezeigt wird, vor jedem Vorgang abgeschlossen wird, der nach dem Aufruf angezeigt wird.

Weitere Informationen zu Speicherbarrieren finden Sie unter KeMemoryBarrier.

Die Größe des Puffers muss groß genug sein, um mindestens die angegebene Anzahl von Bytes zu enthalten.

Aufrufer von WRITE_REGISTER_BUFFER_UCHAR können in jedem IRQL ausgeführt werden, vorausgesetzt, der Puffer ist resident und das Register ist resident, zugeordneter Gerätespeicher.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 2000.
Zielplattform Universell
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Miniport.h, Wudfwdm.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Beliebige Ebene (siehe Abschnitt "Hinweise")