mingw-5.1.4/win32/include/oledlg.h
changeset 0 76b1f169d9fe
equal deleted inserted replaced
-1:000000000000 0:76b1f169d9fe
       
     1 #ifndef _OLEDLG_H
       
     2 #define _OLEDLG_H
       
     3 #if __GNUC__ >=3
       
     4 #pragma GCC system_header
       
     5 #endif
       
     6 
       
     7 #ifdef __cplusplus
       
     8 extern "C" {
       
     9 #endif
       
    10 #include <windows.h>
       
    11 #include <shellapi.h>
       
    12 #include <commdlg.h>
       
    13 #include <ole2.h>
       
    14 #include <string.h>
       
    15 /* #include <tchar.h> */
       
    16 #include <dlgs.h>
       
    17 #include <prsht.h>
       
    18 #define PS_MAXLINKTYPES 8
       
    19 #define OLESTDDELIM TEXT("\\")
       
    20 #define SZOLEUI_MSG_HELP TEXT("OLEUI_MSG_HELP")
       
    21 #define SZOLEUI_MSG_ENDDIALOG TEXT("OLEUI_MSG_ENDDIALOG")
       
    22 #define SZOLEUI_MSG_BROWSE TEXT("OLEUI_MSG_BROWSE")
       
    23 #define SZOLEUI_MSG_CHANGEICON TEXT("OLEUI_MSG_CHANGEICON")
       
    24 #define SZOLEUI_MSG_CLOSEBUSYDIALOG TEXT("OLEUI_MSG_CLOSEBUSYDIALOG")
       
    25 #define SZOLEUI_MSG_CONVERT TEXT("OLEUI_MSG_CONVERT")
       
    26 #define SZOLEUI_MSG_CHANGESOURCE TEXT("OLEUI_MSG_CHANGESOURCE")
       
    27 #define SZOLEUI_MSG_ADDCONTROL TEXT("OLEUI_MSG_ADDCONTROL")
       
    28 #define SZOLEUI_MSG_BROWSE_OFN TEXT("OLEUI_MSG_BROWSE_OFN")
       
    29 #define PROP_HWND_CHGICONDLG TEXT("HWND_CIDLG")
       
    30 #define IDC_OLEUIHELP 99
       
    31 #define IDC_IO_CREATENEW 2100
       
    32 #define IDC_IO_CREATEFROMFILE 2101
       
    33 #define IDC_IO_LINKFILE 2102
       
    34 #define IDC_IO_OBJECTTYPELIST 2103
       
    35 #define IDC_IO_DISPLAYASICON 2104
       
    36 #define IDC_IO_CHANGEICON 2105
       
    37 #define IDC_IO_FILE 2106
       
    38 #define IDC_IO_FILEDISPLAY 2107
       
    39 #define IDC_IO_RESULTIMAGE 2108
       
    40 #define IDC_IO_RESULTTEXT 2109
       
    41 #define IDC_IO_ICONDISPLAY 2110
       
    42 #define IDC_IO_OBJECTTYPETEXT 2111 
       
    43 #define IDC_IO_FILETEXT 2112 
       
    44 #define IDC_IO_FILETYPE 2113
       
    45 #define IDC_IO_INSERTCONTROL 2114
       
    46 #define IDC_IO_ADDCONTROL 2115
       
    47 #define IDC_IO_CONTROLTYPELIST 2116
       
    48 #define IDC_PS_PASTE 500
       
    49 #define IDC_PS_PASTELINK 501
       
    50 #define IDC_PS_SOURCETEXT 502
       
    51 #define IDC_PS_PASTELIST 503 
       
    52 #define IDC_PS_PASTELINKLIST 504 
       
    53 #define IDC_PS_DISPLAYLIST 505
       
    54 #define IDC_PS_DISPLAYASICON 506
       
    55 #define IDC_PS_ICONDISPLAY 507
       
    56 #define IDC_PS_CHANGEICON 508
       
    57 #define IDC_PS_RESULTIMAGE 509
       
    58 #define IDC_PS_RESULTTEXT 510
       
    59 #define IDC_CI_GROUP 120 
       
    60 #define IDC_CI_CURRENT 121
       
    61 #define IDC_CI_CURRENTICON 122
       
    62 #define IDC_CI_DEFAULT 123
       
    63 #define IDC_CI_DEFAULTICON 124
       
    64 #define IDC_CI_FROMFILE 125
       
    65 #define IDC_CI_FROMFILEEDIT 126
       
    66 #define IDC_CI_ICONLIST 127
       
    67 #define IDC_CI_LABEL 128 
       
    68 #define IDC_CI_LABELEDIT 129
       
    69 #define IDC_CI_BROWSE 130
       
    70 #define IDC_CI_ICONDISPLAY 131
       
    71 #define IDC_CV_OBJECTTYPE 150
       
    72 #define IDC_CV_DISPLAYASICON 152
       
    73 #define IDC_CV_CHANGEICON 153
       
    74 #define IDC_CV_ACTIVATELIST 154
       
    75 #define IDC_CV_CONVERTTO 155
       
    76 #define IDC_CV_ACTIVATEAS 156
       
    77 #define IDC_CV_RESULTTEXT 157
       
    78 #define IDC_CV_CONVERTLIST 158
       
    79 #define IDC_CV_ICONDISPLAY 165
       
    80 #define IDC_EL_CHANGESOURCE 201
       
    81 #define IDC_EL_AUTOMATIC 202
       
    82 #define IDC_EL_CANCELLINK 209
       
    83 #define IDC_EL_UPDATENOW 210
       
    84 #define IDC_EL_OPENSOURCE 211
       
    85 #define IDC_EL_MANUAL 212
       
    86 #define IDC_EL_LINKSOURCE 216
       
    87 #define IDC_EL_LINKTYPE 217
       
    88 #define IDC_EL_LINKSLISTBOX 206
       
    89 #define IDC_EL_COL1 220 
       
    90 #define IDC_EL_COL2 221 
       
    91 #define IDC_EL_COL3 222 
       
    92 #define IDC_BZ_RETRY 600
       
    93 #define IDC_BZ_ICON 601
       
    94 #define IDC_BZ_MESSAGE1 602 
       
    95 #define IDC_BZ_SWITCHTO 604
       
    96 #define IDC_UL_METER 1029 
       
    97 #define IDC_UL_STOP 1030 
       
    98 #define IDC_UL_PERCENT 1031 
       
    99 #define IDC_UL_PROGRESS 1032 
       
   100 #define IDC_PU_LINKS 900 
       
   101 #define IDC_PU_TEXT 901 
       
   102 #define IDC_PU_CONVERT 902 
       
   103 #define IDC_PU_ICON 908 
       
   104 #define IDC_GP_OBJECTNAME 1009
       
   105 #define IDC_GP_OBJECTTYPE 1010
       
   106 #define IDC_GP_OBJECTSIZE 1011
       
   107 #define IDC_GP_CONVERT 1013
       
   108 #define IDC_GP_OBJECTICON 1014 
       
   109 #define IDC_GP_OBJECTLOCATION 1022
       
   110 #define IDC_VP_PERCENT 1000
       
   111 #define IDC_VP_CHANGEICON 1001
       
   112 #define IDC_VP_EDITABLE 1002
       
   113 #define IDC_VP_ASICON 1003
       
   114 #define IDC_VP_RELATIVE 1005
       
   115 #define IDC_VP_SPIN 1006
       
   116 #define IDC_VP_SCALETXT 1034
       
   117 #define IDC_VP_ICONDISPLAY 1021
       
   118 #define IDC_VP_RESULTIMAGE 1033
       
   119 #define IDC_LP_OPENSOURCE 1006
       
   120 #define IDC_LP_UPDATENOW 1007
       
   121 #define IDC_LP_BREAKLINK 1008
       
   122 #define IDC_LP_LINKSOURCE 1012
       
   123 #define IDC_LP_CHANGESOURCE 1015
       
   124 #define IDC_LP_AUTOMATIC 1016
       
   125 #define IDC_LP_MANUAL 1017
       
   126 #define IDC_LP_DATE 1018
       
   127 #define IDC_LP_TIME 1019
       
   128 #define IDD_INSERTOBJECT 1000
       
   129 #define IDD_CHANGEICON 1001
       
   130 #define IDD_CONVERT 1002
       
   131 #define IDD_PASTESPECIAL 1003
       
   132 #define IDD_EDITLINKS 1004
       
   133 #define IDD_BUSY 1006
       
   134 #define IDD_UPDATELINKS 1007
       
   135 #define IDD_CHANGESOURCE 1009
       
   136 #define IDD_INSERTFILEBROWSE 1010
       
   137 #define IDD_CHANGEICONBROWSE 1011
       
   138 #define IDD_CONVERTONLY 1012
       
   139 #define IDD_CHANGESOURCE4 1013
       
   140 #define IDD_GNRLPROPS 1100
       
   141 #define IDD_VIEWPROPS 1101
       
   142 #define IDD_LINKPROPS 1102
       
   143 #define IDD_CANNOTUPDATELINK 1008
       
   144 #define IDD_LINKSOURCEUNAVAILABLE 1020
       
   145 #define IDD_SERVERNOTFOUND 1023
       
   146 #define IDD_OUTOFMEMORY 1024
       
   147 #define IDD_SERVERNOTREGW 1021
       
   148 #define IDD_LINKTYPECHANGEDW 1022
       
   149 #define IDD_SERVERNOTREGA 1025
       
   150 #define IDD_LINKTYPECHANGEDA 1026
       
   151 #define ID_BROWSE_CHANGEICON 1
       
   152 #define ID_BROWSE_INSERTFILE 2
       
   153 #define ID_BROWSE_ADDCONTROL 3
       
   154 #define ID_BROWSE_CHANGESOURCE 4
       
   155 #define OLEUI_FALSE 0
       
   156 #define OLEUI_SUCCESS 1 
       
   157 #define OLEUI_OK 1 
       
   158 #define OLEUI_CANCEL 2 
       
   159 #define OLEUI_ERR_STANDARDMIN 100
       
   160 #define OLEUI_ERR_STRUCTURENULL 101 
       
   161 #define OLEUI_ERR_STRUCTUREINVALID 102
       
   162 #define OLEUI_ERR_CBSTRUCTINCORRECT 103
       
   163 #define OLEUI_ERR_HWNDOWNERINVALID 104
       
   164 #define OLEUI_ERR_LPSZCAPTIONINVALID 105
       
   165 #define OLEUI_ERR_LPFNHOOKINVALID 106
       
   166 #define OLEUI_ERR_HINSTANCEINVALID 107
       
   167 #define OLEUI_ERR_LPSZTEMPLATEINVALID 108
       
   168 #define OLEUI_ERR_HRESOURCEINVALID 109
       
   169 #define OLEUI_ERR_FINDTEMPLATEFAILURE 110 
       
   170 #define OLEUI_ERR_LOADTEMPLATEFAILURE 111
       
   171 #define OLEUI_ERR_DIALOGFAILURE 112
       
   172 #define OLEUI_ERR_LOCALMEMALLOC 113
       
   173 #define OLEUI_ERR_GLOBALMEMALLOC 114
       
   174 #define OLEUI_ERR_LOADSTRING 115
       
   175 #define OLEUI_ERR_OLEMEMALLOC 116
       
   176 #define OLEUI_ERR_STANDARDMAX 116 
       
   177 #define OPF_OBJECTISLINK 1
       
   178 #define OPF_NOFILLDEFAULT 2
       
   179 #define OPF_SHOWHELP 4
       
   180 #define OPF_DISABLECONVERT 8
       
   181 #define OLEUI_OPERR_SUBPROPNULL OLEUI_ERR_STANDARDMAX
       
   182 #define OLEUI_OPERR_SUBPROPINVALID (OLEUI_ERR_STANDARDMAX+1)
       
   183 #define OLEUI_OPERR_PROPSHEETNULL (OLEUI_ERR_STANDARDMAX+2)
       
   184 #define OLEUI_OPERR_PROPSHEETINVALID (OLEUI_ERR_STANDARDMAX+3)
       
   185 #define OLEUI_OPERR_SUPPROP (OLEUI_ERR_STANDARDMAX+4)
       
   186 #define OLEUI_OPERR_PROPSINVALID (OLEUI_ERR_STANDARDMAX+5)
       
   187 #define OLEUI_OPERR_PAGESINCORRECT (OLEUI_ERR_STANDARDMAX+6)
       
   188 #define OLEUI_OPERR_INVALIDPAGES (OLEUI_ERR_STANDARDMAX+7)
       
   189 #define OLEUI_OPERR_NOTSUPPORTED (OLEUI_ERR_STANDARDMAX+8)
       
   190 #define OLEUI_OPERR_DLGPROCNOTNULL (OLEUI_ERR_STANDARDMAX+9)
       
   191 #define OLEUI_OPERR_LPARAMNOTZERO (OLEUI_ERR_STANDARDMAX+10)
       
   192 #define OLEUI_GPERR_STRINGINVALID (OLEUI_ERR_STANDARDMAX+11)
       
   193 #define OLEUI_GPERR_CLASSIDINVALID (OLEUI_ERR_STANDARDMAX+12)
       
   194 #define OLEUI_GPERR_LPCLSIDEXCLUDEINVALID (OLEUI_ERR_STANDARDMAX+13)
       
   195 #define OLEUI_GPERR_CBFORMATINVALID (OLEUI_ERR_STANDARDMAX+14)
       
   196 #define OLEUI_VPERR_METAPICTINVALID (OLEUI_ERR_STANDARDMAX+15)
       
   197 #define OLEUI_VPERR_DVASPECTINVALID (OLEUI_ERR_STANDARDMAX+16)
       
   198 #define OLEUI_LPERR_LINKCNTRNULL (OLEUI_ERR_STANDARDMAX+17)
       
   199 #define OLEUI_LPERR_LINKCNTRINVALID (OLEUI_ERR_STANDARDMAX+18)
       
   200 #define OLEUI_OPERR_PROPERTYSHEET (OLEUI_ERR_STANDARDMAX+19)
       
   201 #define OLEUI_OPERR_OBJINFOINVALID (OLEUI_ERR_STANDARDMAX+20)
       
   202 #define OLEUI_OPERR_LINKINFOINVALID (OLEUI_ERR_STANDARDMAX+21)
       
   203 #define OLEUI_QUERY_GETCLASSID 65280
       
   204 #define OLEUI_QUERY_LINKBROKEN 65281 
       
   205 #define IOF_SHOWHELP 1
       
   206 #define IOF_SELECTCREATENEW 2
       
   207 #define IOF_SELECTCREATEFROMFILE 4
       
   208 #define IOF_CHECKLINK 8
       
   209 #define IOF_CHECKDISPLAYASICON 16
       
   210 #define IOF_CREATENEWOBJECT 32
       
   211 #define IOF_CREATEFILEOBJECT 64
       
   212 #define IOF_CREATELINKOBJECT 128
       
   213 #define IOF_DISABLELINK 256
       
   214 #define IOF_VERIFYSERVERSEXIST 512
       
   215 #define IOF_DISABLEDISPLAYASICON 1024
       
   216 #define IOF_HIDECHANGEICON 2048
       
   217 #define IOF_SHOWINSERTCONTROL 4096
       
   218 #define IOF_SELECTCREATECONTROL 8192
       
   219 #define OLEUI_IOERR_LPSZFILEINVALID OLEUI_ERR_STANDARDMAX
       
   220 #define OLEUI_IOERR_LPSZLABELINVALID (OLEUI_ERR_STANDARDMAX+1)
       
   221 #define OLEUI_IOERR_HICONINVALID (OLEUI_ERR_STANDARDMAX+2)
       
   222 #define OLEUI_IOERR_LPFORMATETCINVALID (OLEUI_ERR_STANDARDMAX+3)
       
   223 #define OLEUI_IOERR_PPVOBJINVALID (OLEUI_ERR_STANDARDMAX+4)
       
   224 #define OLEUI_IOERR_LPIOLECLIENTSITEINVALID (OLEUI_ERR_STANDARDMAX+5)
       
   225 #define OLEUI_IOERR_LPISTORAGEINVALID (OLEUI_ERR_STANDARDMAX+6)
       
   226 #define OLEUI_IOERR_SCODEHASERROR (OLEUI_ERR_STANDARDMAX+7)
       
   227 #define OLEUI_IOERR_LPCLSIDEXCLUDEINVALID (OLEUI_ERR_STANDARDMAX+8)
       
   228 #define OLEUI_IOERR_CCHFILEINVALID (OLEUI_ERR_STANDARDMAX+9)
       
   229 #define PSF_SHOWHELP 1
       
   230 #define PSF_SELECTPASTE 2
       
   231 #define PSF_SELECTPASTELINK 4
       
   232 #define PSF_CHECKDISPLAYASICON 8
       
   233 #define PSF_DISABLEDISPLAYASICON 16
       
   234 #define PSF_HIDECHANGEICON 32
       
   235 #define PSF_STAYONCLIPBOARDCHANGE 64
       
   236 #define PSF_NOREFRESHDATAOBJECT 128
       
   237 #define OLEUI_IOERR_SRCDATAOBJECTINVALID OLEUI_ERR_STANDARDMAX
       
   238 #define OLEUI_IOERR_ARRPASTEENTRIESINVALID (OLEUI_ERR_STANDARDMAX+1)
       
   239 #define OLEUI_IOERR_ARRLINKTYPESINVALID (OLEUI_ERR_STANDARDMAX+2)
       
   240 #define OLEUI_PSERR_CLIPBOARDCHANGED (OLEUI_ERR_STANDARDMAX+3)
       
   241 #define OLEUI_PSERR_GETCLIPBOARDFAILED (OLEUI_ERR_STANDARDMAX+4)
       
   242 #define OLEUI_ELERR_LINKCNTRNULL OLEUI_ERR_STANDARDMAX
       
   243 #define OLEUI_ELERR_LINKCNTRINVALID (OLEUI_ERR_STANDARDMAX+1)
       
   244 #define ELF_SHOWHELP 1
       
   245 #define ELF_DISABLEUPDATENOW 2
       
   246 #define ELF_DISABLEOPENSOURCE 4
       
   247 #define ELF_DISABLECHANGESOURCE 8
       
   248 #define ELF_DISABLECANCELLINK 16
       
   249 #define CIF_SHOWHELP 1
       
   250 #define CIF_SELECTCURRENT 2
       
   251 #define CIF_SELECTDEFAULT 4
       
   252 #define CIF_SELECTFROMFILE 8
       
   253 #define CIF_USEICONEXE 16
       
   254 #define OLEUI_CIERR_MUSTHAVECLSID OLEUI_ERR_STANDARDMAX
       
   255 #define OLEUI_CIERR_MUSTHAVECURRENTMETAFILE (OLEUI_ERR_STANDARDMAX+1)
       
   256 #define OLEUI_CIERR_SZICONEXEINVALID (OLEUI_ERR_STANDARDMAX+2)
       
   257 #define CF_SHOWHELPBUTTON 1
       
   258 #define CF_SETCONVERTDEFAULT 2
       
   259 #define CF_SETACTIVATEDEFAULT 4
       
   260 #define CF_SELECTCONVERTTO 8
       
   261 #define CF_SELECTACTIVATEAS 16
       
   262 #define CF_DISABLEDISPLAYASICON 32
       
   263 #define CF_DISABLEACTIVATEAS 64
       
   264 #define CF_HIDECHANGEICON 128
       
   265 #define CF_CONVERTONLY 256
       
   266 #define OLEUI_CTERR_CLASSIDINVALID (OLEUI_ERR_STANDARDMAX+1)
       
   267 #define OLEUI_CTERR_DVASPECTINVALID (OLEUI_ERR_STANDARDMAX+2)
       
   268 #define OLEUI_CTERR_CBFORMATINVALID (OLEUI_ERR_STANDARDMAX+3)
       
   269 #define OLEUI_CTERR_HMETAPICTINVALID (OLEUI_ERR_STANDARDMAX+4)
       
   270 #define OLEUI_CTERR_STRINGINVALID (OLEUI_ERR_STANDARDMAX+5)
       
   271 #define BZ_DISABLECANCELBUTTON 1
       
   272 #define BZ_DISABLESWITCHTOBUTTON 2
       
   273 #define BZ_DISABLERETRYBUTTON 4
       
   274 #define BZ_NOTRESPONDINGDIALOG 8
       
   275 #define OLEUI_BZERR_HTASKINVALID OLEUI_ERR_STANDARDMAX
       
   276 #define OLEUI_BZ_SWITCHTOSELECTED (OLEUI_ERR_STANDARDMAX+1)
       
   277 #define OLEUI_BZ_RETRYSELECTED (OLEUI_ERR_STANDARDMAX+2)
       
   278 #define OLEUI_BZ_CALLUNBLOCKED (OLEUI_ERR_STANDARDMAX+3)
       
   279 #define CSF_SHOWHELP 1
       
   280 #define CSF_VALIDSOURCE 2
       
   281 #define CSF_ONLYGETSOURCE 4
       
   282 #define CSF_EXPLORER 8
       
   283 #define OLEUI_CSERR_LINKCNTRNULL OLEUI_ERR_STANDARDMAX
       
   284 #define OLEUI_CSERR_LINKCNTRINVALID (OLEUI_ERR_STANDARDMAX+1)
       
   285 #define OLEUI_CSERR_FROMNOTNULL (OLEUI_ERR_STANDARDMAX+2)
       
   286 #define OLEUI_CSERR_TONOTNULL (OLEUI_ERR_STANDARDMAX+3)
       
   287 #define OLEUI_CSERR_SOURCENULL (OLEUI_ERR_STANDARDMAX+4)
       
   288 #define OLEUI_CSERR_SOURCEINVALID (OLEUI_ERR_STANDARDMAX+5)
       
   289 #define OLEUI_CSERR_SOURCEPARSERROR (OLEUI_ERR_STANDARDMAX+6)
       
   290 #define OLEUI_CSERR_SOURCEPARSEERROR (OLEUI_ERR_STANDARDMAX+7)
       
   291 #define VPF_SELECTRELATIVE 1
       
   292 #define VPF_DISABLERELATIVE 2
       
   293 #define VPF_DISABLESCALE 4
       
   294 
       
   295 #ifndef RC_INVOKED
       
   296 #pragma pack(push, 8)
       
   297 typedef UINT (CALLBACK *LPFNOLEUIHOOK)(HWND, UINT, WPARAM, LPARAM);
       
   298 typedef struct tagOLEUIINSERTOBJECTW {
       
   299 	DWORD cbStruct;
       
   300 	DWORD dwFlags;
       
   301 	HWND hWndOwner;
       
   302 	LPCWSTR lpszCaption;
       
   303 	LPFNOLEUIHOOK lpfnHook;
       
   304 	LPARAM lCustData;
       
   305 	HINSTANCE hInstance;
       
   306 	LPCWSTR lpszTemplate;
       
   307 	HRSRC hResource;
       
   308 	CLSID clsid;
       
   309 	LPWSTR lpszFile;
       
   310 	UINT cchFile;
       
   311 	UINT cClsidExclude;
       
   312 	LPCLSID lpClsidExclude;
       
   313 	IID iid;
       
   314 	DWORD oleRender;
       
   315 	LPFORMATETC lpFormatEtc;
       
   316 	LPOLECLIENTSITE lpIOleClientSite;
       
   317 	LPSTORAGE lpIStorage;
       
   318 	PVOID *ppvObj;
       
   319 	SCODE sc;
       
   320 	HGLOBAL hMetaPict;
       
   321 } OLEUIINSERTOBJECTW,*POLEUIINSERTOBJECTW,*LPOLEUIINSERTOBJECTW;
       
   322 typedef struct tagOLEUIINSERTOBJECTA {
       
   323 	DWORD cbStruct;
       
   324 	DWORD dwFlags;
       
   325 	HWND hWndOwner;
       
   326 	LPCSTR lpszCaption;
       
   327 	LPFNOLEUIHOOK lpfnHook;
       
   328 	LPARAM lCustData;
       
   329 	HINSTANCE hInstance;
       
   330 	LPCSTR lpszTemplate;
       
   331 	HRSRC hResource;
       
   332 	CLSID clsid;
       
   333 	LPSTR lpszFile;
       
   334 	UINT cchFile;
       
   335 	UINT cClsidExclude;
       
   336 	LPCLSID lpClsidExclude;
       
   337 	IID iid;
       
   338 	DWORD oleRender;
       
   339 	LPFORMATETC lpFormatEtc;
       
   340 	LPOLECLIENTSITE lpIOleClientSite;
       
   341 	LPSTORAGE lpIStorage;
       
   342 	PVOID *ppvObj;
       
   343 	SCODE sc;
       
   344 	HGLOBAL hMetaPict;
       
   345 } OLEUIINSERTOBJECTA,*POLEUIINSERTOBJECTA,*LPOLEUIINSERTOBJECTA;
       
   346 STDAPI_(UINT) OleUIInsertObjectW(LPOLEUIINSERTOBJECTW);
       
   347 STDAPI_(UINT) OleUIInsertObjectA(LPOLEUIINSERTOBJECTA);
       
   348 typedef enum tagOLEUIPASTEFLAG {
       
   349 	OLEUIPASTE_PASTEONLY,
       
   350 	OLEUIPASTE_LINKTYPE1,
       
   351 	OLEUIPASTE_LINKTYPE2,
       
   352 	OLEUIPASTE_LINKTYPE3=4,
       
   353 	OLEUIPASTE_LINKTYPE4=8,
       
   354 	OLEUIPASTE_LINKTYPE5=16,
       
   355 	OLEUIPASTE_LINKTYPE6=32,
       
   356 	OLEUIPASTE_LINKTYPE7=64,
       
   357 	OLEUIPASTE_LINKTYPE8=128,
       
   358 	OLEUIPASTE_PASTE=512,
       
   359 	OLEUIPASTE_LINKANYTYPE=1024,
       
   360 	OLEUIPASTE_ENABLEICON=2048 
       
   361 } OLEUIPASTEFLAG;
       
   362 typedef struct tagOLEUIPASTEENTRYW {
       
   363 	FORMATETC fmtetc;
       
   364 	LPCWSTR lpstrFormatName;
       
   365 	LPCWSTR lpstrResultText;
       
   366 	DWORD dwFlags;
       
   367 	DWORD dwScratchSpace;
       
   368 } OLEUIPASTEENTRYW,*POLEUIPASTEENTRYW,*LPOLEUIPASTEENTRYW;
       
   369 typedef struct tagOLEUIPASTEENTRYA {
       
   370 	FORMATETC fmtetc;
       
   371 	LPCSTR lpstrFormatName;
       
   372 	LPCSTR lpstrResultText;
       
   373 	DWORD dwFlags;
       
   374 	DWORD dwScratchSpace;
       
   375 } OLEUIPASTEENTRYA,*POLEUIPASTEENTRYA,*LPOLEUIPASTEENTRYA;
       
   376 typedef struct tagOLEUIPASTESPECIALW {
       
   377 	DWORD cbStruct;
       
   378 	DWORD dwFlags;
       
   379 	HWND hWndOwner;
       
   380 	LPCWSTR lpszCaption;
       
   381 	LPFNOLEUIHOOK lpfnHook;
       
   382 	LPARAM lCustData;
       
   383 	HINSTANCE hInstance;
       
   384 	LPCWSTR lpszTemplate;
       
   385 	HRSRC hResource;
       
   386 	LPDATAOBJECT lpSrcDataObj;
       
   387 	LPOLEUIPASTEENTRYW arrPasteEntries;
       
   388 	int cPasteEntries;
       
   389 	UINT *arrLinkTypes;
       
   390 	int cLinkTypes;
       
   391 	UINT cClsidExclude;
       
   392 	LPCLSID lpClsidExclude;
       
   393 	int nSelectedIndex;
       
   394 	BOOL fLink;
       
   395 	HGLOBAL hMetaPict;
       
   396 	SIZEL sizel;
       
   397 } OLEUIPASTESPECIALW,*POLEUIPASTESPECIALW,*LPOLEUIPASTESPECIALW;
       
   398 typedef struct tagOLEUIPASTESPECIALA {
       
   399 	DWORD cbStruct;
       
   400 	DWORD dwFlags;
       
   401 	HWND hWndOwner;
       
   402 	LPCSTR lpszCaption;
       
   403 	LPFNOLEUIHOOK lpfnHook;
       
   404 	LPARAM lCustData;
       
   405 	HINSTANCE hInstance;
       
   406 	LPCSTR lpszTemplate;
       
   407 	HRSRC hResource;
       
   408 	LPDATAOBJECT lpSrcDataObj;
       
   409 	LPOLEUIPASTEENTRYA arrPasteEntries;
       
   410 	int cPasteEntries;
       
   411 	UINT *arrLinkTypes;
       
   412 	int cLinkTypes;
       
   413 	UINT cClsidExclude;
       
   414 	LPCLSID lpClsidExclude;
       
   415 	int nSelectedIndex;
       
   416 	BOOL fLink;
       
   417 	HGLOBAL hMetaPict;
       
   418 	SIZEL sizel;
       
   419 } OLEUIPASTESPECIALA,*POLEUIPASTESPECIALA,*LPOLEUIPASTESPECIALA;
       
   420 #define INTERFACE IOleUILinkContainerW
       
   421 DECLARE_INTERFACE_(IOleUILinkContainerW, IUnknown)
       
   422 {
       
   423 	STDMETHOD(QueryInterface) (THIS_ REFIID,PVOID*) PURE;
       
   424 	STDMETHOD_(ULONG,AddRef) (THIS) PURE;
       
   425 	STDMETHOD_(ULONG,Release) (THIS) PURE;
       
   426 	STDMETHOD_(DWORD,GetNextLink) (THIS_ DWORD dwLink) PURE;
       
   427 	STDMETHOD(SetLinkUpdateOptions) (THIS_ DWORD,DWORD) PURE;
       
   428 	STDMETHOD(GetLinkUpdateOptions) (THIS_ DWORD,PDWORD) PURE;
       
   429 	STDMETHOD(SetLinkSource) (THIS_ DWORD, LPWSTR,ULONG,PULONG,BOOL) PURE;
       
   430 	STDMETHOD(GetLinkSource) (THIS_ DWORD,LPWSTR*,PULONG,LPWSTR*,LPWSTR*,BOOL*,BOOL*) PURE;
       
   431 	STDMETHOD(OpenLinkSource) (THIS_ DWORD) PURE;
       
   432 	STDMETHOD(UpdateLink) (THIS_ DWORD,BOOL,BOOL) PURE;
       
   433 	STDMETHOD(CancelLink) (THIS_ DWORD) PURE;
       
   434 };
       
   435 #undef INTERFACE
       
   436 typedef IOleUILinkContainerW *LPOLEUILINKCONTAINERW;
       
   437 #define INTERFACE IOleUILinkContainerA
       
   438 DECLARE_INTERFACE_(IOleUILinkContainerA, IUnknown)
       
   439 {
       
   440 	STDMETHOD(QueryInterface) (THIS_ REFIID,PVOID*) PURE;
       
   441 	STDMETHOD_(ULONG,AddRef) (THIS) PURE;
       
   442 	STDMETHOD_(ULONG,Release) (THIS) PURE;
       
   443 	STDMETHOD_(DWORD,GetNextLink) (THIS_ DWORD) PURE;
       
   444 	STDMETHOD(SetLinkUpdateOptions) (THIS_ DWORD,DWORD) PURE;
       
   445 	STDMETHOD(GetLinkUpdateOptions) (THIS_ DWORD,PDWORD) PURE;
       
   446 	STDMETHOD(SetLinkSource) (THIS_ DWORD, LPSTR,ULONG,PULONG,BOOL) PURE;
       
   447 	STDMETHOD(GetLinkSource) (THIS_ DWORD,LPSTR*,PULONG,LPSTR*,LPSTR*,BOOL*,BOOL*) PURE;
       
   448 	STDMETHOD(OpenLinkSource) (THIS_ DWORD) PURE;
       
   449 	STDMETHOD(UpdateLink) (THIS_ DWORD,BOOL,BOOL) PURE;
       
   450 	STDMETHOD(CancelLink) (THIS_ DWORD) PURE;
       
   451 };
       
   452 #undef INTERFACE
       
   453 typedef IOleUILinkContainerA *LPOLEUILINKCONTAINERA;
       
   454 typedef struct tagOLEUIEDITLINKSW {
       
   455 	DWORD cbStruct;
       
   456 	DWORD dwFlags;
       
   457 	HWND hWndOwner;
       
   458 	LPCWSTR lpszCaption;
       
   459 	LPFNOLEUIHOOK lpfnHook;
       
   460 	LPARAM lCustData;
       
   461 	HINSTANCE hInstance;
       
   462 	LPCWSTR lpszTemplate;
       
   463 	HRSRC hResource;
       
   464 	LPOLEUILINKCONTAINERW lpOleUILinkContainer;
       
   465 } OLEUIEDITLINKSW,*POLEUIEDITLINKSW,*LPOLEUIEDITLINKSW;
       
   466 typedef struct tagOLEUIEDITLINKSA {
       
   467 	DWORD cbStruct;
       
   468 	DWORD dwFlags;
       
   469 	HWND hWndOwner;
       
   470 	LPCSTR lpszCaption;
       
   471 	LPFNOLEUIHOOK lpfnHook;
       
   472 	LPARAM lCustData;
       
   473 	HINSTANCE hInstance;
       
   474 	LPCSTR lpszTemplate;
       
   475 	HRSRC hResource;
       
   476 	LPOLEUILINKCONTAINERA lpOleUILinkContainer;
       
   477 } OLEUIEDITLINKSA,*POLEUIEDITLINKSA,*LPOLEUIEDITLINKSA;
       
   478 typedef struct tagOLEUICHANGEICONW {
       
   479 	DWORD cbStruct;
       
   480 	DWORD dwFlags;
       
   481 	HWND hWndOwner;
       
   482 	LPCWSTR lpszCaption;
       
   483 	LPFNOLEUIHOOK lpfnHook;
       
   484 	LPARAM lCustData;
       
   485 	HINSTANCE hInstance;
       
   486 	LPCWSTR lpszTemplate;
       
   487 	HRSRC hResource;
       
   488 	HGLOBAL hMetaPict;
       
   489 	CLSID clsid;
       
   490 	WCHAR szIconExe[MAX_PATH];
       
   491 	int cchIconExe;
       
   492 } OLEUICHANGEICONW,*POLEUICHANGEICONW,*LPOLEUICHANGEICONW;
       
   493 typedef struct tagOLEUICHANGEICONA {
       
   494 	DWORD cbStruct;
       
   495 	DWORD dwFlags;
       
   496 	HWND hWndOwner;
       
   497 	LPCSTR lpszCaption;
       
   498 	LPFNOLEUIHOOK lpfnHook;
       
   499 	LPARAM lCustData;
       
   500 	HINSTANCE hInstance;
       
   501 	LPCSTR lpszTemplate;
       
   502 	HRSRC hResource;
       
   503 	HGLOBAL hMetaPict;
       
   504 	CLSID clsid;
       
   505 	CHAR szIconExe[MAX_PATH];
       
   506 	int cchIconExe;
       
   507 } OLEUICHANGEICONA,*POLEUICHANGEICONA,*LPOLEUICHANGEICONA;
       
   508 typedef struct tagOLEUICONVERTW {
       
   509 	DWORD cbStruct;
       
   510 	DWORD dwFlags;
       
   511 	HWND hWndOwner;
       
   512 	LPCWSTR lpszCaption;
       
   513 	LPFNOLEUIHOOK lpfnHook;
       
   514 	LPARAM lCustData;
       
   515 	HINSTANCE hInstance;
       
   516 	LPCWSTR lpszTemplate;
       
   517 	HRSRC hResource;
       
   518 	CLSID clsid;
       
   519 	CLSID clsidConvertDefault;
       
   520 	CLSID clsidActivateDefault;
       
   521 	CLSID clsidNew;
       
   522 	DWORD dvAspect;
       
   523 	WORD wFormat;
       
   524 	BOOL fIsLinkedObject;
       
   525 	HGLOBAL hMetaPict;
       
   526 	LPWSTR lpszUserType;
       
   527 	BOOL fObjectsIconChanged;
       
   528 	LPWSTR lpszDefLabel;
       
   529 	UINT cClsidExclude;
       
   530 	LPCLSID lpClsidExclude;
       
   531 } OLEUICONVERTW,*POLEUICONVERTW,*LPOLEUICONVERTW;
       
   532 typedef struct tagOLEUICONVERTA {
       
   533 	DWORD cbStruct;
       
   534 	DWORD dwFlags;
       
   535 	HWND hWndOwner;
       
   536 	LPCSTR lpszCaption;
       
   537 	LPFNOLEUIHOOK lpfnHook;
       
   538 	LPARAM lCustData;
       
   539 	HINSTANCE hInstance;
       
   540 	LPCSTR lpszTemplate;
       
   541 	HRSRC hResource;
       
   542 	CLSID clsid;
       
   543 	CLSID clsidConvertDefault;
       
   544 	CLSID clsidActivateDefault;
       
   545 	CLSID clsidNew;
       
   546 	DWORD dvAspect;
       
   547 	WORD wFormat;
       
   548 	BOOL fIsLinkedObject;
       
   549 	HGLOBAL hMetaPict;
       
   550 	LPSTR lpszUserType;
       
   551 	BOOL fObjectsIconChanged;
       
   552 	LPSTR lpszDefLabel;
       
   553 	UINT cClsidExclude;
       
   554 	LPCLSID lpClsidExclude;
       
   555 } OLEUICONVERTA,*POLEUICONVERTA,*LPOLEUICONVERTA;
       
   556 typedef struct tagOLEUIBUSYW {
       
   557 	DWORD cbStruct;
       
   558 	DWORD dwFlags;
       
   559 	HWND hWndOwner;
       
   560 	LPCWSTR lpszCaption;
       
   561 	LPFNOLEUIHOOK lpfnHook;
       
   562 	LPARAM lCustData;
       
   563 	HINSTANCE hInstance;
       
   564 	LPCWSTR lpszTemplate;
       
   565 	HRSRC hResource;
       
   566 	HTASK hTask;
       
   567 	HWND *lphWndDialog;
       
   568 } OLEUIBUSYW,*POLEUIBUSYW,*LPOLEUIBUSYW;
       
   569 typedef struct tagOLEUIBUSYA {
       
   570 	DWORD cbStruct;
       
   571 	DWORD dwFlags;
       
   572 	HWND hWndOwner;
       
   573 	LPCSTR lpszCaption;
       
   574 	LPFNOLEUIHOOK lpfnHook;
       
   575 	LPARAM lCustData;
       
   576 	HINSTANCE hInstance;
       
   577 	LPCSTR lpszTemplate;
       
   578 	HRSRC hResource;
       
   579 	HTASK hTask;
       
   580 	HWND *lphWndDialog;
       
   581 } OLEUIBUSYA,*POLEUIBUSYA,*LPOLEUIBUSYA;
       
   582 typedef struct tagOLEUICHANGESOURCEW {
       
   583 	DWORD cbStruct;
       
   584 	DWORD dwFlags;
       
   585 	HWND hWndOwner;
       
   586 	LPCWSTR lpszCaption;
       
   587 	LPFNOLEUIHOOK lpfnHook;
       
   588 	LPARAM lCustData;
       
   589 	HINSTANCE hInstance;
       
   590 	LPCWSTR lpszTemplate;
       
   591 	HRSRC hResource;
       
   592 	OPENFILENAMEW* lpOFN;
       
   593 	DWORD dwReserved1[4];
       
   594 	LPOLEUILINKCONTAINERW lpOleUILinkContainer;
       
   595 	DWORD dwLink;
       
   596 	LPWSTR lpszDisplayName;
       
   597 	ULONG nFileLength;
       
   598 	LPWSTR lpszFrom;
       
   599 	LPWSTR lpszTo;
       
   600 } OLEUICHANGESOURCEW,*POLEUICHANGESOURCEW,*LPOLEUICHANGESOURCEW;
       
   601 typedef struct tagOLEUICHANGESOURCEA {
       
   602 	DWORD cbStruct;
       
   603 	DWORD dwFlags;
       
   604 	HWND hWndOwner;
       
   605 	LPCSTR lpszCaption;
       
   606 	LPFNOLEUIHOOK lpfnHook;
       
   607 	LPARAM lCustData;
       
   608 	HINSTANCE hInstance;
       
   609 	LPCSTR lpszTemplate;
       
   610 	HRSRC hResource;
       
   611 	OPENFILENAMEA *lpOFN;
       
   612 	DWORD dwReserved1[4];
       
   613 	LPOLEUILINKCONTAINERA lpOleUILinkContainer;
       
   614 	DWORD dwLink;
       
   615 	LPSTR lpszDisplayName;
       
   616 	ULONG nFileLength;
       
   617 	LPSTR lpszFrom;
       
   618 	LPSTR lpszTo;
       
   619 } OLEUICHANGESOURCEA,*POLEUICHANGESOURCEA,*LPOLEUICHANGESOURCEA;
       
   620 #define INTERFACE IOleUIObjInfoW
       
   621 DECLARE_INTERFACE_(IOleUIObjInfoW, IUnknown)
       
   622 {
       
   623 	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
       
   624 	STDMETHOD_(ULONG,AddRef)(THIS) PURE;
       
   625 	STDMETHOD_(ULONG,Release)(THIS) PURE;
       
   626 	STDMETHOD(GetObjectInfo)(THIS_ DWORD,PDWORD,LPWSTR*,LPWSTR*,LPWSTR*,LPWSTR*) PURE;
       
   627 	STDMETHOD(GetConvertInfo)(THIS_ DWORD,CLSID*,PWORD,CLSID*,LPCLSID*,UINT*) PURE;
       
   628 	STDMETHOD(ConvertObject)(THIS_ DWORD,REFCLSID) PURE;
       
   629 	STDMETHOD(GetViewInfo)(THIS_ DWORD,HGLOBAL*,PDWORD,int*) PURE;
       
   630 	STDMETHOD(SetViewInfo)(THIS_ DWORD,HGLOBAL,DWORD,int,BOOL) PURE;
       
   631 };
       
   632 #undef INTERFACE
       
   633 typedef IOleUIObjInfoW *LPOLEUIOBJINFOW;
       
   634 #define INTERFACE IOleUIObjInfoA
       
   635 DECLARE_INTERFACE_(IOleUIObjInfoA, IUnknown)
       
   636 {
       
   637 	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
       
   638 	STDMETHOD_(ULONG,AddRef)(THIS) PURE;
       
   639 	STDMETHOD_(ULONG,Release)(THIS) PURE;
       
   640 	STDMETHOD(GetObjectInfo)(THIS_ DWORD,PDWORD,LPSTR*,LPSTR*,LPSTR*,LPSTR*) PURE;
       
   641 	STDMETHOD(GetConvertInfo)(THIS_ DWORD,CLSID*,PWORD,CLSID*,LPCLSID*,UINT*) PURE;
       
   642 	STDMETHOD(ConvertObject)(THIS_ DWORD,REFCLSID) PURE;
       
   643 	STDMETHOD(GetViewInfo)(THIS_ DWORD,HGLOBAL*,PDWORD,int*) PURE;
       
   644 	STDMETHOD(SetViewInfo)(THIS_ DWORD,HGLOBAL,DWORD,int,BOOL) PURE;
       
   645 };
       
   646 #undef INTERFACE
       
   647 typedef IOleUIObjInfoA *LPOLEUIOBJINFOA;
       
   648 #define INTERFACE IOleUILinkInfoW
       
   649 DECLARE_INTERFACE_(IOleUILinkInfoW, IOleUILinkContainerW)
       
   650 {
       
   651 	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
       
   652 	STDMETHOD_(ULONG,AddRef)(THIS) PURE;
       
   653 	STDMETHOD_(ULONG,Release)(THIS) PURE;
       
   654 	STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD) PURE;
       
   655 	STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD,DWORD) PURE;
       
   656 	STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD,DWORD*) PURE;
       
   657 	STDMETHOD(SetLinkSource)(THIS_ DWORD,LPWSTR,ULONG,PULONG,BOOL) PURE;
       
   658 	STDMETHOD(GetLinkSource)(THIS_ DWORD,LPWSTR*,PULONG,LPWSTR*,LPWSTR*,BOOL*,BOOL*) PURE;
       
   659 	STDMETHOD(OpenLinkSource)(THIS_ DWORD) PURE;
       
   660 	STDMETHOD(UpdateLink)(THIS_ DWORD,BOOL,BOOL) PURE;
       
   661 	STDMETHOD(CancelLink)(THIS_ DWORD) PURE;
       
   662 	STDMETHOD(GetLastUpdate)(THIS_ DWORD,FILETIME*) PURE;
       
   663 };
       
   664 #undef INTERFACE
       
   665 typedef IOleUILinkInfoW *LPOLEUILINKINFOW;
       
   666 #define INTERFACE IOleUILinkInfoA
       
   667 DECLARE_INTERFACE_(IOleUILinkInfoA, IOleUILinkContainerA)
       
   668 {
       
   669 	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
       
   670 	STDMETHOD_(ULONG,AddRef)(THIS) PURE;
       
   671 	STDMETHOD_(ULONG,Release)(THIS) PURE;
       
   672 	STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD) PURE;
       
   673 	STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD,DWORD) PURE;
       
   674 	STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD,DWORD*) PURE;
       
   675 	STDMETHOD(SetLinkSource)(THIS_ DWORD,LPSTR,ULONG,PULONG,BOOL) PURE;
       
   676 	STDMETHOD(GetLinkSource)(THIS_ DWORD,LPSTR*,PULONG,LPSTR*,LPSTR*,BOOL*,BOOL*) PURE;
       
   677 	STDMETHOD(OpenLinkSource)(THIS_ DWORD) PURE;
       
   678 	STDMETHOD(UpdateLink)(THIS_ DWORD,BOOL,BOOL) PURE;
       
   679 	STDMETHOD(CancelLink)(THIS_ DWORD) PURE;
       
   680 	STDMETHOD(GetLastUpdate)(THIS_ DWORD,FILETIME*) PURE;
       
   681 };
       
   682 #undef INTERFACE
       
   683 typedef IOleUILinkInfoA* LPOLEUILINKINFOA;
       
   684 struct tagOLEUIOBJECTPROPSW;
       
   685 struct tagOLEUIOBJECTPROPSA;
       
   686 typedef struct tagOLEUIGNRLPROPSW {
       
   687 	DWORD cbStruct;
       
   688 	DWORD dwFlags;
       
   689 	DWORD dwReserved1[2];
       
   690 	LPFNOLEUIHOOK lpfnHook;
       
   691 	LPARAM lCustData;
       
   692 	DWORD dwReserved2[3];
       
   693 	struct tagOLEUIOBJECTPROPSW* lpOP;
       
   694 } OLEUIGNRLPROPSW,*POLEUIGNRLPROPSW,*LPOLEUIGNRLPROPSW;
       
   695 typedef struct tagOLEUIGNRLPROPSA {
       
   696 	DWORD cbStruct;
       
   697 	DWORD dwFlags;
       
   698 	DWORD dwReserved1[2];
       
   699 	LPFNOLEUIHOOK lpfnHook;
       
   700 	LPARAM lCustData;
       
   701 	DWORD dwReserved2[3];
       
   702 	struct tagOLEUIOBJECTPROPSA* lpOP;
       
   703 } OLEUIGNRLPROPSA,*POLEUIGNRLPROPSA,*LPOLEUIGNRLPROPSA;
       
   704 typedef struct tagOLEUIVIEWPROPSW {
       
   705 	DWORD cbStruct;
       
   706 	DWORD dwFlags;
       
   707 	DWORD dwReserved1[2];
       
   708 	LPFNOLEUIHOOK lpfnHook;
       
   709 	LPARAM lCustData;
       
   710 	DWORD dwReserved2[3];
       
   711 	struct tagOLEUIOBJECTPROPSW* lpOP;
       
   712 	int nScaleMin;
       
   713 	int nScaleMax;
       
   714 } OLEUIVIEWPROPSW,*POLEUIVIEWPROPSW,*LPOLEUIVIEWPROPSW;
       
   715 typedef struct tagOLEUIVIEWPROPSA {
       
   716 	DWORD cbStruct;
       
   717 	DWORD dwFlags;
       
   718 	DWORD dwReserved1[2];
       
   719 	LPFNOLEUIHOOK lpfnHook;
       
   720 	LPARAM lCustData;
       
   721 	DWORD dwReserved2[3];
       
   722 	struct tagOLEUIOBJECTPROPSA *lpOP;
       
   723 	int nScaleMin;
       
   724 	int nScaleMax;
       
   725 } OLEUIVIEWPROPSA,*POLEUIVIEWPROPSA,*LPOLEUIVIEWPROPSA;
       
   726 typedef struct tagOLEUILINKPROPSW {
       
   727 	DWORD cbStruct;
       
   728 	DWORD dwFlags;
       
   729 	DWORD dwReserved1[2];
       
   730 	LPFNOLEUIHOOK lpfnHook;
       
   731 	LPARAM lCustData;
       
   732 	DWORD dwReserved2[3];
       
   733 	struct tagOLEUIOBJECTPROPSW *lpOP;
       
   734 } OLEUILINKPROPSW, *POLEUILINKPROPSW,* LPOLEUILINKPROPSW;
       
   735 typedef struct tagOLEUILINKPROPSA {
       
   736 	DWORD cbStruct;
       
   737 	DWORD dwFlags;
       
   738 	DWORD dwReserved1[2];
       
   739 	LPFNOLEUIHOOK lpfnHook;
       
   740 	LPARAM lCustData;
       
   741 	DWORD dwReserved2[3];
       
   742 	struct tagOLEUIOBJECTPROPSA* lpOP;
       
   743 } OLEUILINKPROPSA,*POLEUILINKPROPSA,*LPOLEUILINKPROPSA;
       
   744 typedef struct tagOLEUIOBJECTPROPSW {
       
   745 	DWORD cbStruct;
       
   746 	DWORD dwFlags;
       
   747 	LPPROPSHEETHEADERW lpPS;
       
   748 	DWORD dwObject;
       
   749 	LPOLEUIOBJINFOW lpObjInfo;
       
   750 	DWORD dwLink;
       
   751 	LPOLEUILINKINFOW lpLinkInfo;
       
   752 	LPOLEUIGNRLPROPSW lpGP;
       
   753 	LPOLEUIVIEWPROPSW lpVP;
       
   754 	LPOLEUILINKPROPSW lpLP;
       
   755 } OLEUIOBJECTPROPSW,*POLEUIOBJECTPROPSW,*LPOLEUIOBJECTPROPSW;
       
   756 typedef struct tagOLEUIOBJECTPROPSA {
       
   757 	DWORD cbStruct;
       
   758 	DWORD dwFlags;
       
   759 	LPPROPSHEETHEADERA lpPS;
       
   760 	DWORD dwObject;
       
   761 	LPOLEUIOBJINFOA lpObjInfo;
       
   762 	DWORD dwLink;
       
   763 	LPOLEUILINKINFOA lpLinkInfo;
       
   764 	LPOLEUIGNRLPROPSA lpGP;
       
   765 	LPOLEUIVIEWPROPSA lpVP;
       
   766 	LPOLEUILINKPROPSA lpLP;
       
   767 } OLEUIOBJECTPROPSA,*POLEUIOBJECTPROPSA,*LPOLEUIOBJECTPROPSA;
       
   768 
       
   769 STDAPI_(BOOL) OleUIAddVerbMenuW(LPOLEOBJECT,LPCWSTR,HMENU,UINT,UINT,UINT,BOOL,UINT,HMENU*);
       
   770 STDAPI_(BOOL) OleUIAddVerbMenuA(LPOLEOBJECT,LPCSTR,HMENU,UINT,UINT,UINT,BOOL,UINT,HMENU*);
       
   771 STDAPI_(UINT) OleUIBusyW(LPOLEUIBUSYW);
       
   772 STDAPI_(UINT) OleUIBusyA(LPOLEUIBUSYA);
       
   773 STDAPI_(BOOL) OleUICanConvertOrActivateAs(REFCLSID,BOOL,WORD);
       
   774 STDAPI_(UINT) OleUIChangeIconW(LPOLEUICHANGEICONW);
       
   775 STDAPI_(UINT) OleUIChangeIconA(LPOLEUICHANGEICONA);
       
   776 STDAPI_(UINT) OleUIChangeSourceW(LPOLEUICHANGESOURCEW);
       
   777 STDAPI_(UINT) OleUIChangeSourceA(LPOLEUICHANGESOURCEA);
       
   778 STDAPI_(UINT) OleUIConvertW(LPOLEUICONVERTW);
       
   779 STDAPI_(UINT) OleUIConvertA(LPOLEUICONVERTA);
       
   780 STDAPI_(UINT) OleUIEditLinksW(LPOLEUIEDITLINKSW);
       
   781 STDAPI_(UINT) OleUIEditLinksA(LPOLEUIEDITLINKSA);
       
   782 STDAPI_(UINT) OleUIObjectPropertiesW(LPOLEUIOBJECTPROPSW);
       
   783 STDAPI_(UINT) OleUIObjectPropertiesA(LPOLEUIOBJECTPROPSA);
       
   784 STDAPI_(UINT) OleUIPasteSpecialW(LPOLEUIPASTESPECIALW);
       
   785 STDAPI_(UINT) OleUIPasteSpecialA(LPOLEUIPASTESPECIALA);
       
   786 int OleUIPromptUserW(int,HWND,...);
       
   787 int OleUIPromptUserA(int,HWND,...);
       
   788 STDAPI_(BOOL) OleUIUpdateLinksW(LPOLEUILINKCONTAINERW,HWND,LPWSTR,int);
       
   789 STDAPI_(BOOL) OleUIUpdateLinksA(LPOLEUILINKCONTAINERA,HWND,LPSTR,int);
       
   790 
       
   791 #ifdef UNICODE
       
   792 #define IDD_SERVERNOTREG IDD_SERVERNOTREGW
       
   793 #define IDD_LINKTYPECHANGED IDD_LINKTYPECHANGEDW
       
   794 #define OleUIUpdateLinks OleUIUpdateLinksW
       
   795 #define OleUIAddVerbMenu OleUIAddVerbMenuW
       
   796 #define tagOLEUIOBJECTPROPS tagOLEUIOBJECTPROPSW
       
   797 #define OLEUIOBJECTPROPS OLEUIOBJECTPROPSW
       
   798 #define POLEUIOBJECTPROPS POLEUIOBJECTPROPSW
       
   799 #define LPOLEUIOBJECTPROPS LPOLEUIOBJECTPROPSW
       
   800 #define OleUIObjectProperties OleUIObjectPropertiesW
       
   801 #define tagOLEUIINSERTOBJECT tagOLEUIINSERTOBJECTW
       
   802 #define OLEUIINSERTOBJECT OLEUIINSERTOBJECTW
       
   803 #define POLEUIINSERTOBJECT POLEUIINSERTOBJECTW
       
   804 #define LPOLEUIINSERTOBJECT LPOLEUIINSERTOBJECTW
       
   805 #define OleUIInsertObject OleUIInsertObjectW
       
   806 #define OleUIPromptUser OleUIPromptUserW
       
   807 #define tagOLEUIPASTEENTRY tagOLEUIPASTEENTRYW
       
   808 #define OLEUIPASTEENTRY OLEUIPASTEENTRYW
       
   809 #define POLEUIPASTEENTRY POLEUIPASTEENTRYW
       
   810 #define LPOLEUIPASTEENTRY LPOLEUIPASTEENTRYW
       
   811 #define tagOLEUIPASTESPECIAL tagOLEUIPASTESPECIALW
       
   812 #define OLEUIPASTESPECIAL OLEUIPASTESPECIALW
       
   813 #define POLEUIPASTESPECIAL POLEUIPASTESPECIALW
       
   814 #define LPOLEUIPASTESPECIAL LPOLEUIPASTESPECIALW
       
   815 #define OleUIPasteSpecial OleUIPasteSpecialW
       
   816 #define IOleUILinkContainer IOleUILinkContainerW
       
   817 #define LPOLEUILINKCONTAINER LPOLEUILINKCONTAINERW
       
   818 #define tagOLEUIEDITLINKS tagOLEUIEDITLINKSW
       
   819 #define OLEUIEDITLINKS OLEUIEDITLINKSW
       
   820 #define POLEUIEDITLINKS POLEUIEDITLINKSW
       
   821 #define LPOLEUIEDITLINKS LPOLEUIEDITLINKSW
       
   822 #define OleUIEditLinks OleUIEditLinksW
       
   823 #define tagOLEUICHANGEICON tagOLEUICHANGEICONW
       
   824 #define OLEUICHANGEICON OLEUICHANGEICONW
       
   825 #define POLEUICHANGEICON POLEUICHANGEICONW
       
   826 #define LPOLEUICHANGEICON LPOLEUICHANGEICONW
       
   827 #define OleUIChangeIcon OleUIChangeIconW
       
   828 #define tagOLEUICONVERT tagOLEUICONVERTW
       
   829 #define OLEUICONVERT OLEUICONVERTW
       
   830 #define POLEUICONVERT POLEUICONVERTW
       
   831 #define LPOLEUICONVERT LPOLEUICONVERTW
       
   832 #define OleUIConvert OleUIConvertW
       
   833 #define tagOLEUIBUSY tagOLEUIBUSYW
       
   834 #define OLEUIBUSY OLEUIBUSYW
       
   835 #define POLEUIBUSY POLEUIBUSYW
       
   836 #define LPOLEUIBUSY LPOLEUIBUSYW
       
   837 #define OleUIBusy OleUIBusyW
       
   838 #define tagOLEUICHANGESOURCE tagOLEUICHANGESOURCEW
       
   839 #define OLEUICHANGESOURCE OLEUICHANGESOURCEW
       
   840 #define POLEUICHANGESOURCE POLEUICHANGESOURCEW
       
   841 #define LPOLEUICHANGESOURCE LPOLEUICHANGESOURCEW
       
   842 #define OleUIChangeSource OleUIChangeSourceW
       
   843 #define IOleUIObjInfo IOleUIObjInfoW
       
   844 #define LPOLEUIOBJINFO LPOLEUIOBJINFOW
       
   845 #define IOleUILinkInfo IOleUILinkInfoW
       
   846 #define IOleUILinkInfoVtbl IOleUILinkInfoWVtbl
       
   847 #define LPOLEUILINKINFO LPOLEUILINKINFOW
       
   848 #define tagOLEUIGNRLPROPS tagOLEUIGNRLPROPSW
       
   849 #define OLEUIGNRLPROPS OLEUIGNRLPROPSW
       
   850 #define POLEUIGNRLPROPS POLEUIGNRLPROPSW
       
   851 #define LPOLEUIGNRLPROPS LPOLEUIGNRLPROPSW
       
   852 #define tagOLEUIVIEWPROPS tagOLEUIVIEWPROPSW
       
   853 #define OLEUIVIEWPROPS OLEUIVIEWPROPSW
       
   854 #define POLEUIVIEWPROPS POLEUIVIEWPROPSW
       
   855 #define LPOLEUIVIEWPROPS LPOLEUIVIEWPROPSW
       
   856 #define tagOLEUILINKPROPS tagOLEUILINKPROPSW
       
   857 #define OLEUILINKPROPS OLEUILINKPROPSW
       
   858 #define POLEUILINKPROPS POLEUILINKPROPSW
       
   859 #define LPOLEUILINKPROPS LPOLEUILINKPROPSW
       
   860 #else
       
   861 #define IDD_SERVERNOTREG IDD_SERVERNOTREGA
       
   862 #define IDD_LINKTYPECHANGED IDD_LINKTYPECHANGEDA
       
   863 #define OleUIUpdateLinks OleUIUpdateLinksA
       
   864 #define OleUIAddVerbMenu OleUIAddVerbMenuA
       
   865 #define tagOLEUIOBJECTPROPS tagOLEUIOBJECTPROPSA
       
   866 #define OLEUIOBJECTPROPS OLEUIOBJECTPROPSA
       
   867 #define POLEUIOBJECTPROPS POLEUIOBJECTPROPSA
       
   868 #define LPOLEUIOBJECTPROPS LPOLEUIOBJECTPROPSA
       
   869 #define OleUIObjectProperties OleUIObjectPropertiesA
       
   870 #define tagOLEUIINSERTOBJECT tagOLEUIINSERTOBJECTA
       
   871 #define OLEUIINSERTOBJECT OLEUIINSERTOBJECTA
       
   872 #define POLEUIINSERTOBJECT POLEUIINSERTOBJECTA
       
   873 #define LPOLEUIINSERTOBJECT LPOLEUIINSERTOBJECTA
       
   874 #define OleUIInsertObject OleUIInsertObjectA
       
   875 #define OleUIPromptUser OleUIPromptUserA
       
   876 #define tagOLEUIPASTEENTRY tagOLEUIPASTEENTRYA
       
   877 #define OLEUIPASTEENTRY OLEUIPASTEENTRYA
       
   878 #define POLEUIPASTEENTRY POLEUIPASTEENTRYA
       
   879 #define LPOLEUIPASTEENTRY LPOLEUIPASTEENTRYA
       
   880 #define tagOLEUIPASTESPECIAL tagOLEUIPASTESPECIALA
       
   881 #define OLEUIPASTESPECIAL OLEUIPASTESPECIALA
       
   882 #define POLEUIPASTESPECIAL POLEUIPASTESPECIALA
       
   883 #define LPOLEUIPASTESPECIAL LPOLEUIPASTESPECIALA
       
   884 #define OleUIPasteSpecial OleUIPasteSpecialA
       
   885 #define IOleUILinkContainer IOleUILinkContainerA
       
   886 #define LPOLEUILINKCONTAINER LPOLEUILINKCONTAINERA
       
   887 #define tagOLEUIEDITLINKS tagOLEUIEDITLINKSA
       
   888 #define OLEUIEDITLINKS OLEUIEDITLINKSA
       
   889 #define POLEUIEDITLINKS POLEUIEDITLINKSA
       
   890 #define LPOLEUIEDITLINKS LPOLEUIEDITLINKSA
       
   891 #define OleUIEditLinks OleUIEditLinksA
       
   892 #define tagOLEUICHANGEICON tagOLEUICHANGEICONA
       
   893 #define OLEUICHANGEICON OLEUICHANGEICONA
       
   894 #define POLEUICHANGEICON POLEUICHANGEICONA
       
   895 #define LPOLEUICHANGEICON LPOLEUICHANGEICONA
       
   896 #define OleUIChangeIcon OleUIChangeIconA
       
   897 #define tagOLEUICONVERT tagOLEUICONVERTA
       
   898 #define OLEUICONVERT OLEUICONVERTA
       
   899 #define POLEUICONVERT POLEUICONVERTA
       
   900 #define LPOLEUICONVERT LPOLEUICONVERTA
       
   901 #define OleUIConvert OleUIConvertA
       
   902 #define tagOLEUIBUSY tagOLEUIBUSYA
       
   903 #define OLEUIBUSY OLEUIBUSYA
       
   904 #define POLEUIBUSY POLEUIBUSYA
       
   905 #define LPOLEUIBUSY LPOLEUIBUSYA
       
   906 #define OleUIBusy OleUIBusyA
       
   907 #define tagOLEUICHANGESOURCE tagOLEUICHANGESOURCEA
       
   908 #define OLEUICHANGESOURCE OLEUICHANGESOURCEA
       
   909 #define POLEUICHANGESOURCE POLEUICHANGESOURCEA
       
   910 #define LPOLEUICHANGESOURCE LPOLEUICHANGESOURCEA
       
   911 #define OleUIChangeSource OleUIChangeSourceA
       
   912 #define IOleUIObjInfo IOleUIObjInfoA
       
   913 #define LPOLEUIOBJINFO LPOLEUIOBJINFOA
       
   914 #define IOleUILinkInfo IOleUILinkInfoA
       
   915 #define IOleUILinkInfoVtbl IOleUILinkInfoAVtbl
       
   916 #define LPOLEUILINKINFO LPOLEUILINKINFOA
       
   917 #define tagOLEUIGNRLPROPS tagOLEUIGNRLPROPSA
       
   918 #define OLEUIGNRLPROPS OLEUIGNRLPROPSA
       
   919 #define POLEUIGNRLPROPS POLEUIGNRLPROPSA
       
   920 #define LPOLEUIGNRLPROPS LPOLEUIGNRLPROPSA
       
   921 #define tagOLEUIVIEWPROPS tagOLEUIVIEWPROPSA
       
   922 #define OLEUIVIEWPROPS OLEUIVIEWPROPSA
       
   923 #define POLEUIVIEWPROPS POLEUIVIEWPROPSA
       
   924 #define LPOLEUIVIEWPROPS LPOLEUIVIEWPROPSA
       
   925 #define tagOLEUILINKPROPS tagOLEUILINKPROPSA
       
   926 #define OLEUILINKPROPS OLEUILINKPROPSA
       
   927 #define POLEUILINKPROPS POLEUILINKPROPSA
       
   928 #define LPOLEUILINKPROPS LPOLEUILINKPROPSA
       
   929 #endif
       
   930 #pragma pack(pop)
       
   931 #endif
       
   932 #ifdef __cplusplus
       
   933 }
       
   934 #endif
       
   935 #endif