勇芳软件工作室.汉化:  Printing > Print Spooler API > Print Spooler API Reference > Print Spooler API Functions >

IsValidDevmode (XP)

Previous pageReturn to chapter overviewNext page

描述

 

IsValidDevmode功能验证DEVMODE结构的内容是否有效。

 

C++ 语法

 

BOOL IsValidDevmode(

__in PDEVMODE pDevmode,

__in size_t DevmodeSize

);

 

PowerBASIC 语法

 

FUNCTION IsValidDevmodeA ( _

BYREF pDevmode AS DEVMODEA, _

BYVAL DevmodeSize AS DWORD _

) AS LONG

 

Unicode版本:

 

FUNCTION IsValidDevmodeW ( _

BYREF pDevmode AS DEVMODEW, _

BYVAL DevmodeSize AS DWORD _

) AS LONG

 

参数

 

pDevmode

 

[in]指向DEVMODE进行验证的指针。

 

DevmodeSize

 

[in]输入字节缓冲区的大小(以字节为单位)。

 

返回值

 

如果DEVMODE在结构上有效,则为TRUE。如果发现次要错误,该函数将修复它们并返回TRUE。

 

假如DEVMODE有一个或多个重大的结构性问题。例如,其dmsiz到成员未对齐或指定的缓冲区太小。另外,如果pDevmodeel-Latn为NULL,则为FALSE。

 

备注

 

没有检查DEVMODE的私人打印机驱动程序字段,只有公共字段。

 

呼叫者应该使用dmsiz到+ dmDriverExtraDevmodeSize,只有当他们能保证输入缓冲区大小至少那么大。由于DEVMODE通常是不受信任的数据,所以在dmsiz到dmDriverExtra偏移量的输入缓冲区中的值也是不可信的。

 

此函数可在最低权限用户帐户(LUA)上下文中执行。

 

引用文件 #INCLUDE Once

 

WinSpool.inc(包括Windows.inc)