Freigeben über


CommDlgExtendedError-Funktion (commdlg.h)

Gibt einen allgemeinen Dialogfeldfehlercode zurück. Dieser Code gibt den letzten Fehler an, der während der Ausführung einer der allgemeinen Dialogfeldfunktionen auftritt.

Syntax

DWORD CommDlgExtendedError();

Rückgabewert

Art: DWORD

Wenn der letzte Aufruf einer allgemeinen Dialogfeldfunktion erfolgreich war, ist der Rückgabewert nicht definiert. Wenn die allgemeine Dialogfeldfunktion FALSE zurückgegeben hat, weil der Benutzer das Dialogfeld geschlossen oder abgebrochen hat, ist der Rückgabewert null. Andernfalls ist der Rückgabewert ein Fehlercode ungleich null.

Die CommDlgExtendedError-Funktion kann allgemeine Fehlercodes für alle gängigen Dialogfeldfunktionen zurückgeben. Darüber hinaus gibt es Fehlercodes, die nur für ein bestimmtes allgemeines Dialogfeld zurückgegeben werden. Alle diese Fehlercodes sind in Cderr.h definiert. Die folgenden allgemeinen Fehlercodes können für alle gängigen Dialogfeldfunktionen zurückgegeben werden.

Rückgabecode/-wert BESCHREIBUNG
CDERR_DIALOGFAILURE
0xFFFF
Das Dialogfeld konnte nicht erstellt werden. Fehler beim Aufruf der DialogBox-Funktion der allgemeinen Dialogfeldfunktion. Dieser Fehler tritt beispielsweise auf, wenn der allgemeine Dialogfeldaufruf ein ungültiges Fensterhandle angibt.
CDERR_FINDRESFAILURE
0x0006
Die allgemeine Dialogfeldfunktion konnte eine angegebene Ressource nicht finden.
CDERR_INITIALIZATION
0x0002
Die allgemeine Dialogfeldfunktion ist während der Initialisierung fehlgeschlagen. Dieser Fehler tritt häufig auf, wenn nicht genügend Arbeitsspeicher verfügbar ist.
CDERR_LOADRESFAILURE
0x0007
Die allgemeine Dialogfeldfunktion konnte eine angegebene Ressource nicht laden.
CDERR_LOADSTRFAILURE
0x0005
Die allgemeine Dialogfeldfunktion konnte eine angegebene Zeichenfolge nicht laden.
CDERR_LOCKRESFAILURE
0x0008
Die allgemeine Dialogfeldfunktion konnte eine angegebene Ressource nicht sperren.
CDERR_MEMALLOCFAILURE
0x0009
Die allgemeine Dialogfeldfunktion konnte keinen Speicher für interne Strukturen zuweisen.
CDERR_MEMLOCKFAILURE
0x000A
Die allgemeine Dialogfeldfunktion konnte den speicher, der einem Handle zugeordnet ist, nicht sperren.
CDERR_NOHINSTANCE
0x0004
Das ENABLETEMPLATE-Flag wurde im Flags-Element der Initialisierungsstruktur für das entsprechende allgemeine Dialogfeld festgelegt, aber Sie konnten kein entsprechendes instance-Handle angeben.
CDERR_NOHOOK
0x000B
Das ENABLEHOOK-Flag wurde im Flags-Member der Initialisierungsstruktur für das entsprechende allgemeine Dialogfeld festgelegt, aber Sie konnten keinen Zeiger auf eine entsprechende Hookprozedur angeben.
CDERR_NOTEMPLATE
0x0003
Das ENABLETEMPLATE-Flag wurde im Flags-Element der Initialisierungsstruktur für das entsprechende allgemeine Dialogfeld festgelegt, aber Sie konnten keine entsprechende Vorlage bereitstellen.
CDERR_REGISTERMSGFAIL
0x000C
Die RegisterWindowMessage-Funktion hat einen Fehlercode zurückgegeben, wenn sie von der allgemeinen Dialogfeldfunktion aufgerufen wurde.
CDERR_STRUCTSIZE
0x0001
Der lStructSize-Member der Initialisierungsstruktur für das entsprechende allgemeine Dialogfeld ist ungültig.
 

Die folgenden Fehlercodes können für die PrintDlg-Funktion zurückgegeben werden.

Rückgabecode/-wert BESCHREIBUNG
PDERR_CREATEICFAILURE
0x100A
Die PrintDlg-Funktion ist beim Versuch, einen Informationskontext zu erstellen, fehlgeschlagen.
PDERR_DEFAULTDIFFERENT
0x100C
Sie haben die PrintDlg-Funktion mit dem im wDefault-Element der DEVNAMES-Struktur angegebenen DN_DEFAULTPRN-Flag aufgerufen, aber der drucker, der von den anderen Strukturelementen beschrieben wird, stimmte nicht mit dem aktuellen Standarddrucker überein. Dieser Fehler tritt auf, wenn Sie die DEVNAMES-Struktur speichern und der Benutzer den Standarddrucker mithilfe des Systemsteuerung ändert.

