READ_REGISTER_BUFFER_UCHAR 函数 (wdm.h)

READ_REGISTER_BUFFER_UCHAR例程取消引用提供的指针,插入内存屏障,并将一组字节从指定的寄存器地址读入缓冲区。

语法

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

参数

[in] Register

指向寄存器的指针,该寄存器必须是内存空间中的已映射范围。

[out] Buffer

指向在其中读取 UCHAR 值数组的缓冲区的指针。

[in] Count

指定要读入缓冲区的字节数。

返回值

备注

此例程在代码中插入内存屏障。 此屏障保证在调用此例程之前源代码中显示的每个操作都将在调用后出现的任何操作之前完成。

有关内存屏障的详细信息,请参阅 KeMemoryBarrier

缓冲区的大小必须足够大,至少包含指定的字节数。

READ_REGISTER_BUFFER_UCHAR的调用方可以在任何 IRQL 上运行,前提是缓冲区驻留的映射设备内存。

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Miniport.h、Wudfwdm.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL 任何级别 (请参阅备注部分)