EngWritePrinter 函数 (winddi.h)

EngWritePrinter 函数允许打印机图形 DLL 将数据流发送到打印机硬件。

语法

ENGAPI BOOL EngWritePrinter(
  [in]  HANDLE  hPrinter,
  [in]  LPVOID  pBuf,
  [in]  DWORD   cbBuf,
  [out] LPDWORD pcWritten
);

参数

[in] hPrinter

打印机的调用方提供的句柄。 这应该是作为 DrvEnablePDEV 函数的 hDriver 参数值接收的句柄。

[in] pBuf

调用方提供的指针指向包含要发送到打印机的字节流的缓冲区。

[in] cbBuf

指定 pBuf 指向的缓冲区中包含的调用方提供的字节数。

[out] pcWritten

调用方提供的指针指向接收实际写入打印机的字节数的 DWORD 位置。

返回值

如果操作成功,函数将返回 TRUE;否则返回 FALSE

注解

打印机图形 DLL 调用 EngWritePrinter 以将数据流 (控制序列或图像数据) 发送到打印后台处理程序,打印后台处理程序又通过调用相应的 打印监视器将数据发送到打印机硬件。 该函数在后台处理程序接收数据后返回。

pBuf 指向的缓冲区不能在用户内存中;也就是说,pBuf 不能指向由 EngCreateBitmap 分配的内存,并设置了BMF_USERMEM标志或由 EngAllocUserMem 分配。

有关调用 EngWritePrinter 的其他信息,请参阅 呈现打印作业

要求

要求
最低受支持的客户端 适用于 Windows 2000 及更高版本的 Windows 操作系统。
目标平台 通用
标头 winddi.h (包括 Winddi.h)
Library Win32k.lib
DLL Win32k.sys

另请参阅

DrvEnablePDEV

EngAllocUserMem

EngCreateBitmap