SpoolerCopyFileEvent 函数 (winsplp.h)

当客户端连接到打印服务器时,点和打印 DLL 的 SpoolerCopyFileEvent 函数接收与将打印队列关联的文件复制到打印客户端相关的事件通知。

语法

BOOL SpoolerCopyFileEvent(
  [in] LPWSTR pszPrinterName,
  [in] LPWSTR pszKey,
  [in] DWORD  dwCopyFileEvent
);

参数

[in] pszPrinterName

调用方提供的指向表示打印机名称的字符串的指针。

[in] pszKey

调用方提供的指向字符串的指针,该字符串表示打印机 CopyFiles 注册表项下的子项。 此子项标识点和打印 DLL 所属的组件。

[in] dwCopyFileEvent

调用方提供的标识所报告事件的标志。 下表中包含有效的标志值。

收到时 接收位置
COPYFILE_EVENT_ADD_PRINTER_CONNECTION 客户端应用程序调用 AddPrinterConnection后。 SpoolerCopyFileEvent的客户端副本。 调用上下文是客户端应用程序。
COPYFILE_EVENT_DELETE_PRINTER 调用 DeletePrinter 后。 SpoolerCopyFileEvent的客户端副本。 调用上下文是客户端的后台处理程序。
COPYFILE_EVENT_DELETE_PRINTER_CONNECTION 客户端应用程序调用 DeletePrinterConnection后。 SpoolerCopyFileEvent的客户端副本。 调用上下文是客户端应用程序。
COPYFILE_EVENT_FILES_CHANGED 在客户端下载打印机 CopyFiles 注册表项的 pszKey 子项下指定的文件后。 SpoolerCopyFileEvent的客户端副本。 调用上下文是客户端的后台处理程序。
COPYFILE_EVENT_SET_PRINTER_DATAEX 调用 SetPrinterDataEx 后,已在服务器上处理。 SpoolerCopyFileEvent的服务器副本。 调用上下文是客户端应用程序,通过模拟。

返回值

如果函数遇到错误,该函数应返回 FALSE。 否则,它应返回 true

言论

所有 点和打印 DLL 都必须导出由打印后台处理程序调用的 SpoolerCopyFileEvent 函数。 其用途是允许当客户端上的应用程序连接到服务器时,向打印服务器下载与打印队列关联的文件相关的事件通知点和打印 DLL。 有关创建点和打印连接所涉及的步骤的完整说明,请参阅 支持点和打印

点和打印 DLL 在服务器和客户端上执行。 SpoolerCopyFileEvent 函数可以通过读取 dwCopyFileEvent的内容来确定其执行位置,该内容提供指示事件的标志。 该函数应处理事件并返回。 如果不需要处理,函数应只返回 true

如果 dwCopyFileEvent 是COPYFILE_EVENT_ADD_PRINTER_CONNECTION或COPYFILE_EVENT_ADD_PRINTER_CONNECTION,则由 pszPrinterName 提供的字符串 包括服务器名称。

要求

要求 价值
目标平台 普遍
标头 winsplp.h (包括 Winsplp.h)
Mscms.lib
DLL Mscms.dll

另请参阅

GenerateCopyFilePaths