複製鏈接
請複製以下鏈接發送給好友

CommDlgExtendedError

鎖定
CommDlgExtendedError是一個函數,該函數返回一個對話框錯誤代碼,此代碼顯示出在執行下列對話框函數時要出現的最近的錯誤:ChooseColor,GetOpenFileName,ChooseFont,GetSaveFileName,FindTextPrintDlgReplaceText,PageSetpDlg。
外文名
CommDlgExtendedError
類    別
錯誤代碼
原    型
DWORD CommDlgExtendedError
性    質
計算機函數

CommDlgExtendedError函數功能與原型

CommDlgExtendedError函數功能

該函數返回一個對話框錯誤代碼,此代碼顯示出在執行下列對話框函數時要出現的最近的錯誤:ChooseColor,GetOpenFileName,ChooseFont,GetSaveFileName,FindTextPrintDlgReplaceText,PageSetpDlg。

CommDlgExtendedError函數原型

DWORD CommDlgExtendedError(VOID)

CommDlgExtendedError參數

CommDlgExtendedError返回值

如果最近一次對話框函數調用成功,返回值不確定,如果對話框函數因為用户關閉或取消對話框而返回FALSE,則返回值為零。否則返回值是非零錯誤代碼。有關更多的信息,參見下列説明部分。

CommDlgExtendedError其他信息

CommDlgExtendedError函數可以返回公共對話框函數中的一般的錯誤代碼。
另外,也返回某一具體公共對話框的錯誤代碼。由CommDlgExtendedError返回的錯誤代碼在CDERR.H文件裏定義:

CommDlgExtendedError返回錯誤代碼值

CDERR_DIALOGFAILURE:對話框不能創建。DialogBox函數對對話框函數的調用失敗,例如如果公共對話框的調用指定一個無效的窗口句柄,則此種錯誤產生。
CDERR_FINDRESFAILURE:公共對話框函數沒能找到指定資源。
CDERR_INITIALIZATION:公共對話框函數在初始化過程中失敗。當沒有足夠內存時此錯誤出現。
CDERR_LOADRESFAILURE:公共對話框函數沒能調出指定的資源。
CDERR_LOADSTRFAILURE:公共對話框函數沒能調出指定的串。
CDERR_LOCKRESFAILURE:公共對話框函數沒能銷定指定的資源。
CDERR_EMAILCOLFAILURE;公共對話框函數不能為內部結構分配內存。
CDERR_NOHINSTANCE:在對應的公共對話框初始化結構Flags成員中設置ENABLETEMPLATE標誌,但是在提供相應的事例句柄時出錯。
CDERR_NOHOOK:在對應的公共對話框初始化結構Flags成員中設置ENABLEHOOK標誌,但是在提供相應的掛鈎程序指針時出錯。
CDERR_NOTEMPLATE:在對應的公共對話框初始化結構Flag成員中設置ENABLETEMPLATE標誌,但是在提供相應的模板時出錯。
CDERR_REGISTERMSGFAIL:當RegisterWindowMessage函數被公共對話框函數調用時,該函數返回錯誤代碼。
CDERR_STRUCTSIZE:對應的公共對話框初始化結構舊IStructSize成無效成員。

CommDlgExtendedErrorPrint Dlg函數的返回值

PDERR_CREATEICFAILURE:當PrintDlg函數想創建一個信息表時出錯。
PDERR_DEFAIKTDFFERENT:利用在DEVNAMES結構中wDefault成員指定的DN_DEFAULTPRN標誌,可以調用PrintDlg函數。但是被另外一個結構成員描述的打印機與當前缺省的打印機不匹配。(此錯誤發生在儲存DEVNAMES結構和用户利用控制面板改變缺省打印機時)。要使用DEVNAMES結構所描述的缺省打印機,必須清空DN_DEFAULTPRN標誌並且要再一次調用PrintDlg。要使用缺省打印機,必須用NULL取代DEVNAMES結構俐DEVMODE結構,如果此結構存在的話,並且要再一次調用PrintDlg函數。
PDERR_DNDMMISMATCH:OEVMOOE和DEVNAMFS結構中的數據描述了兩種不同的打印機。
PDERR_GETDEVMODEFAIL;打印機驅動程序不能初始化一個DEVMODE結構(這種錯誤代碼只用於Windows 3.0及以上版本的打印機驅動程序)。
PDERR_INITFAILURE:PrintDlg函數不能初始化,並且沒有更多的錯誤代碼來描述此錯誤。
PDERR_LOADDRVFAILURE:PrinDlg函數不能為指定的打印機裝備設備驅動器。
POERR_NODEFAULTPRN:不存在缺省打印機。
POERR_NODEVKES:未發現打印機驅動程序
PDERR_PARAEFAILURE:PrintDlg函數在分析WIN.INI文件中的[devces]部分的字符串時出錯。
PDERR_PRINTERNOTFOUND;WIN.INI文件的[device]部分不包含所請求打印機的入口
PDERR_RETDEFFAILURE_PD:RETURNDEFAULT標誌被指定在PRINTDLG結構的Flags成員中。但hDevMode或hDevNames成員不是NULL。
PDERR_SETUPFAILURE:PrintDlg函數在裝載所需要的資源時出錯。

CommDlgExtendedError函數的返回值

CFERR_MAXLESSTHANMIN:CHOOSEFONT結構中的nSizeMax成員所給定的大小小於nSizeMin成員給定的大小。
CFERR_NOFONTS:不存在字體。
下面是GetOpenFileName和GetSaveFileName函數的返回值。
FNERR_BUFFERTOOSMALL:由OPENFILENAME結構的lpstrFile成員指向的緩衝區對由用户指定的文件名來説太小。前兩種IpstrFile緩衝區的字節含有一個指定大小的整型值。用來存放全文件名。
FNERR_INVAIDFILENAME:文件名無效。
FNERR_SUBASSFAILIIRE:由於沒有足夠內存,在對列表框分類時出錯。
下面是FindTextReplaceText函數的返回值。
FRERR_BUFFERLENGTHZERO:結構FINDREPLACE中的一個成員指向一個無效的緩衝區。
在Windows CE中Windows CE支持另外的四種返回值,如下:
CDERR_REGISTRYFAILURE 公共對話框函數無法讀註冊表。
下面的一些返回值只適用於PrintDlg函數。
PDERR_NOPORTS:沒有註冊的端口PDERR_NOPRINTERS:沒有註冊的打印機
PDERR_CREATEDCFAILURE:CreateDC調用失敗
Windows CE不支持CDERR_LOADSTRFAILURE、CDERR_MEMLOCKFAILURE或CDERR_REGISTERMSGFAIL返回值。Windows CE也不支持任何PDERR_錯誤值
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本:頭文件:commdlg.h;庫文件:comdlg32.lib。
Const CDERR_DIALOGFAILURE = &HFFFF
Const CDERR_GENERALCODES = &H0
Const CDERR_STRUCTSIZE = &H1
Const CDERR_INITIALIZATION = &H2
Const CDERR_NOTEMPLATE = &H3
Const CDERR_NOHINSTANCE = &H4
Const CDERR_LOADSTRFAILURE = &H5
Const CDERR_FINDRESFAILURE = &H6
Const CDERR_LOADRESFAILURE = &H7
Const CDERR_LOCKRESFAILURE = &H8
Const CDERR_MEMALLOCFAILURE = &H9
Const CDERR_MEMLOCKFAILURE = &HA
Const CDERR_NOHOOK = &HB
Const CDERR_REGISTERMSGFAIL = &HC