xref: /reactos/sdk/include/psdk/shldisp.idl (revision 40462c92)
1/*
2 * COM interfaces for shell objects
3 *
4 * Copyright (C) 2004 Maxime Bellengé
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21import "ocidl.idl";
22
23#include <shdispid.h>
24
25cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
26cpp_quote("#undef ShellExecute")
27cpp_quote("#endif")
28
29/*****************************************************************************
30 * IEnumACString interface
31 */
32[
33    local,
34    object,
35    uuid(8e74c210-cf9d-4eaf-a403-7356428f0a5a),
36    pointer_default(unique)
37]
38interface IEnumACString : IEnumString
39{
40    typedef IEnumACString *PENUMACSTRING, *LPENUMACSTRING;
41
42    typedef enum _tagACENUMOPTION
43    {
44        ACEO_NONE            = 0x00000000,
45        ACEO_MOSTRECENTFIRST = 0x00000001,
46        ACEO_FIRSTUNUSED     = 0x00010000,
47    } ACENUMOPTION;
48
49    HRESULT NextItem( [out] LPWSTR pszUrl,
50                      [in] ULONG cchMax,
51                      [out] ULONG *pulSortIndex);
52
53    HRESULT SetEnumOptions( [in] DWORD dwOptions );
54
55    HRESULT GetEnumOptions( [out] DWORD *pdwOptions );
56}
57
58/*****************************************************************************
59 * IAutoComplete interface
60 */
61[
62    local,
63    object,
64    uuid(00bb2762-6a77-11d0-a535-00c04fd7d062),
65    pointer_default(unique)
66]
67interface IAutoComplete : IUnknown
68{
69    typedef IAutoComplete *LPAUTOCOMPLETE;
70
71    HRESULT Init( [in] HWND hwndEdit,
72		  [in] IUnknown *punkACL,
73		  [in] LPCOLESTR pwszRegKeyPath,
74		  [in] LPCOLESTR pwszQuickComplete);
75
76    HRESULT Enable( [in] BOOL fEnable );
77}
78
79/*****************************************************************************
80 * IAutoComplete2 interface
81 */
82[
83    local,
84    object,
85    uuid(eac04bc0-3791-11d2-bb95-0060977b464c),
86    pointer_default(unique)
87]
88interface IAutoComplete2 : IAutoComplete
89{
90    typedef IAutoComplete2 *LPAUTOCOMPLETE2;
91
92    typedef enum _tagAUTOCOMPLETEOPTIONS
93	{
94	    ACO_NONE           = 0x00,      /* No AutoComplete */
95	    ACO_AUTOSUGGEST    = 0x01,      /* enable autosuggest dropdown */
96	    ACO_AUTOAPPEND     = 0x02,      /* enable autoappend */
97	    ACO_SEARCH         = 0x04,      /* add search entry to completion list */
98	    ACO_FILTERPREFIXES = 0x08,      /* don't match common prefixes (www., http://, etc) */
99	    ACO_USETAB         = 0x10,      /* use tab to select autosuggest entries */
100	    ACO_UPDOWNKEYDROPSLIST = 0x20,  /* up/down arrow key invokes autosuggest dropdown (if enabled) */
101	    ACO_RTLREADING     = 0x40,      /* enable RTL reading order for dropdown */
102	} AUTOCOMPLETEOPTIONS;
103
104    HRESULT SetOptions( [in] DWORD dwFlag);
105
106    HRESULT GetOptions( [out] DWORD *pdwFlag);
107}
108
109[
110    uuid(50a7e9b0-70ef-11d1-b75a-00a0c90564fe),
111    version(1.0)
112]
113library Shell32
114{
115
116importlib("stdole2.tlb");
117
118[
119    object,
120    oleautomation,
121    uuid(9ba05970-f6a8-11cf-a442-00a0c90a8f39),
122    pointer_default(unique)
123]
124interface IFolderViewOC : IDispatch
125{
126    HRESULT SetFolderView( [in] IDispatch *pdisp );
127}
128
129[
130    uuid(62112aa2-ebe4-11cf-a5fb-0020afe7292d)
131]
132dispinterface DShellFolderViewEvents
133{
134    properties:
135    methods:
136    [id(DISPID_SELECTIONCHANGED)]
137    void SelectionChanged();
138
139    [id(DISPID_FILELISTENUMDONE)]
140    void EnumDone();
141
142    [id(DISPID_VERBINVOKED)]
143    VARIANT_BOOL VerbInvoked();
144
145    [id(DISPID_DEFAULTVERBINVOKED)]
146    VARIANT_BOOL DefaultVerbInvoked();
147
148    [id(DISPID_BEGINDRAG)]
149    VARIANT_BOOL BeginDrag();
150}
151
152[
153    uuid(9ba05971-f6a8-11cf-a442-00a0c90a8f39),
154    hidden
155]
156coclass ShellFolderViewOC
157{
158    [default]         interface     IFolderViewOC;
159    [default, source] dispinterface DShellFolderViewEvents;
160}
161
162interface FolderItem;
163interface FolderItems;
164interface FolderItemVerb;
165interface FolderItemVerbs;
166
167/*****************************************************************************
168 * Folder interface
169 */
170[
171    object,
172    uuid(bbcbde60-c3ff-11ce-8350-444553540000),
173    oleautomation,
174    dual
175]
176interface Folder : IDispatch
177{
178    [propget, id(DISPID_VALUE)]
179    HRESULT Title( [out, retval] BSTR *pbs );
180
181    [propget]
182    HRESULT Application( [out, retval] IDispatch **ppid );
183
184    [propget]
185    HRESULT Parent( [out, retval] IDispatch **ppid );
186
187    [propget]
188    HRESULT ParentFolder( [out, retval] Folder **ppsf );
189
190    HRESULT Items( [out, retval] FolderItems **ppid );
191
192    HRESULT ParseName( [in] BSTR bName, [out, retval] FolderItem **ppid );
193
194    HRESULT NewFolder( [in] BSTR bName, [in, optional] VARIANT vOptions );
195
196    HRESULT MoveHere( [in] VARIANT vItem, [in, optional] VARIANT vOptions );
197
198    HRESULT CopyHere( [in] VARIANT vItem, [in, optional] VARIANT vOptions );
199
200    HRESULT GetDetailsOf( [in] VARIANT vItem,
201        [in] int iColumn,
202        [out, retval] BSTR *pbs );
203}
204
205/*****************************************************************************
206 * Folder2 interface
207 */
208[
209    object,
210    uuid(f0d2d8ef-3890-11d2-bf8b-00c04fb93661),
211    oleautomation,
212    dual
213]
214interface Folder2 : Folder
215{
216    [propget]
217    HRESULT Self( [out, retval] FolderItem **ppfi );
218
219    [propget]
220    HRESULT OfflineStatus( [out, retval] LONG *pul );
221
222    HRESULT Synchronize();
223
224    [propget, id(1)]
225    HRESULT HaveToShowWebViewBarricade(
226        [out, retval] VARIANT_BOOL *pbHaveToShowWebViewBarricade );
227
228    HRESULT DismissedWebViewBarricade();
229}
230
231/*****************************************************************************
232 * Folder3 interface
233 */
234[
235    object,
236    uuid(a7ae5f64-c4d7-4d7f-9307-4d24ee54b841),
237    oleautomation,
238    dual
239]
240interface Folder3 : Folder2
241{
242    [propget, id(2)]
243    HRESULT ShowWebViewBarricade(
244        [out, retval] VARIANT_BOOL *pbShowWebViewBarricade );
245
246    [propput, id(2)]
247    HRESULT ShowWebViewBarricade( [in] VARIANT_BOOL bShowWebViewBarricade );
248}
249
250/*****************************************************************************
251 * FolderItem interface
252 */
253[
254    object,
255    uuid(fac32c80-cbe4-11ce-8350-444553540000),
256    oleautomation,
257    dual
258]
259interface FolderItem : IDispatch
260{
261    typedef FolderItem *LPFOLDERITEM;
262
263    [propget]
264    HRESULT Application( [out, retval] IDispatch **ppid );
265
266    [propget]
267    HRESULT Parent( [out, retval] IDispatch **ppid );
268
269    [propget, id(DISPID_VALUE)]
270    HRESULT Name( [out, retval] BSTR *pbs );
271
272    [propput, id(DISPID_VALUE)]
273    HRESULT Name( [in] BSTR bs );
274
275    [propget]
276    HRESULT Path( [out, retval] BSTR *pbs );
277
278    [propget]
279    HRESULT GetLink( [out, retval] IDispatch **ppid );
280
281    [propget]
282    HRESULT GetFolder( [out, retval] IDispatch **ppid );
283
284    [propget]
285    HRESULT IsLink( [out, retval] VARIANT_BOOL *pb );
286
287    [propget]
288    HRESULT IsFolder( [out, retval] VARIANT_BOOL *pb );
289
290    [propget]
291    HRESULT IsFileSystem( [out, retval] VARIANT_BOOL *pb );
292
293    [propget]
294    HRESULT IsBrowsable( [out, retval] VARIANT_BOOL *pb );
295
296    [propget]
297    HRESULT ModifyDate( [out, retval] DATE *pdt );
298
299    [propput]
300    HRESULT ModifyDate( [in] DATE dt );
301
302    [propget]
303    HRESULT Size( [out, retval] LONG *pul );
304
305    [propget]
306    HRESULT Type( [out, retval] BSTR *pbs );
307
308    HRESULT Verbs( [out, retval] FolderItemVerbs **ppfic );
309
310    HRESULT InvokeVerb( [in, optional] VARIANT vVerb );
311}
312
313[
314    object,
315    uuid(edc817aa-92b8-11d1-b075-00c04fc33aa5),
316    oleautomation,
317    dual
318]
319interface FolderItem2 : FolderItem
320{
321    HRESULT InvokeVerbEx( [in, optional] VARIANT vVerb, [in, optional] VARIANT vArgs );
322
323    HRESULT ExtendedProperty( [in] BSTR sPropName, [out, retval] VARIANT *pvRet );
324}
325
326[
327    uuid(2fe352ea-fd1f-11d2-b1f4-00c04f8eeb3e)
328]
329coclass ShellFolderItem
330{
331    interface FolderItem2;
332}
333
334/*****************************************************************************
335 * FolderItems interface
336 */
337[
338    object,
339    uuid(744129e0-cbe5-11ce-8350-444553540000),
340    oleautomation,
341    dual
342]
343interface FolderItems : IDispatch
344{
345    [propget]
346    HRESULT Count( [out, retval] long *plCount );
347
348    [propget]
349    HRESULT Application( [out, retval] IDispatch **ppid );
350
351    [propget]
352    HRESULT Parent( [out, retval] IDispatch **ppid );
353
354    HRESULT Item( [in, optional] VARIANT index,
355        [out, retval] FolderItem **ppid );
356
357    [id(DISPID_NEWENUM)]
358    HRESULT _NewEnum( [out, retval] IUnknown **ppunk );
359}
360
361/*****************************************************************************
362 * FolderItems2 interface
363 */
364[
365    uuid(c94f0ad0-f363-11d2-a327-00c04f8eec7f),
366    oleautomation,
367    dual
368]
369interface FolderItems2 : FolderItems
370{
371    HRESULT InvokeVerbEx( [in, optional] VARIANT verb,
372        [in, optional] VARIANT args );
373}
374
375/*****************************************************************************
376 * FolderItems3 interface
377 */
378[
379    uuid(eaa7c309-bbec-49d5-821d-64d966cb667f),
380    oleautomation,
381    dual
382]
383interface FolderItems3 : FolderItems2
384{
385    HRESULT Filter( [in] long flags, [in] BSTR spec );
386
387    [id(0), propget]
388    HRESULT Verbs( [out, retval] FolderItemVerbs **ppfic );
389}
390
391/*****************************************************************************
392 * FolderItemVerb interface
393 */
394[
395    object,
396    uuid(08ec3e00-50b0-11cf-960c-0080c7f4ee85),
397    oleautomation,
398    dual
399]
400interface FolderItemVerb : IDispatch
401{
402    [propget]
403    HRESULT Application( [out, retval] IDispatch **ppid );
404
405    [propget]
406    HRESULT Parent( [out, retval] IDispatch **ppid );
407
408    [propget, id(DISPID_VALUE)]
409    HRESULT Name( [out, retval] BSTR *pbs );
410
411    HRESULT DoIt();
412}
413
414/*****************************************************************************
415 * FolderItemVerbs interface
416 */
417[
418    object,
419    uuid(1f8352c0-50b0-11cf-960c-0080c7f4ee85),
420    oleautomation,
421    dual
422]
423interface FolderItemVerbs : IDispatch
424{
425    [propget]
426    HRESULT Count( [out, retval] long *plCount );
427
428    [propget]
429    HRESULT Application( [out, retval] IDispatch **ppid );
430
431    [propget]
432    HRESULT Parent( [out, retval] IDispatch **ppid );
433
434    HRESULT Item( [in, optional] VARIANT index,
435        [out, retval] FolderItemVerb **ppid );
436
437    [id(DISPID_NEWENUM)]
438    HRESULT _NewEnum( [out, retval] IUnknown **ppunk );
439}
440
441/*****************************************************************************
442 * IShellDispatch interface
443 */
444[
445    object,
446    uuid(d8f015c0-c278-11ce-a49e-444553540000),
447    oleautomation,
448    hidden,
449    dual
450]
451interface IShellDispatch : IDispatch
452{
453    [propget]
454    HRESULT Application( [out, retval] IDispatch **ppid );
455
456    [propget]
457    HRESULT Parent( [out, retval] IDispatch **ppid );
458
459    HRESULT NameSpace( [in] VARIANT vDir, [out, retval] Folder **ppsdf );
460
461    HRESULT BrowseForFolder( [in] long Hwnd,
462        [in] BSTR Title,
463        [in] long Options,
464        [in, optional] VARIANT RootFolder,
465        [out, retval] Folder **ppsdf );
466
467    HRESULT Windows( [out, retval] IDispatch **ppid );
468
469    HRESULT Open( [in] VARIANT vDir );
470
471    HRESULT Explore( [in] VARIANT vDir );
472
473    HRESULT MinimizeAll();
474
475    HRESULT UndoMinimizeALL();
476
477    HRESULT FileRun();
478
479    HRESULT CascadeWindows();
480
481    HRESULT TileVertically();
482
483    HRESULT TileHorizontally();
484
485    HRESULT ShutdownWindows();
486
487    HRESULT Suspend();
488
489    HRESULT EjectPC();
490
491    HRESULT SetTime();
492
493    HRESULT TrayProperties();
494
495    HRESULT Help();
496
497    HRESULT FindFiles();
498
499    HRESULT FindComputer();
500
501    HRESULT RefreshMenu();
502
503    HRESULT ControlPanelItem( [in] BSTR szDir );
504}
505
506[
507    object,
508    uuid(a4c6892c-3ba9-11d2-9dea-00c04fb16162),
509    oleautomation,
510    hidden,
511    dual,
512]
513interface IShellDispatch2 : IShellDispatch
514{
515    HRESULT IsRestricted([in] BSTR group, [in] BSTR restriction, [out, retval] long *value);
516    HRESULT ShellExecute([in] BSTR file, [in, optional] VARIANT args, [in, optional] VARIANT dir,
517        [in, optional] VARIANT op, [in, optional] VARIANT show);
518    HRESULT FindPrinter([in, optional] BSTR name, [in, optional] BSTR location, [in, optional] BSTR model);
519    HRESULT GetSystemInformation([in] BSTR name, [out, retval] VARIANT *ret);
520    HRESULT ServiceStart([in] BSTR service, [in] VARIANT persistent, [out, retval] VARIANT *ret);
521    HRESULT ServiceStop([in] BSTR service, [in] VARIANT persistent, [out, retval] VARIANT *ret);
522    HRESULT IsServiceRunning([in] BSTR service, [out, retval] VARIANT *running);
523    HRESULT CanStartStopService([in] BSTR service, [out, retval] VARIANT *ret);
524    HRESULT ShowBrowserBar([in] BSTR clsid, [in] VARIANT show, [out, retval] VARIANT *ret);
525}
526
527[
528    uuid(177160ca-bb5a-411c-841d-bd38facdeaa0),
529    oleautomation,
530    hidden,
531    dual
532]
533interface IShellDispatch3 : IShellDispatch2
534{
535    HRESULT AddToRecent([in] VARIANT file, [in, optional] BSTR category);
536}
537
538[
539    uuid(efd84b2d-4bcf-4298-be25-eb542a59fbda),
540    oleautomation,
541    hidden,
542    dual
543]
544interface IShellDispatch4 : IShellDispatch3
545{
546    HRESULT WindowsSecurity();
547    HRESULT ToggleDesktop();
548    HRESULT ExplorerPolicy([in] BSTR policy, [out, retval] VARIANT *value);
549    HRESULT GetSetting([in] long setting, [out,retval] VARIANT_BOOL *result);
550}
551
552[
553    uuid(866738b9-6cf2-4de8-8767-f794ebe74f4e),
554    oleautomation,
555    hidden,
556    dual
557]
558interface IShellDispatch5 : IShellDispatch4
559{
560    HRESULT WindowSwitcher();
561}
562
563[
564    uuid(286e6f1b-7113-4355-9562-96b7e9d64c54),
565    oleautomation,
566    hidden,
567    dual,
568]
569interface IShellDispatch6 : IShellDispatch5
570{
571    HRESULT SearchCommand(void);
572}
573
574[
575    uuid(13709620-c279-11ce-a49e-444553540000)
576]
577coclass Shell
578{
579    [default] interface IShellDispatch2;
580}
581
582[
583    uuid(0a89a860-d7b1-11ce-8350-444553540000),
584    hidden
585]
586coclass ShellDispatchInproc
587{
588    interface IUnknown;
589}
590
591typedef
592[
593    uuid(ca31ea20-48d0-11cf-8350-444553540000)
594]
595enum ShellSpecialFolderConstants {
596    ssfDESKTOP          = 0x00,
597    ssfPROGRAMS         = 0x02,
598    ssfCONTROLS         = 0x03,
599    ssfPRINTERS         = 0x04,
600    ssfPERSONAL         = 0x05,
601    ssfFAVORITES        = 0x06,
602    ssfSTARTUP          = 0x07,
603    ssfRECENT           = 0x08,
604    ssfSENDTO           = 0x09,
605    ssfBITBUCKET        = 0x0a,
606    ssfSTARTMENU        = 0x0b,
607    ssfDESKTOPDIRECTORY = 0x10,
608    ssfDRIVES           = 0x11,
609    ssfNETWORK          = 0x12,
610    ssfNETHOOD          = 0x13,
611    ssfFONTS            = 0x14,
612    ssfTEMPLATES        = 0x15,
613    ssfCOMMONSTARTMENU  = 0x16,
614    ssfCOMMONPROGRAMS   = 0x17,
615    ssfCOMMONSTARTUP    = 0x18,
616    ssfCOMMONDESKTOPDIR = 0x19,
617    ssfAPPDATA          = 0x1a,
618    ssfPRINTHOOD        = 0x1b,
619    ssfLOCALAPPDATA     = 0x1c,
620    ssfALTSTARTUP       = 0x1d,
621    ssfCOMMONALTSTARTUP = 0x1e,
622    ssfCOMMONFAVORITES  = 0x1f,
623    ssfINTERNETCACHE    = 0x20,
624    ssfCOOKIES          = 0x21,
625    ssfHISTORY          = 0x22,
626    ssfCOMMONAPPDATA    = 0x23,
627    ssfWINDOWS          = 0x24,
628    ssfSYSTEM           = 0x25,
629    ssfPROGRAMFILES     = 0x26,
630    ssfMYPICTURES       = 0x27,
631    ssfPROFILE          = 0x28,
632    ssfSYSTEMx86        = 0x29,
633    ssfPROGRAMFILESx86  = 0x30
634} ShellSpecialFolderConstants;
635
636/*****************************************************************************
637 * IShellFolderViewDual interface
638 */
639typedef
640[
641    uuid(742a99a0-c77e-11d0-a32c-00a0c91eedba)
642]
643enum ShellFolderViewOptions
644{
645    SFVVO_SHOWALLOBJECTS       = 0x00000001,
646    SFVVO_SHOWEXTENSIONS       = 0x00000002,
647    SFVVO_SHOWCOMPCOLOR        = 0x00000008,
648    SFVVO_SHOWSYSFILES         = 0x00000020,
649    SFVVO_WIN95CLASSIC         = 0x00000040,
650    SFVVO_DOUBLECLICKINWEBVIEW = 0x00000080,
651    SFVVO_DESKTOPHTML          = 0x00000200
652} ShellFolderViewOptions;
653
654[
655    uuid(e7a1af80-4d96-11cf-960c-0080c7f4ee85),
656    oleautomation,
657    hidden,
658    dual
659]
660interface IShellFolderViewDual : IDispatch
661{
662    [propget]
663    HRESULT Application([out, retval] IDispatch **app);
664
665    [propget]
666    HRESULT Parent([out, retval] IDispatch **parent);
667
668    [propget]
669    HRESULT Folder([out, retval] Folder **folder);
670
671    HRESULT SelectedItems([out, retval] FolderItems **items);
672
673    [propget]
674    HRESULT FocusedItem([out, retval] FolderItem **item);
675
676    HRESULT SelectItem([in] VARIANT *item, [in] int flags);
677
678    HRESULT PopupItemMenu([in] FolderItem *item,
679                          [in, optional] VARIANT vx,
680                          [in, optional] VARIANT vy,
681                          [out, retval] BSTR *command);
682    [propget]
683    HRESULT Script([out, retval] IDispatch **script);
684
685    [propget]
686    HRESULT ViewOptions([out, retval] long *options);
687}
688
689[
690    uuid(31c147b6-0ade-4a3c-b514-ddf932ef6d17),
691    oleautomation,
692    hidden,
693    dual
694]
695interface IShellFolderViewDual2 : IShellFolderViewDual
696{
697    [propget]
698    HRESULT CurrentViewMode([out, retval] UINT *mode);
699
700    [propput]
701    HRESULT CurrentViewMode([in] UINT mode);
702
703    HRESULT SelectItemRelative([in] int relative);
704}
705
706[
707    uuid(29ec8e6c-46d3-411f-baaa-611a6c9cac66),
708    oleautomation,
709    hidden,
710    dual
711]
712interface IShellFolderViewDual3 : IShellFolderViewDual2
713{
714    [propget]
715    HRESULT GroupBy([out, retval] BSTR *groupby);
716
717    [propput]
718    HRESULT GroupBy([in] BSTR groupby);
719
720    [propget]
721    HRESULT FolderFlags([out, retval] DWORD *flags);
722
723    [propput]
724    HRESULT FolderFlags([in] DWORD flags);
725
726    [propget]
727    HRESULT SortColumns([out, retval] BSTR *sortcolumns);
728
729    [propput]
730    HRESULT SortColumns([in] BSTR sortcolumns);
731
732    [propput]
733    HRESULT IconSize([in] int icon_size);
734
735    [propget]
736    HRESULT IconSize([out, retval] int *icon_size);
737
738    HRESULT FilterView([in, unique] BSTR filter_text);
739}
740
741[
742    uuid(62112aa1-ebe4-11cf-a5fb-0020afe7292d)
743]
744coclass ShellFolderView
745{
746    [default] interface IShellFolderViewDual3;
747    [default, source] dispinterface DShellFolderViewEvents;
748}
749
750} /* library Shell32 */
751
752/*****************************************************************************
753 * IAsyncOperation interface
754 */
755[
756    uuid(3d8b0590-f691-11d2-8ea9-006097df5bd4),
757    object,
758]
759
760interface IAsyncOperation : IUnknown
761{
762    typedef [unique] IAsyncOperation *LPASYNCOPERATION;
763
764    HRESULT SetAsyncMode([in] BOOL fDoOpAsync);
765
766    HRESULT GetAsyncMode([out] BOOL *pfIsOpAsync);
767
768    HRESULT StartOperation([in, unique, optional] IBindCtx *pbcReserved);
769
770    HRESULT InOperation([out] BOOL *pfInAsyncOp);
771
772    HRESULT EndOperation(
773            [in] HRESULT hResult,
774            [in, unique] IBindCtx *pbcReserved,
775            [in] DWORD dwEffects);
776}
777