Función CommDlgExtendedError (commdlg.h)

Devuelve un código de error común del cuadro de diálogo. Este código indica el error más reciente que se va a producir durante la ejecución de una de las funciones comunes del cuadro de diálogo.

Sintaxis

DWORD CommDlgExtendedError();

Valor devuelto

Tipo: DWORD

Si la llamada más reciente a una función de cuadro de diálogo común se realizó correctamente, el valor devuelto no está definido. Si la función de cuadro de diálogo común devolvió FALSE porque el usuario cerró o canceló el cuadro de diálogo, el valor devuelto es cero. De lo contrario, el valor devuelto es un código de error distinto de cero.

La función CommDlgExtendedError puede devolver códigos de error generales para cualquiera de las funciones comunes del cuadro de diálogo. Además, hay códigos de error que solo se devuelven para un cuadro de diálogo común específico. Todos estos códigos de error se definen en Cderr.h. Se pueden devolver los siguientes códigos de error generales para cualquiera de las funciones comunes del cuadro de diálogo.

Código o valor devuelto Descripción
CDERR_DIALOGFAILURE
0xFFFF
No se pudo crear el cuadro de diálogo. Error en la llamada de la función del cuadro de diálogo común a la función DialogBox . Por ejemplo, este error se produce si la llamada al cuadro de diálogo común especifica un identificador de ventana no válido.
CDERR_FINDRESFAILURE
0x0006
No se pudo encontrar un recurso especificado en la función del cuadro de diálogo común.
CDERR_INITIALIZATION
0x0002
Error en la función del cuadro de diálogo común durante la inicialización. Este error suele producirse cuando no hay suficiente memoria disponible.
CDERR_LOADRESFAILURE
0x0007
La función del cuadro de diálogo común no pudo cargar un recurso especificado.
CDERR_LOADSTRFAILURE
0x0005
La función común del cuadro de diálogo no pudo cargar una cadena especificada.
CDERR_LOCKRESFAILURE
0x0008
La función de cuadro de diálogo común no pudo bloquear un recurso especificado.
CDERR_MEMALLOCFAILURE
0x0009
La función de cuadro de diálogo común no pudo asignar memoria para las estructuras internas.
CDERR_MEMLOCKFAILURE
0x000A
La función común del cuadro de diálogo no pudo bloquear la memoria asociada a un identificador.
CDERR_NOHINSTANCE
0x0004
La marca ENABLETEMPLATE se estableció en el miembro Flags de la estructura de inicialización para el cuadro de diálogo común correspondiente, pero no se pudo proporcionar un identificador de instancia correspondiente.
CDERR_NOHOOK
0x000B
La marca ENABLEHOOK se estableció en el miembro Flags de la estructura de inicialización para el cuadro de diálogo común correspondiente, pero no se pudo proporcionar un puntero a un procedimiento de enlace correspondiente.
CDERR_NOTEMPLATE
0x0003
La marca ENABLETEMPLATE se estableció en el miembro Flags de la estructura de inicialización para el cuadro de diálogo común correspondiente, pero no se pudo proporcionar una plantilla correspondiente.
CDERR_REGISTERMSGFAIL
0x000C
La función RegisterWindowMessage devolvió un código de error cuando la llamó la función de cuadro de diálogo común.
CDERR_STRUCTSIZE
0x0001
El miembro lStructSize de la estructura de inicialización para el cuadro de diálogo común correspondiente no es válido.
 

Se pueden devolver los siguientes códigos de error para la función PrintDlg .

Código o valor devuelto Descripción
PDERR_CREATEICFAILURE
0x100a
Error en la función PrintDlg al intentar crear un contexto de información.
PDERR_DEFAULTDIFFERENT
0x100C
Llamó a la función PrintDlg con la marca DN_DEFAULTPRN especificada en el miembro wDefault de la estructura DEVNAMES , pero la impresora descrita por los demás miembros de la estructura no coincidía con la impresora predeterminada actual. Este error se produce cuando se almacena la estructura DEVNAMES y el usuario cambia la impresora predeterminada mediante el Panel de control.

