IsValidDevmodeW 函数 (winspool.h)

打印后台处理程序的 IsValidDevmode 函数验证 DEVMODE 结构的内容是否有效。

语法

BOOL IsValidDevmodeW(
  [in, optional] PDEVMODEW pDevmode,
                 size_t    DevmodeSize
);

参数

[in, optional] pDevmode

指向要验证的 DEVMODE 结构的指针。

DevmodeSize

pDevmode 指向的缓冲区的大小(以字节为单位)。

返回值

如果 DEVMODE 结构有效,或者函数成功修复结构使其有效,则函数返回 TRUE。 否则,函数返回 FALSE。 调用方可以通过调用 GetLastError 获取错误代码。

注解

在使用从可能不可靠的源获取的 DEVMODE 结构之前,打印机驱动程序可以调用此函数来验证结构是否有效。 此函数仅验证 DEVMODE 结构的公共成员。 它不检查结构的私有成员。

DEVMODE 结构的 dmSize 成员指定 DEVMODE 结构的大小,不包括追加到结构的任何专用驱动程序指定数据。 dmDriverExtra 成员指定追加到结构的私有数据的大小(如果有)。 仅当调用方能够保证输入缓冲区大小至少为该大时,才应将 DevModeSize 设置为 dmSize+dmDriverExtra

此函数不需要调用方获取提升的权限。

要求

要求
目标平台 桌面
标头 winspool.h (包括 Winspool.h)
Library Winspool.lib
DLL Winspool.drv

另请参阅

DEVMODE