IsValidDevmode function
The IsValidDevmode function verifies that the contents of a DEVMODE structure are valid.
Syntax
BOOL IsValidDevmode(
_In_ PDEVMODE pDevmode,
size_t DevmodeSize
);
Parameters
-
pDevmode [in]
-
A pointer to the DEVMODE to validate.
-
DevmodeSize
-
The size in bytes of the input byte buffer.
Return value
TRUE, if the DEVMODE is structurally valid. If minor errors are found the function will fix them and return TRUE.
FALSE, if the DEVMODE has one or more significant structural problems. For example, its dmSize member is misaligned or specifies a buffer that is too small. Also, FALSE if pDevmode is NULL.
Remarks
No private printer driver fields of the DEVMODE are checked, only the public fields.
Callers should use dmSize+dmDriverExtra for DevmodeSize only if they can guarantee that the input buffer size is at least that big. Since the DEVMODE is generally untrusted data, the values that are in the input buffer at the dmSize and dmDriverExtra offsets are also untrusted.
This function is executable in Least-Privileged User Account (LUA) context.
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows XP [desktop apps only] |
Minimum supported server |
Windows Server 2003 [desktop apps only] |
Header |
|
Library |
|
DLL |
|
Unicode and ANSI names |
IsValidDevmodeW (Unicode) and IsValidDevmodeA (ANSI) |