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