Um den drucker zu verwenden, der von der DEVNAMES-Struktur beschrieben wird, deaktivieren Sie das Flag DN_DEFAULTPRN , und rufen Sie PrintDlg erneut auf.

Um den Standarddrucker zu verwenden, ersetzen Sie die DEVNAMES-Struktur (und die Struktur, falls vorhanden) durch NULL. und rufen Sie PrintDlg erneut auf.

PDERR_DNDMMISMATCH
0x1009
Die Daten in den DEVMODE - und DEVNAMES-Strukturen beschreiben zwei verschiedene Drucker.
PDERR_GETDEVMODEFAIL
0x1005
Der Druckertreiber konnte eine DEVMODE-Struktur nicht initialisieren.
PDERR_INITFAILURE
0x1006
Die PrintDlg-Funktion ist während der Initialisierung fehlgeschlagen, und es gibt keinen spezifischeren erweiterten Fehlercode zur Beschreibung des Fehlers. Dies ist der generische Standardfehlercode für die Funktion.
PDERR_LOADDRVFAILURE
0x1004
Die PrintDlg-Funktion konnte den Gerätetreiber für den angegebenen Drucker nicht laden.
PDERR_NODEFAULTPRN
0x1008
Ein Standarddrucker ist nicht vorhanden.
PDERR_NODEVICES
0x1007
Es wurden keine Druckertreiber gefunden.
PDERR_PARSEFAILURE
0x1002
Die PrintDlg-Funktion konnte die Zeichenfolgen im Abschnitt [geräte] der datei WIN.INI nicht analysieren.
PDERR_PRINTERNOTFOUND
0x100B
Der Abschnitt [geräte] der WIN.INI-Datei enthielt keinen Eintrag für den angeforderten Drucker.
PDERR_RETDEFFAILURE
0x1003
Das PD_RETURNDEFAULT-Flag wurde im Flags-Member der PRINTDLG-Struktur angegeben, aber das Element hDevMode oder hDevNames war nicht NULL.
PDERR_SETUPFAILURE
0x1001
Die PrintDlg-Funktion konnte die erforderlichen Ressourcen nicht laden.
 

Die folgenden Fehlercodes können für die ChooseFont-Funktion zurückgegeben werden.

Rückgabecode/-wert BESCHREIBUNG
CFERR_MAXLESSTHANMIN
0x2002
Die im nSizeMax-Member der CHOOSEFONT-Struktur angegebene Größe ist kleiner als die im nSizeMin-Element angegebene Größe.
CFERR_NOFONTS
0x2001
Es sind keine Schriftarten vorhanden.
 

Die folgenden Fehlercodes können für die Funktionen GetOpenFileName und GetSaveFileName zurückgegeben werden.

Rückgabecode/-wert BESCHREIBUNG
FNERR_BUFFERTOOSMALL
0x3003
Der Puffer, auf den der lpstrFile-Member der OPENFILENAME-Struktur verweist, ist für den vom Benutzer angegebenen Dateinamen zu klein. Die ersten beiden Bytes des lpstrFile-Puffers enthalten einen ganzzahligen Wert, der die größe angibt, die erforderlich ist, um den vollständigen Namen in Zeichen zu erhalten.
FNERR_INVALIDFILENAME
0x3002
Ein Dateiname ist ungültig.
FNERR_SUBCLASSFAILURE
0x3001
Fehler beim Unterklassen eines Listenfelds, weil nicht genügend Arbeitsspeicher verfügbar war.
 

Der folgende Fehlercode kann für die Funktionen FindText und ReplaceText zurückgegeben werden.

Rückgabecode/-wert BESCHREIBUNG
FRERR_BUFFERLENGTHZERO
0x4001
Ein Member der FINDREPLACE-Struktur zeigt auf einen ungültigen Puffer.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile commdlg.h (windows.h einschließen)
Bibliothek Comdlg32.lib
DLL Comdlg32.dll
APIs ext-ms-win-shell-comdlg32-l1-1-0 (eingeführt in Windows 10, Version 10.0.10240)

Weitere Informationen

CHOOSECOLOR

CHOOSEFONT

ChooseColor

ChooseFont

Allgemeine Dialogfeldbibliothek

Konzept

DEVNAMES

Dialogfeld

FINDREPLACE

Findtext

GetOpenFileName

GetSaveFileName

OPENFILENAME

PAGESETUPDLG

PRINTDLG

PageSetupDlg

PrintDlg

Referenz

RegisterWindowMessage

ReplaceText