CommDlgExtendedError function (commdlg.h)

Returns a common dialog box error code. This code indicates the most recent error to occur during the execution of one of the common dialog box functions.

Syntax

DWORD CommDlgExtendedError();

Return value

Type: DWORD

If the most recent call to a common dialog box function succeeded, the return value is undefined. If the common dialog box function returned FALSE because the user closed or canceled the dialog box, the return value is zero. Otherwise, the return value is a nonzero error code.

The CommDlgExtendedError function can return general error codes for any of the common dialog box functions. In addition, there are error codes that are returned only for a specific common dialog box. All of these error codes are defined in Cderr.h. The following general error codes can be returned for any of the common dialog box functions.

Return code/value Description
CDERR_DIALOGFAILURE
0xFFFF
The dialog box could not be created. The common dialog box function's call to the DialogBox function failed. For example, this error occurs if the common dialog box call specifies an invalid window handle.
CDERR_FINDRESFAILURE
0x0006
The common dialog box function failed to find a specified resource.
CDERR_INITIALIZATION
0x0002
The common dialog box function failed during initialization. This error often occurs when sufficient memory is not available.
CDERR_LOADRESFAILURE
0x0007
The common dialog box function failed to load a specified resource.
CDERR_LOADSTRFAILURE
0x0005
The common dialog box function failed to load a specified string.
CDERR_LOCKRESFAILURE
0x0008
The common dialog box function failed to lock a specified resource.
CDERR_MEMALLOCFAILURE
0x0009
The common dialog box function was unable to allocate memory for internal structures.
CDERR_MEMLOCKFAILURE
0x000A
The common dialog box function was unable to lock the memory associated with a handle.
CDERR_NOHINSTANCE
0x0004
The ENABLETEMPLATE flag was set in the Flags member of the initialization structure for the corresponding common dialog box, but you failed to provide a corresponding instance handle.
CDERR_NOHOOK
0x000B
The ENABLEHOOK flag was set in the Flags member of the initialization structure for the corresponding common dialog box, but you failed to provide a pointer to a corresponding hook procedure.
CDERR_NOTEMPLATE
0x0003
The ENABLETEMPLATE flag was set in the Flags member of the initialization structure for the corresponding common dialog box, but you failed to provide a corresponding template.
CDERR_REGISTERMSGFAIL
0x000C
The RegisterWindowMessage function returned an error code when it was called by the common dialog box function.
CDERR_STRUCTSIZE
0x0001
The lStructSize member of the initialization structure for the corresponding common dialog box is invalid.
 

The following error codes can be returned for the PrintDlg function.

Return code/value Description
PDERR_CREATEICFAILURE
0x100A
The PrintDlg function failed when it attempted to create an information context.
PDERR_DEFAULTDIFFERENT
0x100C
You called the PrintDlg function with the DN_DEFAULTPRN flag specified in the wDefault member of the DEVNAMES structure, but the printer described by the other structure members did not match the current default printer. This error occurs when you store the DEVNAMES structure, and the user changes the default printer by using the Control Panel.

To use the printer described by the DEVNAMES structure, clear the DN_DEFAULTPRN flag and call PrintDlg again.

To use the default printer, replace the DEVNAMES structure (and the structure, if one exists) with NULL; and call PrintDlg again.

PDERR_DNDMMISMATCH
0x1009
The data in the DEVMODE and DEVNAMES structures describes two different printers.
PDERR_GETDEVMODEFAIL
0x1005
The printer driver failed to initialize a DEVMODE structure.
PDERR_INITFAILURE
0x1006
The PrintDlg function failed during initialization, and there is no more specific extended error code to describe the failure. This is the generic default error code for the function.
PDERR_LOADDRVFAILURE
0x1004
The PrintDlg function failed to load the device driver for the specified printer.
PDERR_NODEFAULTPRN
0x1008
A default printer does not exist.
PDERR_NODEVICES
0x1007
No printer drivers were found.
PDERR_PARSEFAILURE
0x1002
The PrintDlg function failed to parse the strings in the [devices] section of the WIN.INI file.
PDERR_PRINTERNOTFOUND
0x100B
The [devices] section of the WIN.INI file did not contain an entry for the requested printer.
PDERR_RETDEFFAILURE
0x1003
The PD_RETURNDEFAULT flag was specified in the Flags member of the PRINTDLG structure, but the hDevMode or hDevNames member was not NULL.
PDERR_SETUPFAILURE
0x1001
The PrintDlg function failed to load the required resources.
 

The following error codes can be returned for the ChooseFont function.

Return code/value Description
CFERR_MAXLESSTHANMIN
0x2002
The size specified in the nSizeMax member of the CHOOSEFONT structure is less than the size specified in the nSizeMin member.
CFERR_NOFONTS
0x2001
No fonts exist.
 

The following error codes can be returned for the GetOpenFileName and GetSaveFileName functions.

Return code/value Description
FNERR_BUFFERTOOSMALL
0x3003
The buffer pointed to by the lpstrFile member of the OPENFILENAME structure is too small for the file name specified by the user. The first two bytes of the lpstrFile buffer contain an integer value specifying the size required to receive the full name, in characters.
FNERR_INVALIDFILENAME
0x3002
A file name is invalid.
FNERR_SUBCLASSFAILURE
0x3001
An attempt to subclass a list box failed because sufficient memory was not available.
 

The following error code can be returned for the FindText and ReplaceText functions.

Return code/value Description
FRERR_BUFFERLENGTHZERO
0x4001
A member of the FINDREPLACE structure points to an invalid buffer.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header commdlg.h (include Windows.h)
Library Comdlg32.lib
DLL Comdlg32.dll
API set ext-ms-win-shell-comdlg32-l1-1-0 (introduced in Windows 10, version 10.0.10240)

See also

CHOOSECOLOR

CHOOSEFONT

ChooseColor

ChooseFont

Common Dialog Box Library

Conceptual

DEVNAMES

DialogBox

FINDREPLACE

FindText

GetOpenFileName

GetSaveFileName

OPENFILENAME

PAGESETUPDLG

PRINTDLG

PageSetupDlg

PrintDlg

Reference

RegisterWindowMessage

ReplaceText