15#define LBSELCHSTRINGA "commdlg_LBSelChangedNotify"
16#define SHAREVISTRINGA "commdlg_ShareViolation"
17#define FILEOKSTRINGA "commdlg_FileNameOK"
18#define COLOROKSTRINGA "commdlg_ColorOK"
19#define SETRGBSTRINGA "commdlg_SetRGBColor"
20#define HELPMSGSTRINGA "commdlg_help"
21#define FINDMSGSTRINGA "commdlg_FindReplace"
22#define LBSELCHSTRINGW L"commdlg_LBSelChangedNotify"
23#define SHAREVISTRINGW L"commdlg_ShareViolation"
24#define FILEOKSTRINGW L"commdlg_FileNameOK"
25#define COLOROKSTRINGW L"commdlg_ColorOK"
26#define SETRGBSTRINGW L"commdlg_SetRGBColor"
27#define HELPMSGSTRINGW L"commdlg_help"
28#define FINDMSGSTRINGW L"commdlg_FindReplace"
30#define CDN_FIRST ((UINT)-601)
31#define CDN_LAST ((UINT)-699)
33#define CDN_INITDONE CDN_FIRST
34#define CDN_SELCHANGE (CDN_FIRST-1U)
35#define CDN_FOLDERCHANGE (CDN_FIRST-2U)
36#define CDN_SHAREVIOLATION (CDN_FIRST-3U)
37#define CDN_HELP (CDN_FIRST-4U)
38#define CDN_FILEOK (CDN_FIRST-5U)
39#define CDN_TYPECHANGE (CDN_FIRST-6U)
40#define CDN_INCLUDEITEM (CDN_FIRST-7U)
41#define CDM_FIRST (WM_USER+100)
42#define CDM_LAST (WM_USER+200)
43#define CDM_GETSPEC CDM_FIRST
44#define CDM_GETFILEPATH (CDM_FIRST+1)
45#define CDM_GETFOLDERPATH (CDM_FIRST+2)
46#define CDM_GETFOLDERIDLIST (CDM_FIRST+3)
47#define CDM_SETCONTROLTEXT (CDM_FIRST+4)
48#define CDM_HIDECONTROL (CDM_FIRST+5)
49#define CDM_SETDEFEXT (CDM_FIRST+6)
52#define CC_PREVENTFULLOPEN 4
54#define CC_ENABLEHOOK 16
55#define CC_ENABLETEMPLATE 32
56#define CC_ENABLETEMPLATEHANDLE 64
57#define CC_SOLIDCOLOR 128
58#define CC_ANYCOLOR 256
59#define CF_SCREENFONTS 1
60#define CF_PRINTERFONTS 2
63#define CF_ENABLEHOOK 8
64#define CF_ENABLETEMPLATE 16
65#define CF_ENABLETEMPLATEHANDLE 32
66#define CF_INITTOLOGFONTSTRUCT 64
67#define CF_USESTYLE 128
70#define CF_ANSIONLY 1024
71#define CF_SCRIPTSONLY CF_ANSIONLY
72#define CF_NOVECTORFONTS 2048
73#define CF_NOOEMFONTS 2048
74#define CF_NOSIMULATIONS 4096
75#define CF_LIMITSIZE 8192
76#define CF_FIXEDPITCHONLY 16384
77#define CF_WYSIWYG 32768
78#define CF_FORCEFONTEXIST 65536
79#define CF_SCALABLEONLY 131072
80#define CF_TTONLY 262144
81#define CF_NOFACESEL 524288
82#define CF_NOSTYLESEL 1048576
83#define CF_NOSIZESEL 2097152
84#define CF_SELECTSCRIPT 4194304
85#define CF_NOSCRIPTSEL 8388608
86#define CF_NOVERTFONTS 0x1000000
87#define SIMULATED_FONTTYPE 0x8000
88#define PRINTER_FONTTYPE 0x4000
89#define SCREEN_FONTTYPE 0x2000
90#define BOLD_FONTTYPE 0x100
91#define ITALIC_FONTTYPE 0x0200
92#define REGULAR_FONTTYPE 0x0400
93#define WM_CHOOSEFONT_GETLOGFONT (WM_USER+1)
94#define WM_CHOOSEFONT_SETLOGFONT (WM_USER+101)
95#define WM_CHOOSEFONT_SETFLAGS (WM_USER+102)
96#define OFN_ALLOWMULTISELECT 512
97#define OFN_CREATEPROMPT 0x2000
98#define OFN_DONTADDTORECENT 0x2000000
99#define OFN_ENABLEHOOK 32
100#define OFN_ENABLEINCLUDENOTIFY 0x400000
101#define OFN_ENABLESIZING 0x800000
102#define OFN_ENABLETEMPLATE 64
103#define OFN_ENABLETEMPLATEHANDLE 128
104#define OFN_EXPLORER 0x80000
105#define OFN_EXTENSIONDIFFERENT 0x400
106#define OFN_FILEMUSTEXIST 0x1000
107#define OFN_HIDEREADONLY 4
108#define OFN_LONGNAMES 0x200000
109#define OFN_NOCHANGEDIR 8
110#define OFN_NODEREFERENCELINKS 0x100000
111#define OFN_NOLONGNAMES 0x40000
112#define OFN_NONETWORKBUTTON 0x20000
113#define OFN_NOREADONLYRETURN 0x8000
114#define OFN_NOTESTFILECREATE 0x10000
115#define OFN_NOVALIDATE 256
116#define OFN_OVERWRITEPROMPT 2
117#define OFN_PATHMUSTEXIST 0x800
118#define OFN_READONLY 1
119#define OFN_SHAREAWARE 0x4000
120#define OFN_SHOWHELP 16
121#define OFN_EX_NOPLACESBAR 0x00000001
122#define OFN_SHAREFALLTHROUGH 2
123#define OFN_SHARENOWARN 1
124#define OFN_SHAREWARN 0
125#define OFN_NODEREFERENCELINKS 0x100000
126#define FR_DIALOGTERM 64
128#define FR_ENABLEHOOK 256
129#define FR_ENABLETEMPLATE 512
130#define FR_ENABLETEMPLATEHANDLE 0x2000
132#define FR_HIDEUPDOWN 0x4000
133#define FR_HIDEMATCHCASE 0x8000
134#define FR_HIDEWHOLEWORD 0x10000
135#define FR_MATCHALEFHAMZA 0x80000000
136#define FR_MATCHCASE 4
137#define FR_MATCHDIAC 0x20000000
138#define FR_MATCHKASHIDA 0x40000000
139#define FR_NOMATCHCASE 0x800
140#define FR_NOUPDOWN 0x400
141#define FR_NOWHOLEWORD 4096
143#define FR_REPLACEALL 32
144#define FR_SHOWHELP 128
145#define FR_WHOLEWORD 2
147#define PD_SELECTION 1
149#define PD_NOSELECTION 4
150#define PD_NOPAGENUMS 8
152#define PD_PRINTTOFILE 32
153#define PD_PRINTSETUP 64
154#define PD_NOWARNING 128
155#define PD_RETURNDC 256
156#define PD_RETURNIC 512
157#define PD_RETURNDEFAULT 1024
158#define PD_SHOWHELP 2048
159#define PD_ENABLEPRINTHOOK 4096
160#define PD_ENABLESETUPHOOK 8192
161#define PD_ENABLEPRINTTEMPLATE 16384
162#define PD_ENABLESETUPTEMPLATE 32768
163#define PD_ENABLEPRINTTEMPLATEHANDLE 65536
164#define PD_ENABLESETUPTEMPLATEHANDLE 0x20000
165#define PD_USEDEVMODECOPIES 0x40000
166#define PD_USEDEVMODECOPIESANDCOLLATE 0x40000
167#define PD_DISABLEPRINTTOFILE 0x80000
168#define PD_HIDEPRINTTOFILE 0x100000
169#define PD_NONETWORKBUTTON 0x200000
170#define PSD_DEFAULTMINMARGINS 0
171#define PSD_INWININIINTLMEASURE 0
172#define PSD_MINMARGINS 1
174#define PSD_INTHOUSANDTHSOFINCHES 4
175#define PSD_INHUNDREDTHSOFMILLIMETERS 8
176#define PSD_DISABLEMARGINS 16
177#define PSD_DISABLEPRINTER 32
178#define PSD_NOWARNING 128
179#define PSD_DISABLEORIENTATION 256
180#define PSD_DISABLEPAPER 512
181#define PSD_RETURNDEFAULT 1024
182#define PSD_SHOWHELP 2048
183#define PSD_ENABLEPAGESETUPHOOK 8192
184#define PSD_ENABLEPAGESETUPTEMPLATE 0x8000
185#define PSD_ENABLEPAGESETUPTEMPLATEHANDLE 0x20000
186#define PSD_ENABLEPAGEPAINTHOOK 0x40000
187#define PSD_DISABLEPAGEPAINTING 0x80000
188#define WM_PSD_PAGESETUPDLG WM_USER
189#define WM_PSD_FULLPAGERECT (WM_USER+1)
190#define WM_PSD_MINMARGINRECT (WM_USER+2)
191#define WM_PSD_MARGINRECT (WM_USER+3)
192#define WM_PSD_GREEKTEXTRECT (WM_USER+4)
193#define WM_PSD_ENVSTAMPRECT (WM_USER+5)
194#define WM_PSD_YAFULLPAGERECT (WM_USER+6)
195#define CD_LBSELNOITEMS (-1)
196#define CD_LBSELCHANGE 0
199#define DN_DEFAULTPRN 1
201#define PD_RESULT_CANCEL 0
202#define PD_RESULT_PRINT 1
203#define PD_RESULT_APPLY 2
205#define START_PAGE_GENERAL 0xffffffff
209#define SNDMSG ::SendMessage
211#define SNDMSG SendMessage
215#define CommDlg_OpenSave_GetSpec(d,s,m) ((int)SNDMSG((d),CDM_GETSPEC,(m),(LPARAM)(s)))
216#define CommDlg_OpenSave_GetSpecA CommDlg_OpenSave_GetSpec
217#define CommDlg_OpenSave_GetSpecW CommDlg_OpenSave_GetSpec
218#define CommDlg_OpenSave_GetFilePath(d,s,m) ((int)SNDMSG((d),CDM_GETFILEPATH,(m),(LPARAM)(s)))
219#define CommDlg_OpenSave_GetFilePathA CommDlg_OpenSave_GetFilePath
220#define CommDlg_OpenSave_GetFilePathW CommDlg_OpenSave_GetFilePath
221#define CommDlg_OpenSave_GetFolderPath(d,s,m) ((int)SNDMSG((d),CDM_GETFOLDERPATH,(m),(LPARAM)(LPSTR)(s)))
222#define CommDlg_OpenSave_GetFolderPathA CommDlg_OpenSave_GetFolderPath
223#define CommDlg_OpenSave_GetFolderPathW CommDlg_OpenSave_GetFolderPath
224#define CommDlg_OpenSave_GetFolderIDList(d,i,m) ((int)SNDMSG((d),CDM_GETFOLDERIDLIST,(m),(LPARAM)(i)))
225#define CommDlg_OpenSave_SetControlText(d,i,t) ((void)SNDMSG((d),CDM_SETCONTROLTEXT,(i),(LPARAM)(t)))
226#define CommDlg_OpenSave_HideControl(d,i) ((void)SNDMSG((d),CDM_HIDECONTROL,(i),0))
227#define CommDlg_OpenSave_SetDefExt(d,e) ((void)SNDMSG((d),CDM_SETDEFEXT,0,(LPARAM)(e)))
350 LPEDITMENU lpEditInfo;
353#if (_WIN32_WINNT >= 0x0500)
381 LPEDITMENU lpEditInfo;
384#if (_WIN32_WINNT >= 0x0500)
392#ifndef CDSIZEOF_STRUCT
393#define CDSIZEOF_STRUCT(type,field) ((INT_PTR)&(((type *)0)->field) + sizeof(((type*)0)->field))
396#define OPENFILENAME_SIZE_VERSION_400A CDSIZEOF_STRUCT(OPENFILENAMEA,lpTemplateName)
397#define OPENFILENAME_SIZE_VERSION_400W CDSIZEOF_STRUCT(OPENFILENAMEW,lpTemplateName)
400#define OPENFILENAME_SIZE_VERSION_400 OPENFILENAME_SIZE_VERSION_400W
402#define OPENFILENAME_SIZE_VERSION_400 OPENFILENAME_SIZE_VERSION_400A
506#if (WINVER >= 0x0500) && !defined (__OBJC__)
508typedef struct tagPRINTPAGERANGE {
511} PRINTPAGERANGE, *LPPRINTPAGERANGE;
512typedef struct tagPDEXA {
520 DWORD ExclusionFlags;
522 DWORD nMaxPageRanges;
523 LPPRINTPAGERANGE lpPageRanges;
528 LPCSTR lpPrintTemplateName;
530 DWORD nPropertyPages;
533 DWORD dwResultAction;
534} PRINTDLGEXA, *LPPRINTDLGEXA;
535typedef struct tagPDEXW {
543 DWORD ExclusionFlags;
545 DWORD nMaxPageRanges;
546 LPPRINTPAGERANGE lpPageRanges;
553 DWORD nPropertyPages;
556 DWORD dwResultAction;
557} PRINTDLGEXW, *LPPRINTDLGEXW;
562DEFINE_GUID(IID_IPrintDialogCallback, 0x5852a2c3,0x6530,0x11d1,0xb6,0xa3,0x00,0x00,0xf8,0x75,0x7b,0xf9);
563#define INTERFACE IPrintDialogCallback
577DEFINE_GUID(IID_IPrintDialogServices, 0x509aaeda,0x5639,0x11d1,0xb6,0xa1,0x00,0x00,0xf8,0x75,0x7b,0xf9);
578#define INTERFACE IPrintDialogServices
613#if (WINVER >= 0x0500) && !defined (__OBJC__)
619#define LBSELCHSTRING LBSELCHSTRINGW
620#define SHAREVISTRING SHAREVISTRINGW
621#define FILEOKSTRING FILEOKSTRINGW
622#define COLOROKSTRING COLOROKSTRINGW
623#define SETRGBSTRING SETRGBSTRINGW
624#define HELPMSGSTRING HELPMSGSTRINGW
625#define FINDMSGSTRING FINDMSGSTRINGW
633#define ChooseColor ChooseColorW
634#define ChooseFont ChooseFontW
635#define FindText FindTextW
636#define GetFileTitle GetFileTitleW
637#define GetOpenFileName GetOpenFileNameW
638#define GetSaveFileName GetSaveFileNameW
639#define PageSetupDlg PageSetupDlgW
640#define PrintDlg PrintDlgW
641#define ReplaceText ReplaceTextW
642#if (WINVER >= 0x0500) && !defined (__OBJC__)
643typedef PRINTDLGEXW PRINTDLGEX, *LPPRINTDLGEX;
644#define PrintDlgEx PrintDlgExW
647#define LBSELCHSTRING LBSELCHSTRINGA
648#define SHAREVISTRING SHAREVISTRINGA
649#define FILEOKSTRING FILEOKSTRINGA
650#define COLOROKSTRING COLOROKSTRINGA
651#define SETRGBSTRING SETRGBSTRINGA
652#define HELPMSGSTRING HELPMSGSTRINGA
653#define FINDMSGSTRING FINDMSGSTRINGA
661#define ChooseColor ChooseColorA
662#define ChooseFont ChooseFontA
663#define FindText FindTextA
664#define GetFileTitle GetFileTitleA
665#define GetOpenFileName GetOpenFileNameA
666#define GetSaveFileName GetSaveFileNameA
667#define PageSetupDlg PageSetupDlgA
668#define PrintDlg PrintDlgA
669#define ReplaceText ReplaceTextA
670#if (WINVER >= 0x0500) && !defined (__OBJC__)
671typedef PRINTDLGEXA PRINTDLGEX, *LPPRINTDLGEX;
672#define PrintDlgEx PrintDlgExA
#define DECLARE_INTERFACE_(i, b)
struct tagCHOOSECOLORA * LPCHOOSECOLORA
struct FINDREPLACEW * LPFINDREPLACEW
BOOL WINAPI PrintDlgA(LPPRINTDLGA)
BOOL WINAPI PageSetupDlgA(LPPAGESETUPDLGA)
struct tagCHOOSECOLORA CHOOSECOLORA
struct tagCHOOSECOLORW * LPCHOOSECOLORW
__CDHOOKPROC LPFRHOOKPROC
struct tagOFNW * LPOPENFILENAMEW
PAGESETUPDLGA PAGESETUPDLG
__CDHOOKPROC LPCCHOOKPROC
struct tagDEVNAMES * LPDEVNAMES
BOOL WINAPI PageSetupDlgW(LPPAGESETUPDLGW)
HWND WINAPI ReplaceTextA(LPFINDREPLACEA)
HWND WINAPI FindTextW(LPFINDREPLACEW)
struct _OFNOTIFYEXW * LPOFNOTIFYEXW
struct tagPSDA PAGESETUPDLGA
struct tagPDA * LPPRINTDLGA
short WINAPI GetFileTitleA(LPCSTR, LPSTR, WORD)
UINT_PTR(CALLBACK * __CDHOOKPROC)(HWND, UINT, WPARAM, LPARAM)
CHOOSEFONTA * LPCHOOSEFONT
struct tagPDW * LPPRINTDLGW
PAGESETUPDLGA * LPPAGESETUPDLG
struct _OFNOTIFYW OFNOTIFYW
struct _OFNOTIFYEXA * LPOFNOTIFYEXA
struct tagCHOOSECOLORW CHOOSECOLORW
__CDHOOKPROC LPPAGESETUPHOOK
struct tagOFNA * LPOPENFILENAMEA
struct _OFNOTIFYEXA OFNOTIFYEXA
__CDHOOKPROC LPOFNHOOKPROC
BOOL WINAPI PrintDlgW(LPPRINTDLGW)
short WINAPI GetFileTitleW(LPCWSTR, LPWSTR, WORD)
struct tagOFNA OPENFILENAMEA
struct FINDREPLACEA * LPFINDREPLACEA
BOOL WINAPI ChooseColorA(LPCHOOSECOLORA)
__CDHOOKPROC LPSETUPHOOKPROC
BOOL WINAPI GetSaveFileNameA(LPOPENFILENAMEA)
BOOL WINAPI GetSaveFileNameW(LPOPENFILENAMEW)
OPENFILENAMEA * LPOPENFILENAME
struct _OFNOTIFYEXW OFNOTIFYEXW
struct tagPSDW PAGESETUPDLGW
struct tagCHOOSEFONTA CHOOSEFONTA
FINDREPLACEA * LPFINDREPLACE
struct tagCHOOSEFONTA * LPCHOOSEFONTA
BOOL WINAPI ChooseFontA(LPCHOOSEFONTA)
struct tagCHOOSEFONTW * LPCHOOSEFONTW
DWORD WINAPI CommDlgExtendedError(void)
__CDHOOKPROC LPCFHOOKPROC
struct tagOFNW OPENFILENAMEW
BOOL WINAPI ChooseColorW(LPCHOOSECOLORW)
struct tagDEVNAMES DEVNAMES
HWND WINAPI ReplaceTextW(LPFINDREPLACEW)
BOOL WINAPI GetOpenFileNameW(LPOPENFILENAMEW)
struct tagCHOOSEFONTW CHOOSEFONTW
HWND WINAPI FindTextA(LPFINDREPLACEA)
CHOOSECOLORA * LPCHOOSECOLOR
struct tagPSDW * LPPAGESETUPDLGW
struct _OFNOTIFYA OFNOTIFYA
__CDHOOKPROC LPPRINTHOOKPROC
__CDHOOKPROC LPPAGEPAINTHOOK
BOOL WINAPI GetOpenFileNameA(LPOPENFILENAMEA)
BOOL WINAPI ChooseFontW(LPCHOOSEFONTW)
OPENFILENAMEA OPENFILENAME
struct _OFNOTIFYA * LPOFNOTIFYA
struct _OFNOTIFYW * LPOFNOTIFYW
struct tagPSDA * LPPAGESETUPDLGA
HRESULT WINAPI PrintDlgExW(LPPRINTDLGEXW lppd)
HRESULT WINAPI PrintDlgExA(LPPRINTDLGEXA lppd)
static LPCSTR DWORD void * pvReserved
static HRESULT QueryInterface(REFIID, void **)
static ULONG WINAPI AddRef(IStream *iface)
struct _PSP * HPROPSHEETPAGE
unsigned __int3264 UINT_PTR
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
WORD ___MISSING_ALIGNMENT__
WORD ___MISSING_ALIGNMENT__
LPCSTR lpPrintTemplateName
LPPRINTHOOKPROC lpfnPrintHook
LPCSTR lpSetupTemplateName
LPSETUPHOOKPROC lpfnSetupHook
LPPRINTHOOKPROC lpfnPrintHook
LPSETUPHOOKPROC lpfnSetupHook
LPCWSTR lpPrintTemplateName
LPCWSTR lpSetupTemplateName
LPCSTR lpPageSetupTemplateName
HGLOBAL hPageSetupTemplate
LPPAGEPAINTHOOK lpfnPagePaintHook
LPPAGESETUPHOOK lpfnPageSetupHook
LPCWSTR lpPageSetupTemplateName
LPPAGEPAINTHOOK lpfnPagePaintHook
LPPAGESETUPHOOK lpfnPageSetupHook
HGLOBAL hPageSetupTemplate
struct _devicemodeW * LPDEVMODEW
_Must_inspect_result_ _In_ ULONG Flags