CommDlgExtendedError函数返回一个常见的对话框错误代码。此代码指示在执行以下常见对话框函数之一期间发生的最新错误:
ChooseColor | GetOpenFileName |
ChooseFont | GetSaveFileName |
FindText | PrintDlg |
ReplaceText | PageSetupDlg |
DWORD CommDlgExtendedError(VOID)
参数
此函数无参数。
返回值
如果对公共对话框功能的最近调用成功,则返回值未定义。
如果普通对话框功能返回FALSE,因为用户关闭或取消对话框,返回值为零。否则,返回值是非零的错误代码。有关详细信息,请参阅以下备注部分。
备注
CommDlgExtendedError功能可以返回任何常见对话框功能的常规错误代码。此外,还有仅针对特定公共对话框返回的错误代码。CommDlgExtendedError返回的错误代码在CDERR.H文件中定义。
可以为任何常见的对话框功能返回以下常规错误代码:
值 | 含义 |
CDERR_DIALOGFAILURE | 无法创建对话框。普通对话框功能调用DialogBox功能失败。例如,如果公共对话框调用指定无效的窗口句柄,则会发生此错误。 |
CDERR_FINDRESFAILURE | 公共对话框功能无法找到指定的资源。 |
CDERR_INITIALIZATION | 普通对话框功能在初始化时失败。当没有足够的内存可用时,会出现此错误。 |
CDERR_LOADRESFAILURE | 公共对话框功能无法加载指定的资源。 |
CDERR_LOADSTRFAILURE | 常见的对话框功能无法加载指定的字符串。 |
CDERR_LOCKRESFAILURE | 公共对话框功能无法锁定指定的资源。 |
CDERR_MEMALLOCFAILURE | 公共对话框功能无法为内部结构分配内存。 |
CDERR_MEMLOCKFAILURE | 通用对话框功能无法锁定与句柄相关联的内存。 |
CDERR_NOHINSTANCE | 在相应公共对话框的初始化结构的旗成员中设置了ENABLETEMPLATE标志,但是未能提供相应的实例句柄。 |
CDERR_NOHOOK | ENABLEHOOK标志在相应公共对话框的初始化结构的旗成员中设置,但未能提供指向相应挂钩过程的指针。 |
CDERR_NOTEMPLATE | 在相应公共对话框的初始化结构的旗成员中设置了ENABLETEMPLATE标志,但未能提供相应的模板。 |
CDERR_REGISTERMSGFAIL | 当通用对话框功能调用时,RegisterWindowMessage函数返回错误代码。 |
CDERR_STRUCTSIZE | 相应公共对话框的初始化结构的lStructSize成员无效。 |
可以为PrintDlg功能返回以下错误代码:
值 | 含义 |
PDERR_CREATEICFAILURE | 尝试创建信息上下文时,PrintDlg功能失败。 |
PDERR_DEFAULTDIFFERENT | 您使用DEVNAMES结构的wDefault成员中指定的DN_DEFAULTPRN标志调用PrintDlg函数,但其??他结构成员描述的打印机与当前默认打印机不匹配。(当您存储DEVNAMES结构并且用户使用控制面板更改默认打印机时,会发生此错误。) |
要使用DEVNAMES结构描述的打印机,请清除DN_DEFAULTPRN标志,并再次调用PrintDlg. 要使用默认打印机,请将DEVNAMES结构(和DEVMODE结构(如果存在))替换为NULL;并再次致电PrintDlg. | |
PDERR_DNDMMISMATCH | DEVMODE和DEVNAMES结构中的数据描述了两种不同的打印机。 |
PDERR_GETDEVMODEFAIL | 打印机驱动程序无法初始化DEVMODE结构。(此错误代码仅适用于为Windows 3.0及更高版本编写的打印机驱动程序。) |
PDERR_INITFAILURE | 在初始化期间,PrintDlg功能失败,并且没有更详细的扩展错误代码来描述失败。这是该函数的通用默认错误代码。 |
PDERR_LOADDRVFAILURE | PrintDlg功能无法加载指定打印机的设备驱动程序。 |
PDERR_NODEFAULTPRN | 默认打印机不存在。 |
PDERR_NODEVICES | 没有找到打印机驱动程序。 |
PDERR_PARSEFAILURE | PrintDlg功能无法解析WIN.INI文件的[devices]部分中的字符串。 |
PDERR_PRINTERNOTFOUND | WIN.INI文件的[devices]部分没有包含所请求打印机的条目。 |
PDERR_RETDEFFAILURE | PD_RETURNDEFAULT标志在PRINTDLG结构的旗成员中指定,但hDevMode或hDevNames成员不为NULL。 |
PDERR_SETUPFAILURE | PrintDlg功能无法加载所需的资源。 |
可以为ChooseFont函数返回以下错误代码:
值 | 含义 |
CFERR_MAXLESSTHANMIN | CHOOSEFONT结构中nSizeMax成员中指定的大小小于nSizeMin成员中指定的大小。 |
CFERR_NOFONTS | 没有字体存在 |
GetOpenFileName和GetSaveFileName功能可以返回以下错误代码:
值 | 含义 |
FNERR_BUFFERTOOSMALL | lpstrFile结构的lpstrFile成员指向的缓冲区对于用户指定的文件名来说太小了。lpstrFile缓冲区的前两个字节包含一个整数值,指定接收全名所需的大小(以ANSI为单位)或字符(Unicode版本)。 |
FNERR_INVALIDFILENAME | 文件名无效。 |
FNERR_SUBCLASSFAILURE | 尝试子类化列表框失败,因为没有足够的内存可用。 |
可以为FindText和ReplaceText功能返回以下错误代码:
值 | 含义 |
FRERR_BUFFERLENGTHZERO | FINDREPLACE结构的成员指向无效的缓冲区。 |
也可以看看
ChooseColor, CHOOSECOLOR, ChooseFont, CHOOSEFONT, DEVMODE, DEVNAMES, DialogBox, FINDREPLACE, FindText, GetOpenFileName, GetSaveFileName, OPENFILENAME, PageSetupDlg, PAGESETUPDLG, PrintDlg, PRINTDLG, RegisterWindowMessage, ReplaceText