Para usar la impresora descrita por la estructura DEVNAMES , borre la marca DN_DEFAULTPRN y vuelva a llamar a PrintDlg .

Para usar la impresora predeterminada, reemplace la estructura DEVNAMES (y la estructura, si existe) por NULL; y vuelva a llamar a PrintDlg .

PDERR_DNDMMISMATCH
0x1009
Los datos de las estructuras DEVMODE y DEVNAMES describen dos impresoras diferentes.
PDERR_GETDEVMODEFAIL
0x1005
El controlador de impresora no pudo inicializar una estructura DEVMODE .
PDERR_INITFAILURE
0x1006
Error en la función PrintDlg durante la inicialización y no hay código de error extendido más específico para describir el error. Este es el código de error predeterminado genérico para la función.
PDERR_LOADDRVFAILURE
0x1004
La función PrintDlg no pudo cargar el controlador de dispositivo para la impresora especificada.
PDERR_NODEFAULTPRN
0x1008
No existe una impresora predeterminada.
PDERR_NODEVICES
0x1007
No se encontraron controladores de impresora.
PDERR_PARSEFAILURE
0x1002
La función PrintDlg no pudo analizar las cadenas de la sección [devices] del archivo WIN.INI.
PDERR_PRINTERNOTFOUND
0x100B
La sección [devices] del archivo WIN.INI no contenía una entrada para la impresora solicitada.
PDERR_RETDEFFAILURE
0x1003
La marca PD_RETURNDEFAULT se especificó en el miembro Flags de la estructura PRINTDLG , pero el miembro hDevMode o hDevNames no era NULL.
PDERR_SETUPFAILURE
0x1001
La función PrintDlg no pudo cargar los recursos necesarios.
 

Se pueden devolver los siguientes códigos de error para la función ChooseFont .

Código o valor devuelto Descripción
CFERR_MAXLESSTHANMIN
0x2002
El tamaño especificado en el miembro nSizeMax de la estructura CHOOSEFONT es menor que el tamaño especificado en el miembro nSizeMin .
CFERR_NOFONTS
0x2001
No existen fuentes.
 

Se pueden devolver los siguientes códigos de error para las funciones GetOpenFileName y GetSaveFileName .

Código o valor devuelto Descripción
FNERR_BUFFERTOOSMALL
0x3003
El búfer al que apunta el miembro lpstrFile de la estructura OPENFILENAME es demasiado pequeño para el nombre de archivo especificado por el usuario. Los dos primeros bytes del búfer lpstrFile contienen un valor entero que especifica el tamaño necesario para recibir el nombre completo, en caracteres.
FNERR_INVALIDFILENAME
0x3002
Un nombre de archivo no es válido.
FNERR_SUBCLASSFAILURE
0x3001
Error al intentar subclase un cuadro de lista porque no había suficiente memoria disponible.
 

Se puede devolver el código de error siguiente para las funciones FindText y ReplaceText .

Código o valor devuelto Descripción
FRERR_BUFFERLENGTHZERO
0x4001
Un miembro de la estructura FINDREPLACE apunta a un búfer no válido.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado commdlg.h (incluye Windows.h)
Library Comdlg32.lib
Archivo DLL Comdlg32.dll
Conjunto de API ext-ms-win-shell-comdlg32-l1-1-0 (introducido en Windows 10, versión 10.0.10240)

Consulte también

CHOOSECOLOR

CHOOSEFONT

ChooseColor

ChooseFont

Biblioteca de cuadros de diálogo comunes

Conceptual

DEVNAMES

Cuadro de diálogo

FINDREPLACE

FindText

GetOpenFileName

GetSaveFileName

OPENFILENAME

PAGESETUPDLG

PRINTDLG

PageSetupDlg

PrintDlg

Referencia

RegisterWindowMessage

ReplaceText