| /** | 
 |  * This file has no copyright assigned and is placed in the Public Domain. | 
 |  * This file is part of the w64 mingw-runtime package. | 
 |  * No warranty is given; refer to the file DISCLAIMER within this package. | 
 |  */ | 
 | #ifndef __REQUIRED_RPCNDR_H_VERSION__ | 
 | #define __REQUIRED_RPCNDR_H_VERSION__ 475 | 
 | #endif | 
 |  | 
 | #include "rpc.h" | 
 | #include "rpcndr.h" | 
 |  | 
 | #ifndef __RPCNDR_H_VERSION__ | 
 | #error This stub requires an updated version of <rpcndr.h> | 
 | #endif | 
 |  | 
 | #ifndef COM_NO_WINDOWS_H | 
 | #include "windows.h" | 
 | #include "ole2.h" | 
 | #endif | 
 |  | 
 | #ifndef __shldisp_h__ | 
 | #define __shldisp_h__ | 
 |  | 
 | #ifndef __IFolderViewOC_FWD_DEFINED__ | 
 | #define __IFolderViewOC_FWD_DEFINED__ | 
 | typedef struct IFolderViewOC IFolderViewOC; | 
 | #endif | 
 |  | 
 | #ifndef __DShellFolderViewEvents_FWD_DEFINED__ | 
 | #define __DShellFolderViewEvents_FWD_DEFINED__ | 
 | typedef struct DShellFolderViewEvents DShellFolderViewEvents; | 
 | #endif | 
 |  | 
 | #ifndef __ShellFolderViewOC_FWD_DEFINED__ | 
 | #define __ShellFolderViewOC_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class ShellFolderViewOC ShellFolderViewOC; | 
 | #else | 
 | typedef struct ShellFolderViewOC ShellFolderViewOC; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __DFConstraint_FWD_DEFINED__ | 
 | #define __DFConstraint_FWD_DEFINED__ | 
 | typedef struct DFConstraint DFConstraint; | 
 | #endif | 
 |  | 
 | #ifndef __ISearchCommandExt_FWD_DEFINED__ | 
 | #define __ISearchCommandExt_FWD_DEFINED__ | 
 | typedef struct ISearchCommandExt ISearchCommandExt; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItem_FWD_DEFINED__ | 
 | #define __FolderItem_FWD_DEFINED__ | 
 | typedef struct FolderItem FolderItem; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItems_FWD_DEFINED__ | 
 | #define __FolderItems_FWD_DEFINED__ | 
 | typedef struct FolderItems FolderItems; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItemVerb_FWD_DEFINED__ | 
 | #define __FolderItemVerb_FWD_DEFINED__ | 
 | typedef struct FolderItemVerb FolderItemVerb; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItemVerbs_FWD_DEFINED__ | 
 | #define __FolderItemVerbs_FWD_DEFINED__ | 
 | typedef struct FolderItemVerbs FolderItemVerbs; | 
 | #endif | 
 |  | 
 | #ifndef __Folder_FWD_DEFINED__ | 
 | #define __Folder_FWD_DEFINED__ | 
 | typedef struct Folder Folder; | 
 | #endif | 
 |  | 
 | #ifndef __Folder2_FWD_DEFINED__ | 
 | #define __Folder2_FWD_DEFINED__ | 
 | typedef struct Folder2 Folder2; | 
 | #endif | 
 |  | 
 | #ifndef __Folder3_FWD_DEFINED__ | 
 | #define __Folder3_FWD_DEFINED__ | 
 | typedef struct Folder3 Folder3; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItem2_FWD_DEFINED__ | 
 | #define __FolderItem2_FWD_DEFINED__ | 
 | typedef struct FolderItem2 FolderItem2; | 
 | #endif | 
 |  | 
 | #ifndef __ShellFolderItem_FWD_DEFINED__ | 
 | #define __ShellFolderItem_FWD_DEFINED__ | 
 |  | 
 | #ifdef __cplusplus | 
 | typedef class ShellFolderItem ShellFolderItem; | 
 | #else | 
 | typedef struct ShellFolderItem ShellFolderItem; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __FolderItems2_FWD_DEFINED__ | 
 | #define __FolderItems2_FWD_DEFINED__ | 
 | typedef struct FolderItems2 FolderItems2; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItems3_FWD_DEFINED__ | 
 | #define __FolderItems3_FWD_DEFINED__ | 
 | typedef struct FolderItems3 FolderItems3; | 
 | #endif | 
 |  | 
 | #ifndef __IShellLinkDual_FWD_DEFINED__ | 
 | #define __IShellLinkDual_FWD_DEFINED__ | 
 | typedef struct IShellLinkDual IShellLinkDual; | 
 | #endif | 
 |  | 
 | #ifndef __IShellLinkDual2_FWD_DEFINED__ | 
 | #define __IShellLinkDual2_FWD_DEFINED__ | 
 | typedef struct IShellLinkDual2 IShellLinkDual2; | 
 | #endif | 
 |  | 
 | #ifndef __ShellLinkObject_FWD_DEFINED__ | 
 | #define __ShellLinkObject_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class ShellLinkObject ShellLinkObject; | 
 | #else | 
 | typedef struct ShellLinkObject ShellLinkObject; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __IShellFolderViewDual_FWD_DEFINED__ | 
 | #define __IShellFolderViewDual_FWD_DEFINED__ | 
 | typedef struct IShellFolderViewDual IShellFolderViewDual; | 
 | #endif | 
 |  | 
 | #ifndef __IShellFolderViewDual2_FWD_DEFINED__ | 
 | #define __IShellFolderViewDual2_FWD_DEFINED__ | 
 | typedef struct IShellFolderViewDual2 IShellFolderViewDual2; | 
 | #endif | 
 |  | 
 | #ifndef __ShellFolderView_FWD_DEFINED__ | 
 | #define __ShellFolderView_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class ShellFolderView ShellFolderView; | 
 | #else | 
 | typedef struct ShellFolderView ShellFolderView; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch_FWD_DEFINED__ | 
 | #define __IShellDispatch_FWD_DEFINED__ | 
 | typedef struct IShellDispatch IShellDispatch; | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch2_FWD_DEFINED__ | 
 | #define __IShellDispatch2_FWD_DEFINED__ | 
 | typedef struct IShellDispatch2 IShellDispatch2; | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch3_FWD_DEFINED__ | 
 | #define __IShellDispatch3_FWD_DEFINED__ | 
 | typedef struct IShellDispatch3 IShellDispatch3; | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch4_FWD_DEFINED__ | 
 | #define __IShellDispatch4_FWD_DEFINED__ | 
 | typedef struct IShellDispatch4 IShellDispatch4; | 
 | #endif | 
 |  | 
 | #ifndef __Shell_FWD_DEFINED__ | 
 | #define __Shell_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class Shell Shell; | 
 | #else | 
 | typedef struct Shell Shell; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __ShellDispatchInproc_FWD_DEFINED__ | 
 | #define __ShellDispatchInproc_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class ShellDispatchInproc ShellDispatchInproc; | 
 | #else | 
 | typedef struct ShellDispatchInproc ShellDispatchInproc; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __WebViewFolderContents_FWD_DEFINED__ | 
 | #define __WebViewFolderContents_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class WebViewFolderContents WebViewFolderContents; | 
 | #else | 
 | typedef struct WebViewFolderContents WebViewFolderContents; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __DSearchCommandEvents_FWD_DEFINED__ | 
 | #define __DSearchCommandEvents_FWD_DEFINED__ | 
 | typedef struct DSearchCommandEvents DSearchCommandEvents; | 
 | #endif | 
 |  | 
 | #ifndef __SearchCommand_FWD_DEFINED__ | 
 | #define __SearchCommand_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class SearchCommand SearchCommand; | 
 | #else | 
 | typedef struct SearchCommand SearchCommand; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __IFileSearchBand_FWD_DEFINED__ | 
 | #define __IFileSearchBand_FWD_DEFINED__ | 
 | typedef struct IFileSearchBand IFileSearchBand; | 
 | #endif | 
 |  | 
 | #ifndef __FileSearchBand_FWD_DEFINED__ | 
 | #define __FileSearchBand_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class FileSearchBand FileSearchBand; | 
 | #else | 
 | typedef struct FileSearchBand FileSearchBand; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __IWebWizardHost_FWD_DEFINED__ | 
 | #define __IWebWizardHost_FWD_DEFINED__ | 
 | typedef struct IWebWizardHost IWebWizardHost; | 
 | #endif | 
 |  | 
 | #ifndef __INewWDEvents_FWD_DEFINED__ | 
 | #define __INewWDEvents_FWD_DEFINED__ | 
 | typedef struct INewWDEvents INewWDEvents; | 
 | #endif | 
 |  | 
 | #ifndef __IPassportClientServices_FWD_DEFINED__ | 
 | #define __IPassportClientServices_FWD_DEFINED__ | 
 | typedef struct IPassportClientServices IPassportClientServices; | 
 | #endif | 
 |  | 
 | #ifndef __PassportClientServices_FWD_DEFINED__ | 
 | #define __PassportClientServices_FWD_DEFINED__ | 
 | #ifdef __cplusplus | 
 | typedef class PassportClientServices PassportClientServices; | 
 | #else | 
 | typedef struct PassportClientServices PassportClientServices; | 
 | #endif | 
 | #endif | 
 |  | 
 | #ifndef __IAutoComplete_FWD_DEFINED__ | 
 | #define __IAutoComplete_FWD_DEFINED__ | 
 | typedef struct IAutoComplete IAutoComplete; | 
 | #endif | 
 |  | 
 | #ifndef __IAutoComplete2_FWD_DEFINED__ | 
 | #define __IAutoComplete2_FWD_DEFINED__ | 
 | typedef struct IAutoComplete2 IAutoComplete2; | 
 | #endif | 
 |  | 
 | #ifndef __IEnumACString_FWD_DEFINED__ | 
 | #define __IEnumACString_FWD_DEFINED__ | 
 | typedef struct IEnumACString IEnumACString; | 
 | #endif | 
 |  | 
 | #ifndef __IAsyncOperation_FWD_DEFINED__ | 
 | #define __IAsyncOperation_FWD_DEFINED__ | 
 | typedef struct IAsyncOperation IAsyncOperation; | 
 | #endif | 
 |  | 
 | #include "ocidl.h" | 
 |  | 
 | #ifdef __cplusplus | 
 | extern "C" { | 
 | #endif | 
 |  | 
 | #ifndef __MIDL_user_allocate_free_DEFINED__ | 
 | #define __MIDL_user_allocate_free_DEFINED__ | 
 |   void *__RPC_API MIDL_user_allocate(size_t); | 
 |   void __RPC_API MIDL_user_free(void *); | 
 | #endif | 
 |  | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0000_v0_0_c_ifspec; | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0000_v0_0_s_ifspec; | 
 |  | 
 | #ifndef __Shell32_LIBRARY_DEFINED__ | 
 | #define __Shell32_LIBRARY_DEFINED__ | 
 |   typedef enum SearchCommandExecuteErrors { | 
 |     SCEE_PATHNOTFOUND = 1,SCEE_MAXFILESFOUND = SCEE_PATHNOTFOUND + 1,SCEE_INDEXSEARCH = SCEE_MAXFILESFOUND + 1,SCEE_CONSTRAINT = SCEE_INDEXSEARCH + 1, | 
 |     SCEE_SCOPEMISMATCH = SCEE_CONSTRAINT + 1,SCEE_CASESENINDEX = SCEE_SCOPEMISMATCH + 1,SCEE_INDEXNOTCOMPLETE = SCEE_CASESENINDEX + 1 | 
 |   } SearchCommandExecuteErrors; | 
 |  | 
 |   typedef enum OfflineFolderStatus { | 
 |     OFS_INACTIVE = -1,OFS_ONLINE = OFS_INACTIVE + 1,OFS_OFFLINE = OFS_ONLINE + 1,OFS_SERVERBACK = OFS_OFFLINE + 1,OFS_DIRTYCACHE = OFS_SERVERBACK + 1 | 
 |   } OfflineFolderStatus; | 
 |  | 
 |   typedef enum ShellFolderViewOptions { | 
 |     SFVVO_SHOWALLOBJECTS = 0x1,SFVVO_SHOWEXTENSIONS = 0x2,SFVVO_SHOWCOMPCOLOR = 0x8,SFVVO_SHOWSYSFILES = 0x20,SFVVO_WIN95CLASSIC = 0x40, | 
 |     SFVVO_DOUBLECLICKINWEBVIEW = 0x80,SFVVO_DESKTOPHTML = 0x200 | 
 |   } ShellFolderViewOptions; | 
 |  | 
 |   typedef enum ShellSpecialFolderConstants { | 
 |     ssfDESKTOP = 0,ssfPROGRAMS = 0x2,ssfCONTROLS = 0x3,ssfPRINTERS = 0x4,ssfPERSONAL = 0x5,ssfFAVORITES = 0x6,ssfSTARTUP = 0x7,ssfRECENT = 0x8, | 
 |     ssfSENDTO = 0x9,ssfBITBUCKET = 0xa,ssfSTARTMENU = 0xb,ssfDESKTOPDIRECTORY = 0x10,ssfDRIVES = 0x11,ssfNETWORK = 0x12,ssfNETHOOD = 0x13, | 
 |     ssfFONTS = 0x14,ssfTEMPLATES = 0x15,ssfCOMMONSTARTMENU = 0x16,ssfCOMMONPROGRAMS = 0x17,ssfCOMMONSTARTUP = 0x18,ssfCOMMONDESKTOPDIR = 0x19, | 
 |     ssfAPPDATA = 0x1a,ssfPRINTHOOD = 0x1b,ssfLOCALAPPDATA = 0x1c,ssfALTSTARTUP = 0x1d,ssfCOMMONALTSTARTUP = 0x1e,ssfCOMMONFAVORITES = 0x1f, | 
 |     ssfINTERNETCACHE = 0x20,ssfCOOKIES = 0x21,ssfHISTORY = 0x22,ssfCOMMONAPPDATA = 0x23,ssfWINDOWS = 0x24,ssfSYSTEM = 0x25,ssfPROGRAMFILES = 0x26, | 
 |     ssfMYPICTURES = 0x27,ssfPROFILE = 0x28,ssfSYSTEMx86 = 0x29,ssfPROGRAMFILESx86 = 0x30 | 
 |   } ShellSpecialFolderConstants; | 
 |  | 
 |   EXTERN_C const IID LIBID_Shell32; | 
 | #ifndef __IFolderViewOC_INTERFACE_DEFINED__ | 
 | #define __IFolderViewOC_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IFolderViewOC; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IFolderViewOC : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI SetFolderView(IDispatch *pdisp) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IFolderViewOCVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IFolderViewOC *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IFolderViewOC *This); | 
 |       ULONG (WINAPI *Release)(IFolderViewOC *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IFolderViewOC *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IFolderViewOC *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IFolderViewOC *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IFolderViewOC *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *SetFolderView)(IFolderViewOC *This,IDispatch *pdisp); | 
 |     END_INTERFACE | 
 |   } IFolderViewOCVtbl; | 
 |   struct IFolderViewOC { | 
 |     CONST_VTBL struct IFolderViewOCVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IFolderViewOC_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IFolderViewOC_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IFolderViewOC_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IFolderViewOC_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IFolderViewOC_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IFolderViewOC_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IFolderViewOC_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IFolderViewOC_SetFolderView(This,pdisp) (This)->lpVtbl->SetFolderView(This,pdisp) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IFolderViewOC_SetFolderView_Proxy(IFolderViewOC *This,IDispatch *pdisp); | 
 |   void __RPC_STUB IFolderViewOC_SetFolderView_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __DShellFolderViewEvents_DISPINTERFACE_DEFINED__ | 
 | #define __DShellFolderViewEvents_DISPINTERFACE_DEFINED__ | 
 |   EXTERN_C const IID DIID_DShellFolderViewEvents; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct DShellFolderViewEvents : public IDispatch { | 
 |   }; | 
 | #else | 
 |   typedef struct DShellFolderViewEventsVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(DShellFolderViewEvents *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(DShellFolderViewEvents *This); | 
 |       ULONG (WINAPI *Release)(DShellFolderViewEvents *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(DShellFolderViewEvents *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(DShellFolderViewEvents *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(DShellFolderViewEvents *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(DShellFolderViewEvents *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |     END_INTERFACE | 
 |   } DShellFolderViewEventsVtbl; | 
 |   struct DShellFolderViewEvents { | 
 |     CONST_VTBL struct DShellFolderViewEventsVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define DShellFolderViewEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define DShellFolderViewEvents_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define DShellFolderViewEvents_Release(This) (This)->lpVtbl->Release(This) | 
 | #define DShellFolderViewEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define DShellFolderViewEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define DShellFolderViewEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define DShellFolderViewEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #endif | 
 | #endif | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_ShellFolderViewOC; | 
 | #ifdef __cplusplus | 
 |   class ShellFolderViewOC; | 
 | #endif | 
 |  | 
 | #ifndef __DFConstraint_INTERFACE_DEFINED__ | 
 | #define __DFConstraint_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_DFConstraint; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct DFConstraint : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Name(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI get_Value(VARIANT *pv) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct DFConstraintVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(DFConstraint *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(DFConstraint *This); | 
 |       ULONG (WINAPI *Release)(DFConstraint *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(DFConstraint *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(DFConstraint *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(DFConstraint *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(DFConstraint *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Name)(DFConstraint *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Value)(DFConstraint *This,VARIANT *pv); | 
 |     END_INTERFACE | 
 |   } DFConstraintVtbl; | 
 |   struct DFConstraint { | 
 |     CONST_VTBL struct DFConstraintVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define DFConstraint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define DFConstraint_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define DFConstraint_Release(This) (This)->lpVtbl->Release(This) | 
 | #define DFConstraint_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define DFConstraint_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define DFConstraint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define DFConstraint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define DFConstraint_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) | 
 | #define DFConstraint_get_Value(This,pv) (This)->lpVtbl->get_Value(This,pv) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI DFConstraint_get_Name_Proxy(DFConstraint *This,BSTR *pbs); | 
 |   void __RPC_STUB DFConstraint_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI DFConstraint_get_Value_Proxy(DFConstraint *This,VARIANT *pv); | 
 |   void __RPC_STUB DFConstraint_get_Value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __ISearchCommandExt_INTERFACE_DEFINED__ | 
 | #define __ISearchCommandExt_INTERFACE_DEFINED__ | 
 |   typedef enum __MIDL_ISearchCommandExt_0001 { | 
 |     SCE_SEARCHFORFILES = 0,SCE_SEARCHFORCOMPUTERS = 1 | 
 |   } SEARCH_FOR_TYPE; | 
 |  | 
 |   EXTERN_C const IID IID_ISearchCommandExt; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct ISearchCommandExt : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI ClearResults(void) = 0; | 
 |     virtual HRESULT WINAPI NavigateToSearchResults(void) = 0; | 
 |     virtual HRESULT WINAPI get_ProgressText(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI SaveSearch(void) = 0; | 
 |     virtual HRESULT WINAPI GetErrorInfo(BSTR *pbs,int *phr) = 0; | 
 |     virtual HRESULT WINAPI SearchFor(int iFor) = 0; | 
 |     virtual HRESULT WINAPI GetScopeInfo(BSTR bsScope,int *pdwScopeInfo) = 0; | 
 |     virtual HRESULT WINAPI RestoreSavedSearch(VARIANT *pvarFile) = 0; | 
 |     virtual HRESULT WINAPI Execute(VARIANT *RecordsAffected,VARIANT *Parameters,long Options) = 0; | 
 |     virtual HRESULT WINAPI AddConstraint(BSTR Name,VARIANT Value) = 0; | 
 |     virtual HRESULT WINAPI GetNextConstraint(VARIANT_BOOL fReset,DFConstraint **ppdfc) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct ISearchCommandExtVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(ISearchCommandExt *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(ISearchCommandExt *This); | 
 |       ULONG (WINAPI *Release)(ISearchCommandExt *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(ISearchCommandExt *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(ISearchCommandExt *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(ISearchCommandExt *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(ISearchCommandExt *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *ClearResults)(ISearchCommandExt *This); | 
 |       HRESULT (WINAPI *NavigateToSearchResults)(ISearchCommandExt *This); | 
 |       HRESULT (WINAPI *get_ProgressText)(ISearchCommandExt *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *SaveSearch)(ISearchCommandExt *This); | 
 |       HRESULT (WINAPI *GetErrorInfo)(ISearchCommandExt *This,BSTR *pbs,int *phr); | 
 |       HRESULT (WINAPI *SearchFor)(ISearchCommandExt *This,int iFor); | 
 |       HRESULT (WINAPI *GetScopeInfo)(ISearchCommandExt *This,BSTR bsScope,int *pdwScopeInfo); | 
 |       HRESULT (WINAPI *RestoreSavedSearch)(ISearchCommandExt *This,VARIANT *pvarFile); | 
 |       HRESULT (WINAPI *Execute)(ISearchCommandExt *This,VARIANT *RecordsAffected,VARIANT *Parameters,long Options); | 
 |       HRESULT (WINAPI *AddConstraint)(ISearchCommandExt *This,BSTR Name,VARIANT Value); | 
 |       HRESULT (WINAPI *GetNextConstraint)(ISearchCommandExt *This,VARIANT_BOOL fReset,DFConstraint **ppdfc); | 
 |     END_INTERFACE | 
 |   } ISearchCommandExtVtbl; | 
 |   struct ISearchCommandExt { | 
 |     CONST_VTBL struct ISearchCommandExtVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define ISearchCommandExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define ISearchCommandExt_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define ISearchCommandExt_Release(This) (This)->lpVtbl->Release(This) | 
 | #define ISearchCommandExt_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define ISearchCommandExt_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define ISearchCommandExt_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define ISearchCommandExt_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define ISearchCommandExt_ClearResults(This) (This)->lpVtbl->ClearResults(This) | 
 | #define ISearchCommandExt_NavigateToSearchResults(This) (This)->lpVtbl->NavigateToSearchResults(This) | 
 | #define ISearchCommandExt_get_ProgressText(This,pbs) (This)->lpVtbl->get_ProgressText(This,pbs) | 
 | #define ISearchCommandExt_SaveSearch(This) (This)->lpVtbl->SaveSearch(This) | 
 | #define ISearchCommandExt_GetErrorInfo(This,pbs,phr) (This)->lpVtbl->GetErrorInfo(This,pbs,phr) | 
 | #define ISearchCommandExt_SearchFor(This,iFor) (This)->lpVtbl->SearchFor(This,iFor) | 
 | #define ISearchCommandExt_GetScopeInfo(This,bsScope,pdwScopeInfo) (This)->lpVtbl->GetScopeInfo(This,bsScope,pdwScopeInfo) | 
 | #define ISearchCommandExt_RestoreSavedSearch(This,pvarFile) (This)->lpVtbl->RestoreSavedSearch(This,pvarFile) | 
 | #define ISearchCommandExt_Execute(This,RecordsAffected,Parameters,Options) (This)->lpVtbl->Execute(This,RecordsAffected,Parameters,Options) | 
 | #define ISearchCommandExt_AddConstraint(This,Name,Value) (This)->lpVtbl->AddConstraint(This,Name,Value) | 
 | #define ISearchCommandExt_GetNextConstraint(This,fReset,ppdfc) (This)->lpVtbl->GetNextConstraint(This,fReset,ppdfc) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI ISearchCommandExt_ClearResults_Proxy(ISearchCommandExt *This); | 
 |   void __RPC_STUB ISearchCommandExt_ClearResults_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_NavigateToSearchResults_Proxy(ISearchCommandExt *This); | 
 |   void __RPC_STUB ISearchCommandExt_NavigateToSearchResults_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_get_ProgressText_Proxy(ISearchCommandExt *This,BSTR *pbs); | 
 |   void __RPC_STUB ISearchCommandExt_get_ProgressText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_SaveSearch_Proxy(ISearchCommandExt *This); | 
 |   void __RPC_STUB ISearchCommandExt_SaveSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_GetErrorInfo_Proxy(ISearchCommandExt *This,BSTR *pbs,int *phr); | 
 |   void __RPC_STUB ISearchCommandExt_GetErrorInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_SearchFor_Proxy(ISearchCommandExt *This,int iFor); | 
 |   void __RPC_STUB ISearchCommandExt_SearchFor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_GetScopeInfo_Proxy(ISearchCommandExt *This,BSTR bsScope,int *pdwScopeInfo); | 
 |   void __RPC_STUB ISearchCommandExt_GetScopeInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_RestoreSavedSearch_Proxy(ISearchCommandExt *This,VARIANT *pvarFile); | 
 |   void __RPC_STUB ISearchCommandExt_RestoreSavedSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_Execute_Proxy(ISearchCommandExt *This,VARIANT *RecordsAffected,VARIANT *Parameters,long Options); | 
 |   void __RPC_STUB ISearchCommandExt_Execute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_AddConstraint_Proxy(ISearchCommandExt *This,BSTR Name,VARIANT Value); | 
 |   void __RPC_STUB ISearchCommandExt_AddConstraint_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI ISearchCommandExt_GetNextConstraint_Proxy(ISearchCommandExt *This,VARIANT_BOOL fReset,DFConstraint **ppdfc); | 
 |   void __RPC_STUB ISearchCommandExt_GetNextConstraint_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __FolderItem_INTERFACE_DEFINED__ | 
 | #define __FolderItem_INTERFACE_DEFINED__ | 
 |   typedef FolderItem *LPFOLDERITEM; | 
 |  | 
 |   EXTERN_C const IID IID_FolderItem; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItem : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Name(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI put_Name(BSTR bs) = 0; | 
 |     virtual HRESULT WINAPI get_Path(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI get_GetLink(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_GetFolder(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_IsLink(VARIANT_BOOL *pb) = 0; | 
 |     virtual HRESULT WINAPI get_IsFolder(VARIANT_BOOL *pb) = 0; | 
 |     virtual HRESULT WINAPI get_IsFileSystem(VARIANT_BOOL *pb) = 0; | 
 |     virtual HRESULT WINAPI get_IsBrowsable(VARIANT_BOOL *pb) = 0; | 
 |     virtual HRESULT WINAPI get_ModifyDate(DATE *pdt) = 0; | 
 |     virtual HRESULT WINAPI put_ModifyDate(DATE dt) = 0; | 
 |     virtual HRESULT WINAPI get_Size(LONG *pul) = 0; | 
 |     virtual HRESULT WINAPI get_Type(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI Verbs(FolderItemVerbs **ppfic) = 0; | 
 |     virtual HRESULT WINAPI InvokeVerb(VARIANT vVerb) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItemVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItem *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItem *This); | 
 |       ULONG (WINAPI *Release)(FolderItem *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItem *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItem *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItem *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItem *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(FolderItem *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItem *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Name)(FolderItem *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Name)(FolderItem *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Path)(FolderItem *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_GetLink)(FolderItem *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_GetFolder)(FolderItem *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_IsLink)(FolderItem *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_IsFolder)(FolderItem *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_IsFileSystem)(FolderItem *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_IsBrowsable)(FolderItem *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_ModifyDate)(FolderItem *This,DATE *pdt); | 
 |       HRESULT (WINAPI *put_ModifyDate)(FolderItem *This,DATE dt); | 
 |       HRESULT (WINAPI *get_Size)(FolderItem *This,LONG *pul); | 
 |       HRESULT (WINAPI *get_Type)(FolderItem *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *Verbs)(FolderItem *This,FolderItemVerbs **ppfic); | 
 |       HRESULT (WINAPI *InvokeVerb)(FolderItem *This,VARIANT vVerb); | 
 |     END_INTERFACE | 
 |   } FolderItemVtbl; | 
 |   struct FolderItem { | 
 |     CONST_VTBL struct FolderItemVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItem_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItem_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItem_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItem_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItem_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItem_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) | 
 | #define FolderItem_put_Name(This,bs) (This)->lpVtbl->put_Name(This,bs) | 
 | #define FolderItem_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) | 
 | #define FolderItem_get_GetLink(This,ppid) (This)->lpVtbl->get_GetLink(This,ppid) | 
 | #define FolderItem_get_GetFolder(This,ppid) (This)->lpVtbl->get_GetFolder(This,ppid) | 
 | #define FolderItem_get_IsLink(This,pb) (This)->lpVtbl->get_IsLink(This,pb) | 
 | #define FolderItem_get_IsFolder(This,pb) (This)->lpVtbl->get_IsFolder(This,pb) | 
 | #define FolderItem_get_IsFileSystem(This,pb) (This)->lpVtbl->get_IsFileSystem(This,pb) | 
 | #define FolderItem_get_IsBrowsable(This,pb) (This)->lpVtbl->get_IsBrowsable(This,pb) | 
 | #define FolderItem_get_ModifyDate(This,pdt) (This)->lpVtbl->get_ModifyDate(This,pdt) | 
 | #define FolderItem_put_ModifyDate(This,dt) (This)->lpVtbl->put_ModifyDate(This,dt) | 
 | #define FolderItem_get_Size(This,pul) (This)->lpVtbl->get_Size(This,pul) | 
 | #define FolderItem_get_Type(This,pbs) (This)->lpVtbl->get_Type(This,pbs) | 
 | #define FolderItem_Verbs(This,ppfic) (This)->lpVtbl->Verbs(This,ppfic) | 
 | #define FolderItem_InvokeVerb(This,vVerb) (This)->lpVtbl->InvokeVerb(This,vVerb) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItem_get_Application_Proxy(FolderItem *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItem_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_Parent_Proxy(FolderItem *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItem_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_Name_Proxy(FolderItem *This,BSTR *pbs); | 
 |   void __RPC_STUB FolderItem_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_put_Name_Proxy(FolderItem *This,BSTR bs); | 
 |   void __RPC_STUB FolderItem_put_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_Path_Proxy(FolderItem *This,BSTR *pbs); | 
 |   void __RPC_STUB FolderItem_get_Path_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_GetLink_Proxy(FolderItem *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItem_get_GetLink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_GetFolder_Proxy(FolderItem *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItem_get_GetFolder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_IsLink_Proxy(FolderItem *This,VARIANT_BOOL *pb); | 
 |   void __RPC_STUB FolderItem_get_IsLink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_IsFolder_Proxy(FolderItem *This,VARIANT_BOOL *pb); | 
 |   void __RPC_STUB FolderItem_get_IsFolder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_IsFileSystem_Proxy(FolderItem *This,VARIANT_BOOL *pb); | 
 |   void __RPC_STUB FolderItem_get_IsFileSystem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_IsBrowsable_Proxy(FolderItem *This,VARIANT_BOOL *pb); | 
 |   void __RPC_STUB FolderItem_get_IsBrowsable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_ModifyDate_Proxy(FolderItem *This,DATE *pdt); | 
 |   void __RPC_STUB FolderItem_get_ModifyDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_put_ModifyDate_Proxy(FolderItem *This,DATE dt); | 
 |   void __RPC_STUB FolderItem_put_ModifyDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_Size_Proxy(FolderItem *This,LONG *pul); | 
 |   void __RPC_STUB FolderItem_get_Size_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_get_Type_Proxy(FolderItem *This,BSTR *pbs); | 
 |   void __RPC_STUB FolderItem_get_Type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_Verbs_Proxy(FolderItem *This,FolderItemVerbs **ppfic); | 
 |   void __RPC_STUB FolderItem_Verbs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem_InvokeVerb_Proxy(FolderItem *This,VARIANT vVerb); | 
 |   void __RPC_STUB FolderItem_InvokeVerb_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __FolderItems_INTERFACE_DEFINED__ | 
 | #define __FolderItems_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_FolderItems; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItems : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Count(long *plCount) = 0; | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI Item(VARIANT index,FolderItem **ppid) = 0; | 
 |     virtual HRESULT WINAPI _NewEnum(IUnknown **ppunk) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItemsVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItems *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItems *This); | 
 |       ULONG (WINAPI *Release)(FolderItems *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItems *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItems *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItems *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItems *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Count)(FolderItems *This,long *plCount); | 
 |       HRESULT (WINAPI *get_Application)(FolderItems *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItems *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Item)(FolderItems *This,VARIANT index,FolderItem **ppid); | 
 |       HRESULT (WINAPI *_NewEnum)(FolderItems *This,IUnknown **ppunk); | 
 |     END_INTERFACE | 
 |   } FolderItemsVtbl; | 
 |   struct FolderItems { | 
 |     CONST_VTBL struct FolderItemsVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItems_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItems_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItems_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItems_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItems_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItems_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItems_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) | 
 | #define FolderItems_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItems_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItems_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) | 
 | #define FolderItems__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItems_get_Count_Proxy(FolderItems *This,long *plCount); | 
 |   void __RPC_STUB FolderItems_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItems_get_Application_Proxy(FolderItems *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItems_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItems_get_Parent_Proxy(FolderItems *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItems_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItems_Item_Proxy(FolderItems *This,VARIANT index,FolderItem **ppid); | 
 |   void __RPC_STUB FolderItems_Item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItems__NewEnum_Proxy(FolderItems *This,IUnknown **ppunk); | 
 |   void __RPC_STUB FolderItems__NewEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __FolderItemVerb_INTERFACE_DEFINED__ | 
 | #define __FolderItemVerb_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_FolderItemVerb; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItemVerb : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Name(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI DoIt(void) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItemVerbVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItemVerb *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItemVerb *This); | 
 |       ULONG (WINAPI *Release)(FolderItemVerb *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItemVerb *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItemVerb *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItemVerb *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItemVerb *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(FolderItemVerb *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItemVerb *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Name)(FolderItemVerb *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *DoIt)(FolderItemVerb *This); | 
 |     END_INTERFACE | 
 |   } FolderItemVerbVtbl; | 
 |   struct FolderItemVerb { | 
 |     CONST_VTBL struct FolderItemVerbVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItemVerb_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItemVerb_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItemVerb_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItemVerb_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItemVerb_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItemVerb_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItemVerb_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItemVerb_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItemVerb_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItemVerb_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) | 
 | #define FolderItemVerb_DoIt(This) (This)->lpVtbl->DoIt(This) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItemVerb_get_Application_Proxy(FolderItemVerb *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItemVerb_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerb_get_Parent_Proxy(FolderItemVerb *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItemVerb_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerb_get_Name_Proxy(FolderItemVerb *This,BSTR *pbs); | 
 |   void __RPC_STUB FolderItemVerb_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerb_DoIt_Proxy(FolderItemVerb *This); | 
 |   void __RPC_STUB FolderItemVerb_DoIt_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __FolderItemVerbs_INTERFACE_DEFINED__ | 
 | #define __FolderItemVerbs_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_FolderItemVerbs; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItemVerbs : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Count(long *plCount) = 0; | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI Item(VARIANT index,FolderItemVerb **ppid) = 0; | 
 |     virtual HRESULT WINAPI _NewEnum(IUnknown **ppunk) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItemVerbsVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItemVerbs *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItemVerbs *This); | 
 |       ULONG (WINAPI *Release)(FolderItemVerbs *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItemVerbs *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItemVerbs *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItemVerbs *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItemVerbs *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Count)(FolderItemVerbs *This,long *plCount); | 
 |       HRESULT (WINAPI *get_Application)(FolderItemVerbs *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItemVerbs *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Item)(FolderItemVerbs *This,VARIANT index,FolderItemVerb **ppid); | 
 |       HRESULT (WINAPI *_NewEnum)(FolderItemVerbs *This,IUnknown **ppunk); | 
 |     END_INTERFACE | 
 |   } FolderItemVerbsVtbl; | 
 |   struct FolderItemVerbs { | 
 |     CONST_VTBL struct FolderItemVerbsVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItemVerbs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItemVerbs_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItemVerbs_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItemVerbs_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItemVerbs_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItemVerbs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItemVerbs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItemVerbs_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) | 
 | #define FolderItemVerbs_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItemVerbs_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItemVerbs_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) | 
 | #define FolderItemVerbs__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItemVerbs_get_Count_Proxy(FolderItemVerbs *This,long *plCount); | 
 |   void __RPC_STUB FolderItemVerbs_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerbs_get_Application_Proxy(FolderItemVerbs *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItemVerbs_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerbs_get_Parent_Proxy(FolderItemVerbs *This,IDispatch **ppid); | 
 |   void __RPC_STUB FolderItemVerbs_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerbs_Item_Proxy(FolderItemVerbs *This,VARIANT index,FolderItemVerb **ppid); | 
 |   void __RPC_STUB FolderItemVerbs_Item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItemVerbs__NewEnum_Proxy(FolderItemVerbs *This,IUnknown **ppunk); | 
 |   void __RPC_STUB FolderItemVerbs__NewEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __Folder_INTERFACE_DEFINED__ | 
 | #define __Folder_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_Folder; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct Folder : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Title(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_ParentFolder(Folder **ppsf) = 0; | 
 |     virtual HRESULT WINAPI Items(FolderItems **ppid) = 0; | 
 |     virtual HRESULT WINAPI ParseName(BSTR bName,FolderItem **ppid) = 0; | 
 |     virtual HRESULT WINAPI NewFolder(BSTR bName,VARIANT vOptions) = 0; | 
 |     virtual HRESULT WINAPI MoveHere(VARIANT vItem,VARIANT vOptions) = 0; | 
 |     virtual HRESULT WINAPI CopyHere(VARIANT vItem,VARIANT vOptions) = 0; | 
 |     virtual HRESULT WINAPI GetDetailsOf(VARIANT vItem,int iColumn,BSTR *pbs) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(Folder *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(Folder *This); | 
 |       ULONG (WINAPI *Release)(Folder *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(Folder *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(Folder *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(Folder *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(Folder *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Title)(Folder *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Application)(Folder *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(Folder *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_ParentFolder)(Folder *This,Folder **ppsf); | 
 |       HRESULT (WINAPI *Items)(Folder *This,FolderItems **ppid); | 
 |       HRESULT (WINAPI *ParseName)(Folder *This,BSTR bName,FolderItem **ppid); | 
 |       HRESULT (WINAPI *NewFolder)(Folder *This,BSTR bName,VARIANT vOptions); | 
 |       HRESULT (WINAPI *MoveHere)(Folder *This,VARIANT vItem,VARIANT vOptions); | 
 |       HRESULT (WINAPI *CopyHere)(Folder *This,VARIANT vItem,VARIANT vOptions); | 
 |       HRESULT (WINAPI *GetDetailsOf)(Folder *This,VARIANT vItem,int iColumn,BSTR *pbs); | 
 |     END_INTERFACE | 
 |   } FolderVtbl; | 
 |   struct Folder { | 
 |     CONST_VTBL struct FolderVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define Folder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define Folder_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define Folder_Release(This) (This)->lpVtbl->Release(This) | 
 | #define Folder_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define Folder_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define Folder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define Folder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define Folder_get_Title(This,pbs) (This)->lpVtbl->get_Title(This,pbs) | 
 | #define Folder_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define Folder_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define Folder_get_ParentFolder(This,ppsf) (This)->lpVtbl->get_ParentFolder(This,ppsf) | 
 | #define Folder_Items(This,ppid) (This)->lpVtbl->Items(This,ppid) | 
 | #define Folder_ParseName(This,bName,ppid) (This)->lpVtbl->ParseName(This,bName,ppid) | 
 | #define Folder_NewFolder(This,bName,vOptions) (This)->lpVtbl->NewFolder(This,bName,vOptions) | 
 | #define Folder_MoveHere(This,vItem,vOptions) (This)->lpVtbl->MoveHere(This,vItem,vOptions) | 
 | #define Folder_CopyHere(This,vItem,vOptions) (This)->lpVtbl->CopyHere(This,vItem,vOptions) | 
 | #define Folder_GetDetailsOf(This,vItem,iColumn,pbs) (This)->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI Folder_get_Title_Proxy(Folder *This,BSTR *pbs); | 
 |   void __RPC_STUB Folder_get_Title_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_get_Application_Proxy(Folder *This,IDispatch **ppid); | 
 |   void __RPC_STUB Folder_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_get_Parent_Proxy(Folder *This,IDispatch **ppid); | 
 |   void __RPC_STUB Folder_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_get_ParentFolder_Proxy(Folder *This,Folder **ppsf); | 
 |   void __RPC_STUB Folder_get_ParentFolder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_Items_Proxy(Folder *This,FolderItems **ppid); | 
 |   void __RPC_STUB Folder_Items_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_ParseName_Proxy(Folder *This,BSTR bName,FolderItem **ppid); | 
 |   void __RPC_STUB Folder_ParseName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_NewFolder_Proxy(Folder *This,BSTR bName,VARIANT vOptions); | 
 |   void __RPC_STUB Folder_NewFolder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_MoveHere_Proxy(Folder *This,VARIANT vItem,VARIANT vOptions); | 
 |   void __RPC_STUB Folder_MoveHere_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_CopyHere_Proxy(Folder *This,VARIANT vItem,VARIANT vOptions); | 
 |   void __RPC_STUB Folder_CopyHere_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder_GetDetailsOf_Proxy(Folder *This,VARIANT vItem,int iColumn,BSTR *pbs); | 
 |   void __RPC_STUB Folder_GetDetailsOf_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __Folder2_INTERFACE_DEFINED__ | 
 | #define __Folder2_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_Folder2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct Folder2 : public Folder { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Self(FolderItem **ppfi) = 0; | 
 |     virtual HRESULT WINAPI get_OfflineStatus(LONG *pul) = 0; | 
 |     virtual HRESULT WINAPI Synchronize(void) = 0; | 
 |     virtual HRESULT WINAPI get_HaveToShowWebViewBarricade(VARIANT_BOOL *pbHaveToShowWebViewBarricade) = 0; | 
 |     virtual HRESULT WINAPI DismissedWebViewBarricade(void) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct Folder2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(Folder2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(Folder2 *This); | 
 |       ULONG (WINAPI *Release)(Folder2 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(Folder2 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(Folder2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(Folder2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(Folder2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Title)(Folder2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Application)(Folder2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(Folder2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_ParentFolder)(Folder2 *This,Folder **ppsf); | 
 |       HRESULT (WINAPI *Items)(Folder2 *This,FolderItems **ppid); | 
 |       HRESULT (WINAPI *ParseName)(Folder2 *This,BSTR bName,FolderItem **ppid); | 
 |       HRESULT (WINAPI *NewFolder)(Folder2 *This,BSTR bName,VARIANT vOptions); | 
 |       HRESULT (WINAPI *MoveHere)(Folder2 *This,VARIANT vItem,VARIANT vOptions); | 
 |       HRESULT (WINAPI *CopyHere)(Folder2 *This,VARIANT vItem,VARIANT vOptions); | 
 |       HRESULT (WINAPI *GetDetailsOf)(Folder2 *This,VARIANT vItem,int iColumn,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Self)(Folder2 *This,FolderItem **ppfi); | 
 |       HRESULT (WINAPI *get_OfflineStatus)(Folder2 *This,LONG *pul); | 
 |       HRESULT (WINAPI *Synchronize)(Folder2 *This); | 
 |       HRESULT (WINAPI *get_HaveToShowWebViewBarricade)(Folder2 *This,VARIANT_BOOL *pbHaveToShowWebViewBarricade); | 
 |       HRESULT (WINAPI *DismissedWebViewBarricade)(Folder2 *This); | 
 |     END_INTERFACE | 
 |   } Folder2Vtbl; | 
 |   struct Folder2 { | 
 |     CONST_VTBL struct Folder2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define Folder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define Folder2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define Folder2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define Folder2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define Folder2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define Folder2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define Folder2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define Folder2_get_Title(This,pbs) (This)->lpVtbl->get_Title(This,pbs) | 
 | #define Folder2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define Folder2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define Folder2_get_ParentFolder(This,ppsf) (This)->lpVtbl->get_ParentFolder(This,ppsf) | 
 | #define Folder2_Items(This,ppid) (This)->lpVtbl->Items(This,ppid) | 
 | #define Folder2_ParseName(This,bName,ppid) (This)->lpVtbl->ParseName(This,bName,ppid) | 
 | #define Folder2_NewFolder(This,bName,vOptions) (This)->lpVtbl->NewFolder(This,bName,vOptions) | 
 | #define Folder2_MoveHere(This,vItem,vOptions) (This)->lpVtbl->MoveHere(This,vItem,vOptions) | 
 | #define Folder2_CopyHere(This,vItem,vOptions) (This)->lpVtbl->CopyHere(This,vItem,vOptions) | 
 | #define Folder2_GetDetailsOf(This,vItem,iColumn,pbs) (This)->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs) | 
 | #define Folder2_get_Self(This,ppfi) (This)->lpVtbl->get_Self(This,ppfi) | 
 | #define Folder2_get_OfflineStatus(This,pul) (This)->lpVtbl->get_OfflineStatus(This,pul) | 
 | #define Folder2_Synchronize(This) (This)->lpVtbl->Synchronize(This) | 
 | #define Folder2_get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) (This)->lpVtbl->get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) | 
 | #define Folder2_DismissedWebViewBarricade(This) (This)->lpVtbl->DismissedWebViewBarricade(This) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI Folder2_get_Self_Proxy(Folder2 *This,FolderItem **ppfi); | 
 |   void __RPC_STUB Folder2_get_Self_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder2_get_OfflineStatus_Proxy(Folder2 *This,LONG *pul); | 
 |   void __RPC_STUB Folder2_get_OfflineStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder2_Synchronize_Proxy(Folder2 *This); | 
 |   void __RPC_STUB Folder2_Synchronize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder2_get_HaveToShowWebViewBarricade_Proxy(Folder2 *This,VARIANT_BOOL *pbHaveToShowWebViewBarricade); | 
 |   void __RPC_STUB Folder2_get_HaveToShowWebViewBarricade_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder2_DismissedWebViewBarricade_Proxy(Folder2 *This); | 
 |   void __RPC_STUB Folder2_DismissedWebViewBarricade_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __Folder3_INTERFACE_DEFINED__ | 
 | #define __Folder3_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_Folder3; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct Folder3 : public Folder2 { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_ShowWebViewBarricade(VARIANT_BOOL *pbShowWebViewBarricade) = 0; | 
 |     virtual HRESULT WINAPI put_ShowWebViewBarricade(VARIANT_BOOL bShowWebViewBarricade) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct Folder3Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(Folder3 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(Folder3 *This); | 
 |       ULONG (WINAPI *Release)(Folder3 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(Folder3 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(Folder3 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(Folder3 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(Folder3 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Title)(Folder3 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Application)(Folder3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(Folder3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_ParentFolder)(Folder3 *This,Folder **ppsf); | 
 |       HRESULT (WINAPI *Items)(Folder3 *This,FolderItems **ppid); | 
 |       HRESULT (WINAPI *ParseName)(Folder3 *This,BSTR bName,FolderItem **ppid); | 
 |       HRESULT (WINAPI *NewFolder)(Folder3 *This,BSTR bName,VARIANT vOptions); | 
 |       HRESULT (WINAPI *MoveHere)(Folder3 *This,VARIANT vItem,VARIANT vOptions); | 
 |       HRESULT (WINAPI *CopyHere)(Folder3 *This,VARIANT vItem,VARIANT vOptions); | 
 |       HRESULT (WINAPI *GetDetailsOf)(Folder3 *This,VARIANT vItem,int iColumn,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Self)(Folder3 *This,FolderItem **ppfi); | 
 |       HRESULT (WINAPI *get_OfflineStatus)(Folder3 *This,LONG *pul); | 
 |       HRESULT (WINAPI *Synchronize)(Folder3 *This); | 
 |       HRESULT (WINAPI *get_HaveToShowWebViewBarricade)(Folder3 *This,VARIANT_BOOL *pbHaveToShowWebViewBarricade); | 
 |       HRESULT (WINAPI *DismissedWebViewBarricade)(Folder3 *This); | 
 |       HRESULT (WINAPI *get_ShowWebViewBarricade)(Folder3 *This,VARIANT_BOOL *pbShowWebViewBarricade); | 
 |       HRESULT (WINAPI *put_ShowWebViewBarricade)(Folder3 *This,VARIANT_BOOL bShowWebViewBarricade); | 
 |     END_INTERFACE | 
 |   } Folder3Vtbl; | 
 |   struct Folder3 { | 
 |     CONST_VTBL struct Folder3Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define Folder3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define Folder3_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define Folder3_Release(This) (This)->lpVtbl->Release(This) | 
 | #define Folder3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define Folder3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define Folder3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define Folder3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define Folder3_get_Title(This,pbs) (This)->lpVtbl->get_Title(This,pbs) | 
 | #define Folder3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define Folder3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define Folder3_get_ParentFolder(This,ppsf) (This)->lpVtbl->get_ParentFolder(This,ppsf) | 
 | #define Folder3_Items(This,ppid) (This)->lpVtbl->Items(This,ppid) | 
 | #define Folder3_ParseName(This,bName,ppid) (This)->lpVtbl->ParseName(This,bName,ppid) | 
 | #define Folder3_NewFolder(This,bName,vOptions) (This)->lpVtbl->NewFolder(This,bName,vOptions) | 
 | #define Folder3_MoveHere(This,vItem,vOptions) (This)->lpVtbl->MoveHere(This,vItem,vOptions) | 
 | #define Folder3_CopyHere(This,vItem,vOptions) (This)->lpVtbl->CopyHere(This,vItem,vOptions) | 
 | #define Folder3_GetDetailsOf(This,vItem,iColumn,pbs) (This)->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs) | 
 | #define Folder3_get_Self(This,ppfi) (This)->lpVtbl->get_Self(This,ppfi) | 
 | #define Folder3_get_OfflineStatus(This,pul) (This)->lpVtbl->get_OfflineStatus(This,pul) | 
 | #define Folder3_Synchronize(This) (This)->lpVtbl->Synchronize(This) | 
 | #define Folder3_get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) (This)->lpVtbl->get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) | 
 | #define Folder3_DismissedWebViewBarricade(This) (This)->lpVtbl->DismissedWebViewBarricade(This) | 
 | #define Folder3_get_ShowWebViewBarricade(This,pbShowWebViewBarricade) (This)->lpVtbl->get_ShowWebViewBarricade(This,pbShowWebViewBarricade) | 
 | #define Folder3_put_ShowWebViewBarricade(This,bShowWebViewBarricade) (This)->lpVtbl->put_ShowWebViewBarricade(This,bShowWebViewBarricade) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI Folder3_get_ShowWebViewBarricade_Proxy(Folder3 *This,VARIANT_BOOL *pbShowWebViewBarricade); | 
 |   void __RPC_STUB Folder3_get_ShowWebViewBarricade_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI Folder3_put_ShowWebViewBarricade_Proxy(Folder3 *This,VARIANT_BOOL bShowWebViewBarricade); | 
 |   void __RPC_STUB Folder3_put_ShowWebViewBarricade_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __FolderItem2_INTERFACE_DEFINED__ | 
 | #define __FolderItem2_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_FolderItem2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItem2 : public FolderItem { | 
 |   public: | 
 |     virtual HRESULT WINAPI InvokeVerbEx(VARIANT vVerb,VARIANT vArgs) = 0; | 
 |     virtual HRESULT WINAPI ExtendedProperty(BSTR bstrPropName,VARIANT *pvRet) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItem2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItem2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItem2 *This); | 
 |       ULONG (WINAPI *Release)(FolderItem2 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItem2 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItem2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItem2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItem2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(FolderItem2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItem2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Name)(FolderItem2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Name)(FolderItem2 *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Path)(FolderItem2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_GetLink)(FolderItem2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_GetFolder)(FolderItem2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_IsLink)(FolderItem2 *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_IsFolder)(FolderItem2 *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_IsFileSystem)(FolderItem2 *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_IsBrowsable)(FolderItem2 *This,VARIANT_BOOL *pb); | 
 |       HRESULT (WINAPI *get_ModifyDate)(FolderItem2 *This,DATE *pdt); | 
 |       HRESULT (WINAPI *put_ModifyDate)(FolderItem2 *This,DATE dt); | 
 |       HRESULT (WINAPI *get_Size)(FolderItem2 *This,LONG *pul); | 
 |       HRESULT (WINAPI *get_Type)(FolderItem2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *Verbs)(FolderItem2 *This,FolderItemVerbs **ppfic); | 
 |       HRESULT (WINAPI *InvokeVerb)(FolderItem2 *This,VARIANT vVerb); | 
 |       HRESULT (WINAPI *InvokeVerbEx)(FolderItem2 *This,VARIANT vVerb,VARIANT vArgs); | 
 |       HRESULT (WINAPI *ExtendedProperty)(FolderItem2 *This,BSTR bstrPropName,VARIANT *pvRet); | 
 |     END_INTERFACE | 
 |   } FolderItem2Vtbl; | 
 |   struct FolderItem2 { | 
 |     CONST_VTBL struct FolderItem2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItem2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItem2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItem2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItem2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItem2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItem2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItem2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItem2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItem2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItem2_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) | 
 | #define FolderItem2_put_Name(This,bs) (This)->lpVtbl->put_Name(This,bs) | 
 | #define FolderItem2_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) | 
 | #define FolderItem2_get_GetLink(This,ppid) (This)->lpVtbl->get_GetLink(This,ppid) | 
 | #define FolderItem2_get_GetFolder(This,ppid) (This)->lpVtbl->get_GetFolder(This,ppid) | 
 | #define FolderItem2_get_IsLink(This,pb) (This)->lpVtbl->get_IsLink(This,pb) | 
 | #define FolderItem2_get_IsFolder(This,pb) (This)->lpVtbl->get_IsFolder(This,pb) | 
 | #define FolderItem2_get_IsFileSystem(This,pb) (This)->lpVtbl->get_IsFileSystem(This,pb) | 
 | #define FolderItem2_get_IsBrowsable(This,pb) (This)->lpVtbl->get_IsBrowsable(This,pb) | 
 | #define FolderItem2_get_ModifyDate(This,pdt) (This)->lpVtbl->get_ModifyDate(This,pdt) | 
 | #define FolderItem2_put_ModifyDate(This,dt) (This)->lpVtbl->put_ModifyDate(This,dt) | 
 | #define FolderItem2_get_Size(This,pul) (This)->lpVtbl->get_Size(This,pul) | 
 | #define FolderItem2_get_Type(This,pbs) (This)->lpVtbl->get_Type(This,pbs) | 
 | #define FolderItem2_Verbs(This,ppfic) (This)->lpVtbl->Verbs(This,ppfic) | 
 | #define FolderItem2_InvokeVerb(This,vVerb) (This)->lpVtbl->InvokeVerb(This,vVerb) | 
 | #define FolderItem2_InvokeVerbEx(This,vVerb,vArgs) (This)->lpVtbl->InvokeVerbEx(This,vVerb,vArgs) | 
 | #define FolderItem2_ExtendedProperty(This,bstrPropName,pvRet) (This)->lpVtbl->ExtendedProperty(This,bstrPropName,pvRet) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItem2_InvokeVerbEx_Proxy(FolderItem2 *This,VARIANT vVerb,VARIANT vArgs); | 
 |   void __RPC_STUB FolderItem2_InvokeVerbEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItem2_ExtendedProperty_Proxy(FolderItem2 *This,BSTR bstrPropName,VARIANT *pvRet); | 
 |   void __RPC_STUB FolderItem2_ExtendedProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_ShellFolderItem; | 
 | #ifdef __cplusplus | 
 |   class ShellFolderItem; | 
 | #endif | 
 |  | 
 | #ifndef __FolderItems2_INTERFACE_DEFINED__ | 
 | #define __FolderItems2_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_FolderItems2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItems2 : public FolderItems { | 
 |   public: | 
 |     virtual HRESULT WINAPI InvokeVerbEx(VARIANT vVerb,VARIANT vArgs) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItems2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItems2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItems2 *This); | 
 |       ULONG (WINAPI *Release)(FolderItems2 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItems2 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItems2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItems2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItems2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Count)(FolderItems2 *This,long *plCount); | 
 |       HRESULT (WINAPI *get_Application)(FolderItems2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItems2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Item)(FolderItems2 *This,VARIANT index,FolderItem **ppid); | 
 |       HRESULT (WINAPI *_NewEnum)(FolderItems2 *This,IUnknown **ppunk); | 
 |       HRESULT (WINAPI *InvokeVerbEx)(FolderItems2 *This,VARIANT vVerb,VARIANT vArgs); | 
 |     END_INTERFACE | 
 |   } FolderItems2Vtbl; | 
 |   struct FolderItems2 { | 
 |     CONST_VTBL struct FolderItems2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItems2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItems2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItems2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItems2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItems2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItems2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItems2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItems2_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) | 
 | #define FolderItems2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItems2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItems2_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) | 
 | #define FolderItems2__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) | 
 | #define FolderItems2_InvokeVerbEx(This,vVerb,vArgs) (This)->lpVtbl->InvokeVerbEx(This,vVerb,vArgs) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItems2_InvokeVerbEx_Proxy(FolderItems2 *This,VARIANT vVerb,VARIANT vArgs); | 
 |   void __RPC_STUB FolderItems2_InvokeVerbEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __FolderItems3_INTERFACE_DEFINED__ | 
 | #define __FolderItems3_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_FolderItems3; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct FolderItems3 : public FolderItems2 { | 
 |   public: | 
 |     virtual HRESULT WINAPI Filter(long grfFlags,BSTR bstrFileSpec) = 0; | 
 |     virtual HRESULT WINAPI get_Verbs(FolderItemVerbs **ppfic) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct FolderItems3Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(FolderItems3 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(FolderItems3 *This); | 
 |       ULONG (WINAPI *Release)(FolderItems3 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(FolderItems3 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(FolderItems3 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(FolderItems3 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(FolderItems3 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Count)(FolderItems3 *This,long *plCount); | 
 |       HRESULT (WINAPI *get_Application)(FolderItems3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(FolderItems3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Item)(FolderItems3 *This,VARIANT index,FolderItem **ppid); | 
 |       HRESULT (WINAPI *_NewEnum)(FolderItems3 *This,IUnknown **ppunk); | 
 |       HRESULT (WINAPI *InvokeVerbEx)(FolderItems3 *This,VARIANT vVerb,VARIANT vArgs); | 
 |       HRESULT (WINAPI *Filter)(FolderItems3 *This,long grfFlags,BSTR bstrFileSpec); | 
 |       HRESULT (WINAPI *get_Verbs)(FolderItems3 *This,FolderItemVerbs **ppfic); | 
 |     END_INTERFACE | 
 |   } FolderItems3Vtbl; | 
 |   struct FolderItems3 { | 
 |     CONST_VTBL struct FolderItems3Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define FolderItems3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define FolderItems3_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define FolderItems3_Release(This) (This)->lpVtbl->Release(This) | 
 | #define FolderItems3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define FolderItems3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define FolderItems3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define FolderItems3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define FolderItems3_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) | 
 | #define FolderItems3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define FolderItems3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define FolderItems3_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) | 
 | #define FolderItems3__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) | 
 | #define FolderItems3_InvokeVerbEx(This,vVerb,vArgs) (This)->lpVtbl->InvokeVerbEx(This,vVerb,vArgs) | 
 | #define FolderItems3_Filter(This,grfFlags,bstrFileSpec) (This)->lpVtbl->Filter(This,grfFlags,bstrFileSpec) | 
 | #define FolderItems3_get_Verbs(This,ppfic) (This)->lpVtbl->get_Verbs(This,ppfic) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI FolderItems3_Filter_Proxy(FolderItems3 *This,long grfFlags,BSTR bstrFileSpec); | 
 |   void __RPC_STUB FolderItems3_Filter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI FolderItems3_get_Verbs_Proxy(FolderItems3 *This,FolderItemVerbs **ppfic); | 
 |   void __RPC_STUB FolderItems3_get_Verbs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IShellLinkDual_INTERFACE_DEFINED__ | 
 | #define __IShellLinkDual_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellLinkDual; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellLinkDual : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Path(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI put_Path(BSTR bs) = 0; | 
 |     virtual HRESULT WINAPI get_Description(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI put_Description(BSTR bs) = 0; | 
 |     virtual HRESULT WINAPI get_WorkingDirectory(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI put_WorkingDirectory(BSTR bs) = 0; | 
 |     virtual HRESULT WINAPI get_Arguments(BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI put_Arguments(BSTR bs) = 0; | 
 |     virtual HRESULT WINAPI get_Hotkey(int *piHK) = 0; | 
 |     virtual HRESULT WINAPI put_Hotkey(int iHK) = 0; | 
 |     virtual HRESULT WINAPI get_ShowCommand(int *piShowCommand) = 0; | 
 |     virtual HRESULT WINAPI put_ShowCommand(int iShowCommand) = 0; | 
 |     virtual HRESULT WINAPI Resolve(int fFlags) = 0; | 
 |     virtual HRESULT WINAPI GetIconLocation(BSTR *pbs,int *piIcon) = 0; | 
 |     virtual HRESULT WINAPI SetIconLocation(BSTR bs,int iIcon) = 0; | 
 |     virtual HRESULT WINAPI Save(VARIANT vWhere) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellLinkDualVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellLinkDual *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellLinkDual *This); | 
 |       ULONG (WINAPI *Release)(IShellLinkDual *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellLinkDual *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellLinkDual *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellLinkDual *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellLinkDual *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Path)(IShellLinkDual *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Path)(IShellLinkDual *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Description)(IShellLinkDual *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Description)(IShellLinkDual *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_WorkingDirectory)(IShellLinkDual *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_WorkingDirectory)(IShellLinkDual *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Arguments)(IShellLinkDual *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Arguments)(IShellLinkDual *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Hotkey)(IShellLinkDual *This,int *piHK); | 
 |       HRESULT (WINAPI *put_Hotkey)(IShellLinkDual *This,int iHK); | 
 |       HRESULT (WINAPI *get_ShowCommand)(IShellLinkDual *This,int *piShowCommand); | 
 |       HRESULT (WINAPI *put_ShowCommand)(IShellLinkDual *This,int iShowCommand); | 
 |       HRESULT (WINAPI *Resolve)(IShellLinkDual *This,int fFlags); | 
 |       HRESULT (WINAPI *GetIconLocation)(IShellLinkDual *This,BSTR *pbs,int *piIcon); | 
 |       HRESULT (WINAPI *SetIconLocation)(IShellLinkDual *This,BSTR bs,int iIcon); | 
 |       HRESULT (WINAPI *Save)(IShellLinkDual *This,VARIANT vWhere); | 
 |     END_INTERFACE | 
 |   } IShellLinkDualVtbl; | 
 |   struct IShellLinkDual { | 
 |     CONST_VTBL struct IShellLinkDualVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellLinkDual_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellLinkDual_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellLinkDual_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellLinkDual_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellLinkDual_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellLinkDual_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellLinkDual_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellLinkDual_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) | 
 | #define IShellLinkDual_put_Path(This,bs) (This)->lpVtbl->put_Path(This,bs) | 
 | #define IShellLinkDual_get_Description(This,pbs) (This)->lpVtbl->get_Description(This,pbs) | 
 | #define IShellLinkDual_put_Description(This,bs) (This)->lpVtbl->put_Description(This,bs) | 
 | #define IShellLinkDual_get_WorkingDirectory(This,pbs) (This)->lpVtbl->get_WorkingDirectory(This,pbs) | 
 | #define IShellLinkDual_put_WorkingDirectory(This,bs) (This)->lpVtbl->put_WorkingDirectory(This,bs) | 
 | #define IShellLinkDual_get_Arguments(This,pbs) (This)->lpVtbl->get_Arguments(This,pbs) | 
 | #define IShellLinkDual_put_Arguments(This,bs) (This)->lpVtbl->put_Arguments(This,bs) | 
 | #define IShellLinkDual_get_Hotkey(This,piHK) (This)->lpVtbl->get_Hotkey(This,piHK) | 
 | #define IShellLinkDual_put_Hotkey(This,iHK) (This)->lpVtbl->put_Hotkey(This,iHK) | 
 | #define IShellLinkDual_get_ShowCommand(This,piShowCommand) (This)->lpVtbl->get_ShowCommand(This,piShowCommand) | 
 | #define IShellLinkDual_put_ShowCommand(This,iShowCommand) (This)->lpVtbl->put_ShowCommand(This,iShowCommand) | 
 | #define IShellLinkDual_Resolve(This,fFlags) (This)->lpVtbl->Resolve(This,fFlags) | 
 | #define IShellLinkDual_GetIconLocation(This,pbs,piIcon) (This)->lpVtbl->GetIconLocation(This,pbs,piIcon) | 
 | #define IShellLinkDual_SetIconLocation(This,bs,iIcon) (This)->lpVtbl->SetIconLocation(This,bs,iIcon) | 
 | #define IShellLinkDual_Save(This,vWhere) (This)->lpVtbl->Save(This,vWhere) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellLinkDual_get_Path_Proxy(IShellLinkDual *This,BSTR *pbs); | 
 |   void __RPC_STUB IShellLinkDual_get_Path_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_put_Path_Proxy(IShellLinkDual *This,BSTR bs); | 
 |   void __RPC_STUB IShellLinkDual_put_Path_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_get_Description_Proxy(IShellLinkDual *This,BSTR *pbs); | 
 |   void __RPC_STUB IShellLinkDual_get_Description_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_put_Description_Proxy(IShellLinkDual *This,BSTR bs); | 
 |   void __RPC_STUB IShellLinkDual_put_Description_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_get_WorkingDirectory_Proxy(IShellLinkDual *This,BSTR *pbs); | 
 |   void __RPC_STUB IShellLinkDual_get_WorkingDirectory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_put_WorkingDirectory_Proxy(IShellLinkDual *This,BSTR bs); | 
 |   void __RPC_STUB IShellLinkDual_put_WorkingDirectory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_get_Arguments_Proxy(IShellLinkDual *This,BSTR *pbs); | 
 |   void __RPC_STUB IShellLinkDual_get_Arguments_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_put_Arguments_Proxy(IShellLinkDual *This,BSTR bs); | 
 |   void __RPC_STUB IShellLinkDual_put_Arguments_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_get_Hotkey_Proxy(IShellLinkDual *This,int *piHK); | 
 |   void __RPC_STUB IShellLinkDual_get_Hotkey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_put_Hotkey_Proxy(IShellLinkDual *This,int iHK); | 
 |   void __RPC_STUB IShellLinkDual_put_Hotkey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_get_ShowCommand_Proxy(IShellLinkDual *This,int *piShowCommand); | 
 |   void __RPC_STUB IShellLinkDual_get_ShowCommand_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_put_ShowCommand_Proxy(IShellLinkDual *This,int iShowCommand); | 
 |   void __RPC_STUB IShellLinkDual_put_ShowCommand_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_Resolve_Proxy(IShellLinkDual *This,int fFlags); | 
 |   void __RPC_STUB IShellLinkDual_Resolve_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_GetIconLocation_Proxy(IShellLinkDual *This,BSTR *pbs,int *piIcon); | 
 |   void __RPC_STUB IShellLinkDual_GetIconLocation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_SetIconLocation_Proxy(IShellLinkDual *This,BSTR bs,int iIcon); | 
 |   void __RPC_STUB IShellLinkDual_SetIconLocation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellLinkDual_Save_Proxy(IShellLinkDual *This,VARIANT vWhere); | 
 |   void __RPC_STUB IShellLinkDual_Save_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IShellLinkDual2_INTERFACE_DEFINED__ | 
 | #define __IShellLinkDual2_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellLinkDual2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellLinkDual2 : public IShellLinkDual { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Target(FolderItem **ppfi) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellLinkDual2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellLinkDual2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellLinkDual2 *This); | 
 |       ULONG (WINAPI *Release)(IShellLinkDual2 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellLinkDual2 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellLinkDual2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellLinkDual2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellLinkDual2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Path)(IShellLinkDual2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Path)(IShellLinkDual2 *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Description)(IShellLinkDual2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Description)(IShellLinkDual2 *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_WorkingDirectory)(IShellLinkDual2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_WorkingDirectory)(IShellLinkDual2 *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Arguments)(IShellLinkDual2 *This,BSTR *pbs); | 
 |       HRESULT (WINAPI *put_Arguments)(IShellLinkDual2 *This,BSTR bs); | 
 |       HRESULT (WINAPI *get_Hotkey)(IShellLinkDual2 *This,int *piHK); | 
 |       HRESULT (WINAPI *put_Hotkey)(IShellLinkDual2 *This,int iHK); | 
 |       HRESULT (WINAPI *get_ShowCommand)(IShellLinkDual2 *This,int *piShowCommand); | 
 |       HRESULT (WINAPI *put_ShowCommand)(IShellLinkDual2 *This,int iShowCommand); | 
 |       HRESULT (WINAPI *Resolve)(IShellLinkDual2 *This,int fFlags); | 
 |       HRESULT (WINAPI *GetIconLocation)(IShellLinkDual2 *This,BSTR *pbs,int *piIcon); | 
 |       HRESULT (WINAPI *SetIconLocation)(IShellLinkDual2 *This,BSTR bs,int iIcon); | 
 |       HRESULT (WINAPI *Save)(IShellLinkDual2 *This,VARIANT vWhere); | 
 |       HRESULT (WINAPI *get_Target)(IShellLinkDual2 *This,FolderItem **ppfi); | 
 |     END_INTERFACE | 
 |   } IShellLinkDual2Vtbl; | 
 |   struct IShellLinkDual2 { | 
 |     CONST_VTBL struct IShellLinkDual2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellLinkDual2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellLinkDual2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellLinkDual2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellLinkDual2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellLinkDual2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellLinkDual2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellLinkDual2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellLinkDual2_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) | 
 | #define IShellLinkDual2_put_Path(This,bs) (This)->lpVtbl->put_Path(This,bs) | 
 | #define IShellLinkDual2_get_Description(This,pbs) (This)->lpVtbl->get_Description(This,pbs) | 
 | #define IShellLinkDual2_put_Description(This,bs) (This)->lpVtbl->put_Description(This,bs) | 
 | #define IShellLinkDual2_get_WorkingDirectory(This,pbs) (This)->lpVtbl->get_WorkingDirectory(This,pbs) | 
 | #define IShellLinkDual2_put_WorkingDirectory(This,bs) (This)->lpVtbl->put_WorkingDirectory(This,bs) | 
 | #define IShellLinkDual2_get_Arguments(This,pbs) (This)->lpVtbl->get_Arguments(This,pbs) | 
 | #define IShellLinkDual2_put_Arguments(This,bs) (This)->lpVtbl->put_Arguments(This,bs) | 
 | #define IShellLinkDual2_get_Hotkey(This,piHK) (This)->lpVtbl->get_Hotkey(This,piHK) | 
 | #define IShellLinkDual2_put_Hotkey(This,iHK) (This)->lpVtbl->put_Hotkey(This,iHK) | 
 | #define IShellLinkDual2_get_ShowCommand(This,piShowCommand) (This)->lpVtbl->get_ShowCommand(This,piShowCommand) | 
 | #define IShellLinkDual2_put_ShowCommand(This,iShowCommand) (This)->lpVtbl->put_ShowCommand(This,iShowCommand) | 
 | #define IShellLinkDual2_Resolve(This,fFlags) (This)->lpVtbl->Resolve(This,fFlags) | 
 | #define IShellLinkDual2_GetIconLocation(This,pbs,piIcon) (This)->lpVtbl->GetIconLocation(This,pbs,piIcon) | 
 | #define IShellLinkDual2_SetIconLocation(This,bs,iIcon) (This)->lpVtbl->SetIconLocation(This,bs,iIcon) | 
 | #define IShellLinkDual2_Save(This,vWhere) (This)->lpVtbl->Save(This,vWhere) | 
 | #define IShellLinkDual2_get_Target(This,ppfi) (This)->lpVtbl->get_Target(This,ppfi) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellLinkDual2_get_Target_Proxy(IShellLinkDual2 *This,FolderItem **ppfi); | 
 |   void __RPC_STUB IShellLinkDual2_get_Target_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_ShellLinkObject; | 
 | #ifdef __cplusplus | 
 |   class ShellLinkObject; | 
 | #endif | 
 |  | 
 | #ifndef __IShellFolderViewDual_INTERFACE_DEFINED__ | 
 | #define __IShellFolderViewDual_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellFolderViewDual; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellFolderViewDual : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Folder(Folder **ppid) = 0; | 
 |     virtual HRESULT WINAPI SelectedItems(FolderItems **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_FocusedItem(FolderItem **ppid) = 0; | 
 |     virtual HRESULT WINAPI SelectItem(VARIANT *pvfi,int dwFlags) = 0; | 
 |     virtual HRESULT WINAPI PopupItemMenu(FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs) = 0; | 
 |     virtual HRESULT WINAPI get_Script(IDispatch **ppDisp) = 0; | 
 |     virtual HRESULT WINAPI get_ViewOptions(long *plViewOptions) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellFolderViewDualVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellFolderViewDual *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellFolderViewDual *This); | 
 |       ULONG (WINAPI *Release)(IShellFolderViewDual *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellFolderViewDual *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellFolderViewDual *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellFolderViewDual *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellFolderViewDual *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(IShellFolderViewDual *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(IShellFolderViewDual *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Folder)(IShellFolderViewDual *This,Folder **ppid); | 
 |       HRESULT (WINAPI *SelectedItems)(IShellFolderViewDual *This,FolderItems **ppid); | 
 |       HRESULT (WINAPI *get_FocusedItem)(IShellFolderViewDual *This,FolderItem **ppid); | 
 |       HRESULT (WINAPI *SelectItem)(IShellFolderViewDual *This,VARIANT *pvfi,int dwFlags); | 
 |       HRESULT (WINAPI *PopupItemMenu)(IShellFolderViewDual *This,FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Script)(IShellFolderViewDual *This,IDispatch **ppDisp); | 
 |       HRESULT (WINAPI *get_ViewOptions)(IShellFolderViewDual *This,long *plViewOptions); | 
 |     END_INTERFACE | 
 |   } IShellFolderViewDualVtbl; | 
 |   struct IShellFolderViewDual { | 
 |     CONST_VTBL struct IShellFolderViewDualVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellFolderViewDual_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellFolderViewDual_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellFolderViewDual_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellFolderViewDual_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellFolderViewDual_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellFolderViewDual_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellFolderViewDual_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellFolderViewDual_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define IShellFolderViewDual_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define IShellFolderViewDual_get_Folder(This,ppid) (This)->lpVtbl->get_Folder(This,ppid) | 
 | #define IShellFolderViewDual_SelectedItems(This,ppid) (This)->lpVtbl->SelectedItems(This,ppid) | 
 | #define IShellFolderViewDual_get_FocusedItem(This,ppid) (This)->lpVtbl->get_FocusedItem(This,ppid) | 
 | #define IShellFolderViewDual_SelectItem(This,pvfi,dwFlags) (This)->lpVtbl->SelectItem(This,pvfi,dwFlags) | 
 | #define IShellFolderViewDual_PopupItemMenu(This,pfi,vx,vy,pbs) (This)->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs) | 
 | #define IShellFolderViewDual_get_Script(This,ppDisp) (This)->lpVtbl->get_Script(This,ppDisp) | 
 | #define IShellFolderViewDual_get_ViewOptions(This,plViewOptions) (This)->lpVtbl->get_ViewOptions(This,plViewOptions) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellFolderViewDual_get_Application_Proxy(IShellFolderViewDual *This,IDispatch **ppid); | 
 |   void __RPC_STUB IShellFolderViewDual_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_get_Parent_Proxy(IShellFolderViewDual *This,IDispatch **ppid); | 
 |   void __RPC_STUB IShellFolderViewDual_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_get_Folder_Proxy(IShellFolderViewDual *This,Folder **ppid); | 
 |   void __RPC_STUB IShellFolderViewDual_get_Folder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_SelectedItems_Proxy(IShellFolderViewDual *This,FolderItems **ppid); | 
 |   void __RPC_STUB IShellFolderViewDual_SelectedItems_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_get_FocusedItem_Proxy(IShellFolderViewDual *This,FolderItem **ppid); | 
 |   void __RPC_STUB IShellFolderViewDual_get_FocusedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_SelectItem_Proxy(IShellFolderViewDual *This,VARIANT *pvfi,int dwFlags); | 
 |   void __RPC_STUB IShellFolderViewDual_SelectItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_PopupItemMenu_Proxy(IShellFolderViewDual *This,FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs); | 
 |   void __RPC_STUB IShellFolderViewDual_PopupItemMenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_get_Script_Proxy(IShellFolderViewDual *This,IDispatch **ppDisp); | 
 |   void __RPC_STUB IShellFolderViewDual_get_Script_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual_get_ViewOptions_Proxy(IShellFolderViewDual *This,long *plViewOptions); | 
 |   void __RPC_STUB IShellFolderViewDual_get_ViewOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IShellFolderViewDual2_INTERFACE_DEFINED__ | 
 | #define __IShellFolderViewDual2_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellFolderViewDual2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellFolderViewDual2 : public IShellFolderViewDual { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_CurrentViewMode(UINT *pViewMode) = 0; | 
 |     virtual HRESULT WINAPI put_CurrentViewMode(UINT ViewMode) = 0; | 
 |     virtual HRESULT WINAPI SelectItemRelative(int iRelative) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellFolderViewDual2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellFolderViewDual2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellFolderViewDual2 *This); | 
 |       ULONG (WINAPI *Release)(IShellFolderViewDual2 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellFolderViewDual2 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellFolderViewDual2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellFolderViewDual2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellFolderViewDual2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(IShellFolderViewDual2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(IShellFolderViewDual2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Folder)(IShellFolderViewDual2 *This,Folder **ppid); | 
 |       HRESULT (WINAPI *SelectedItems)(IShellFolderViewDual2 *This,FolderItems **ppid); | 
 |       HRESULT (WINAPI *get_FocusedItem)(IShellFolderViewDual2 *This,FolderItem **ppid); | 
 |       HRESULT (WINAPI *SelectItem)(IShellFolderViewDual2 *This,VARIANT *pvfi,int dwFlags); | 
 |       HRESULT (WINAPI *PopupItemMenu)(IShellFolderViewDual2 *This,FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs); | 
 |       HRESULT (WINAPI *get_Script)(IShellFolderViewDual2 *This,IDispatch **ppDisp); | 
 |       HRESULT (WINAPI *get_ViewOptions)(IShellFolderViewDual2 *This,long *plViewOptions); | 
 |       HRESULT (WINAPI *get_CurrentViewMode)(IShellFolderViewDual2 *This,UINT *pViewMode); | 
 |       HRESULT (WINAPI *put_CurrentViewMode)(IShellFolderViewDual2 *This,UINT ViewMode); | 
 |       HRESULT (WINAPI *SelectItemRelative)(IShellFolderViewDual2 *This,int iRelative); | 
 |     END_INTERFACE | 
 |   } IShellFolderViewDual2Vtbl; | 
 |   struct IShellFolderViewDual2 { | 
 |     CONST_VTBL struct IShellFolderViewDual2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellFolderViewDual2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellFolderViewDual2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellFolderViewDual2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellFolderViewDual2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellFolderViewDual2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellFolderViewDual2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellFolderViewDual2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellFolderViewDual2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define IShellFolderViewDual2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define IShellFolderViewDual2_get_Folder(This,ppid) (This)->lpVtbl->get_Folder(This,ppid) | 
 | #define IShellFolderViewDual2_SelectedItems(This,ppid) (This)->lpVtbl->SelectedItems(This,ppid) | 
 | #define IShellFolderViewDual2_get_FocusedItem(This,ppid) (This)->lpVtbl->get_FocusedItem(This,ppid) | 
 | #define IShellFolderViewDual2_SelectItem(This,pvfi,dwFlags) (This)->lpVtbl->SelectItem(This,pvfi,dwFlags) | 
 | #define IShellFolderViewDual2_PopupItemMenu(This,pfi,vx,vy,pbs) (This)->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs) | 
 | #define IShellFolderViewDual2_get_Script(This,ppDisp) (This)->lpVtbl->get_Script(This,ppDisp) | 
 | #define IShellFolderViewDual2_get_ViewOptions(This,plViewOptions) (This)->lpVtbl->get_ViewOptions(This,plViewOptions) | 
 | #define IShellFolderViewDual2_get_CurrentViewMode(This,pViewMode) (This)->lpVtbl->get_CurrentViewMode(This,pViewMode) | 
 | #define IShellFolderViewDual2_put_CurrentViewMode(This,ViewMode) (This)->lpVtbl->put_CurrentViewMode(This,ViewMode) | 
 | #define IShellFolderViewDual2_SelectItemRelative(This,iRelative) (This)->lpVtbl->SelectItemRelative(This,iRelative) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellFolderViewDual2_get_CurrentViewMode_Proxy(IShellFolderViewDual2 *This,UINT *pViewMode); | 
 |   void __RPC_STUB IShellFolderViewDual2_get_CurrentViewMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual2_put_CurrentViewMode_Proxy(IShellFolderViewDual2 *This,UINT ViewMode); | 
 |   void __RPC_STUB IShellFolderViewDual2_put_CurrentViewMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellFolderViewDual2_SelectItemRelative_Proxy(IShellFolderViewDual2 *This,int iRelative); | 
 |   void __RPC_STUB IShellFolderViewDual2_SelectItemRelative_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_ShellFolderView; | 
 | #ifdef __cplusplus | 
 |   class ShellFolderView; | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch_INTERFACE_DEFINED__ | 
 | #define __IShellDispatch_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellDispatch; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellDispatch : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI get_Application(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI get_Parent(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI NameSpace(VARIANT vDir,Folder **ppsdf) = 0; | 
 |     virtual HRESULT WINAPI BrowseForFolder(long Hwnd,BSTR Title,long Options,VARIANT RootFolder,Folder **ppsdf) = 0; | 
 |     virtual HRESULT WINAPI Windows(IDispatch **ppid) = 0; | 
 |     virtual HRESULT WINAPI Open(VARIANT vDir) = 0; | 
 |     virtual HRESULT WINAPI Explore(VARIANT vDir) = 0; | 
 |     virtual HRESULT WINAPI MinimizeAll(void) = 0; | 
 |     virtual HRESULT WINAPI UndoMinimizeALL(void) = 0; | 
 |     virtual HRESULT WINAPI FileRun(void) = 0; | 
 |     virtual HRESULT WINAPI CascadeWindows(void) = 0; | 
 |     virtual HRESULT WINAPI TileVertically(void) = 0; | 
 |     virtual HRESULT WINAPI TileHorizontally(void) = 0; | 
 |     virtual HRESULT WINAPI ShutdownWindows(void) = 0; | 
 |     virtual HRESULT WINAPI Suspend(void) = 0; | 
 |     virtual HRESULT WINAPI EjectPC(void) = 0; | 
 |     virtual HRESULT WINAPI SetTime(void) = 0; | 
 |     virtual HRESULT WINAPI TrayProperties(void) = 0; | 
 |     virtual HRESULT WINAPI Help(void) = 0; | 
 |     virtual HRESULT WINAPI FindFiles(void) = 0; | 
 |     virtual HRESULT WINAPI FindComputer(void) = 0; | 
 |     virtual HRESULT WINAPI RefreshMenu(void) = 0; | 
 |     virtual HRESULT WINAPI ControlPanelItem(BSTR szDir) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellDispatchVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellDispatch *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellDispatch *This); | 
 |       ULONG (WINAPI *Release)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellDispatch *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellDispatch *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellDispatch *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellDispatch *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(IShellDispatch *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(IShellDispatch *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *NameSpace)(IShellDispatch *This,VARIANT vDir,Folder **ppsdf); | 
 |       HRESULT (WINAPI *BrowseForFolder)(IShellDispatch *This,long Hwnd,BSTR Title,long Options,VARIANT RootFolder,Folder **ppsdf); | 
 |       HRESULT (WINAPI *Windows)(IShellDispatch *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Open)(IShellDispatch *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *Explore)(IShellDispatch *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *MinimizeAll)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *UndoMinimizeALL)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *FileRun)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *CascadeWindows)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *TileVertically)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *TileHorizontally)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *ShutdownWindows)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *Suspend)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *EjectPC)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *SetTime)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *TrayProperties)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *Help)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *FindFiles)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *FindComputer)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *RefreshMenu)(IShellDispatch *This); | 
 |       HRESULT (WINAPI *ControlPanelItem)(IShellDispatch *This,BSTR szDir); | 
 |     END_INTERFACE | 
 |   } IShellDispatchVtbl; | 
 |   struct IShellDispatch { | 
 |     CONST_VTBL struct IShellDispatchVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellDispatch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellDispatch_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellDispatch_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellDispatch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellDispatch_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define IShellDispatch_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define IShellDispatch_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) | 
 | #define IShellDispatch_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) | 
 | #define IShellDispatch_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) | 
 | #define IShellDispatch_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) | 
 | #define IShellDispatch_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) | 
 | #define IShellDispatch_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) | 
 | #define IShellDispatch_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) | 
 | #define IShellDispatch_FileRun(This) (This)->lpVtbl->FileRun(This) | 
 | #define IShellDispatch_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) | 
 | #define IShellDispatch_TileVertically(This) (This)->lpVtbl->TileVertically(This) | 
 | #define IShellDispatch_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) | 
 | #define IShellDispatch_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) | 
 | #define IShellDispatch_Suspend(This) (This)->lpVtbl->Suspend(This) | 
 | #define IShellDispatch_EjectPC(This) (This)->lpVtbl->EjectPC(This) | 
 | #define IShellDispatch_SetTime(This) (This)->lpVtbl->SetTime(This) | 
 | #define IShellDispatch_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) | 
 | #define IShellDispatch_Help(This) (This)->lpVtbl->Help(This) | 
 | #define IShellDispatch_FindFiles(This) (This)->lpVtbl->FindFiles(This) | 
 | #define IShellDispatch_FindComputer(This) (This)->lpVtbl->FindComputer(This) | 
 | #define IShellDispatch_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) | 
 | #define IShellDispatch_ControlPanelItem(This,szDir) (This)->lpVtbl->ControlPanelItem(This,szDir) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellDispatch_get_Application_Proxy(IShellDispatch *This,IDispatch **ppid); | 
 |   void __RPC_STUB IShellDispatch_get_Application_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_get_Parent_Proxy(IShellDispatch *This,IDispatch **ppid); | 
 |   void __RPC_STUB IShellDispatch_get_Parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_NameSpace_Proxy(IShellDispatch *This,VARIANT vDir,Folder **ppsdf); | 
 |   void __RPC_STUB IShellDispatch_NameSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_BrowseForFolder_Proxy(IShellDispatch *This,long Hwnd,BSTR Title,long Options,VARIANT RootFolder,Folder **ppsdf); | 
 |   void __RPC_STUB IShellDispatch_BrowseForFolder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_Windows_Proxy(IShellDispatch *This,IDispatch **ppid); | 
 |   void __RPC_STUB IShellDispatch_Windows_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_Open_Proxy(IShellDispatch *This,VARIANT vDir); | 
 |   void __RPC_STUB IShellDispatch_Open_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_Explore_Proxy(IShellDispatch *This,VARIANT vDir); | 
 |   void __RPC_STUB IShellDispatch_Explore_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_MinimizeAll_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_MinimizeAll_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_UndoMinimizeALL_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_UndoMinimizeALL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_FileRun_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_FileRun_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_CascadeWindows_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_CascadeWindows_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_TileVertically_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_TileVertically_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_TileHorizontally_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_TileHorizontally_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_ShutdownWindows_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_ShutdownWindows_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_Suspend_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_Suspend_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_EjectPC_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_EjectPC_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_SetTime_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_SetTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_TrayProperties_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_TrayProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_Help_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_Help_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_FindFiles_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_FindFiles_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_FindComputer_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_FindComputer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_RefreshMenu_Proxy(IShellDispatch *This); | 
 |   void __RPC_STUB IShellDispatch_RefreshMenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch_ControlPanelItem_Proxy(IShellDispatch *This,BSTR szDir); | 
 |   void __RPC_STUB IShellDispatch_ControlPanelItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch2_INTERFACE_DEFINED__ | 
 | #define __IShellDispatch2_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellDispatch2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellDispatch2 : public IShellDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI IsRestricted(BSTR Group,BSTR Restriction,long *plRestrictValue) = 0; | 
 |     virtual HRESULT WINAPI ShellExecute(BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow) = 0; | 
 |     virtual HRESULT WINAPI FindPrinter(BSTR name,BSTR location,BSTR model) = 0; | 
 |     virtual HRESULT WINAPI GetSystemInformation(BSTR name,VARIANT *pv) = 0; | 
 |     virtual HRESULT WINAPI ServiceStart(BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) = 0; | 
 |     virtual HRESULT WINAPI ServiceStop(BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) = 0; | 
 |     virtual HRESULT WINAPI IsServiceRunning(BSTR ServiceName,VARIANT *pRunning) = 0; | 
 |     virtual HRESULT WINAPI CanStartStopService(BSTR ServiceName,VARIANT *pCanStartStop) = 0; | 
 |     virtual HRESULT WINAPI ShowBrowserBar(BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellDispatch2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellDispatch2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellDispatch2 *This); | 
 |       ULONG (WINAPI *Release)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellDispatch2 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellDispatch2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellDispatch2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellDispatch2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(IShellDispatch2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(IShellDispatch2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *NameSpace)(IShellDispatch2 *This,VARIANT vDir,Folder **ppsdf); | 
 |       HRESULT (WINAPI *BrowseForFolder)(IShellDispatch2 *This,long Hwnd,BSTR Title,long Options,VARIANT RootFolder,Folder **ppsdf); | 
 |       HRESULT (WINAPI *Windows)(IShellDispatch2 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Open)(IShellDispatch2 *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *Explore)(IShellDispatch2 *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *MinimizeAll)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *UndoMinimizeALL)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *FileRun)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *CascadeWindows)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *TileVertically)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *TileHorizontally)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *ShutdownWindows)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *Suspend)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *EjectPC)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *SetTime)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *TrayProperties)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *Help)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *FindFiles)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *FindComputer)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *RefreshMenu)(IShellDispatch2 *This); | 
 |       HRESULT (WINAPI *ControlPanelItem)(IShellDispatch2 *This,BSTR szDir); | 
 |       HRESULT (WINAPI *IsRestricted)(IShellDispatch2 *This,BSTR Group,BSTR Restriction,long *plRestrictValue); | 
 |       HRESULT (WINAPI *ShellExecute)(IShellDispatch2 *This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow); | 
 |       HRESULT (WINAPI *FindPrinter)(IShellDispatch2 *This,BSTR name,BSTR location,BSTR model); | 
 |       HRESULT (WINAPI *GetSystemInformation)(IShellDispatch2 *This,BSTR name,VARIANT *pv); | 
 |       HRESULT (WINAPI *ServiceStart)(IShellDispatch2 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *ServiceStop)(IShellDispatch2 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *IsServiceRunning)(IShellDispatch2 *This,BSTR ServiceName,VARIANT *pRunning); | 
 |       HRESULT (WINAPI *CanStartStopService)(IShellDispatch2 *This,BSTR ServiceName,VARIANT *pCanStartStop); | 
 |       HRESULT (WINAPI *ShowBrowserBar)(IShellDispatch2 *This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess); | 
 |     END_INTERFACE | 
 |   } IShellDispatch2Vtbl; | 
 |   struct IShellDispatch2 { | 
 |     CONST_VTBL struct IShellDispatch2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellDispatch2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellDispatch2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellDispatch2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellDispatch2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellDispatch2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellDispatch2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellDispatch2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellDispatch2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define IShellDispatch2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define IShellDispatch2_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) | 
 | #define IShellDispatch2_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) | 
 | #define IShellDispatch2_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) | 
 | #define IShellDispatch2_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) | 
 | #define IShellDispatch2_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) | 
 | #define IShellDispatch2_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) | 
 | #define IShellDispatch2_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) | 
 | #define IShellDispatch2_FileRun(This) (This)->lpVtbl->FileRun(This) | 
 | #define IShellDispatch2_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) | 
 | #define IShellDispatch2_TileVertically(This) (This)->lpVtbl->TileVertically(This) | 
 | #define IShellDispatch2_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) | 
 | #define IShellDispatch2_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) | 
 | #define IShellDispatch2_Suspend(This) (This)->lpVtbl->Suspend(This) | 
 | #define IShellDispatch2_EjectPC(This) (This)->lpVtbl->EjectPC(This) | 
 | #define IShellDispatch2_SetTime(This) (This)->lpVtbl->SetTime(This) | 
 | #define IShellDispatch2_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) | 
 | #define IShellDispatch2_Help(This) (This)->lpVtbl->Help(This) | 
 | #define IShellDispatch2_FindFiles(This) (This)->lpVtbl->FindFiles(This) | 
 | #define IShellDispatch2_FindComputer(This) (This)->lpVtbl->FindComputer(This) | 
 | #define IShellDispatch2_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) | 
 | #define IShellDispatch2_ControlPanelItem(This,szDir) (This)->lpVtbl->ControlPanelItem(This,szDir) | 
 | #define IShellDispatch2_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) | 
 | #define IShellDispatch2_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) | 
 | #define IShellDispatch2_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) | 
 | #define IShellDispatch2_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) | 
 | #define IShellDispatch2_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) | 
 | #define IShellDispatch2_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) | 
 | #define IShellDispatch2_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) | 
 | #define IShellDispatch2_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) | 
 | #define IShellDispatch2_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellDispatch2_IsRestricted_Proxy(IShellDispatch2 *This,BSTR Group,BSTR Restriction,long *plRestrictValue); | 
 |   void __RPC_STUB IShellDispatch2_IsRestricted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_ShellExecute_Proxy(IShellDispatch2 *This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow); | 
 |   void __RPC_STUB IShellDispatch2_ShellExecute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_FindPrinter_Proxy(IShellDispatch2 *This,BSTR name,BSTR location,BSTR model); | 
 |   void __RPC_STUB IShellDispatch2_FindPrinter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_GetSystemInformation_Proxy(IShellDispatch2 *This,BSTR name,VARIANT *pv); | 
 |   void __RPC_STUB IShellDispatch2_GetSystemInformation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_ServiceStart_Proxy(IShellDispatch2 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |   void __RPC_STUB IShellDispatch2_ServiceStart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_ServiceStop_Proxy(IShellDispatch2 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |   void __RPC_STUB IShellDispatch2_ServiceStop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_IsServiceRunning_Proxy(IShellDispatch2 *This,BSTR ServiceName,VARIANT *pRunning); | 
 |   void __RPC_STUB IShellDispatch2_IsServiceRunning_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_CanStartStopService_Proxy(IShellDispatch2 *This,BSTR ServiceName,VARIANT *pCanStartStop); | 
 |   void __RPC_STUB IShellDispatch2_CanStartStopService_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch2_ShowBrowserBar_Proxy(IShellDispatch2 *This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess); | 
 |   void __RPC_STUB IShellDispatch2_ShowBrowserBar_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch3_INTERFACE_DEFINED__ | 
 | #define __IShellDispatch3_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellDispatch3; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellDispatch3 : public IShellDispatch2 { | 
 |   public: | 
 |     virtual HRESULT WINAPI AddToRecent(VARIANT varFile,BSTR bstrCategory) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellDispatch3Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellDispatch3 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellDispatch3 *This); | 
 |       ULONG (WINAPI *Release)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellDispatch3 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellDispatch3 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellDispatch3 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellDispatch3 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(IShellDispatch3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(IShellDispatch3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *NameSpace)(IShellDispatch3 *This,VARIANT vDir,Folder **ppsdf); | 
 |       HRESULT (WINAPI *BrowseForFolder)(IShellDispatch3 *This,long Hwnd,BSTR Title,long Options,VARIANT RootFolder,Folder **ppsdf); | 
 |       HRESULT (WINAPI *Windows)(IShellDispatch3 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Open)(IShellDispatch3 *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *Explore)(IShellDispatch3 *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *MinimizeAll)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *UndoMinimizeALL)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *FileRun)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *CascadeWindows)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *TileVertically)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *TileHorizontally)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *ShutdownWindows)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *Suspend)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *EjectPC)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *SetTime)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *TrayProperties)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *Help)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *FindFiles)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *FindComputer)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *RefreshMenu)(IShellDispatch3 *This); | 
 |       HRESULT (WINAPI *ControlPanelItem)(IShellDispatch3 *This,BSTR szDir); | 
 |       HRESULT (WINAPI *IsRestricted)(IShellDispatch3 *This,BSTR Group,BSTR Restriction,long *plRestrictValue); | 
 |       HRESULT (WINAPI *ShellExecute)(IShellDispatch3 *This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow); | 
 |       HRESULT (WINAPI *FindPrinter)(IShellDispatch3 *This,BSTR name,BSTR location,BSTR model); | 
 |       HRESULT (WINAPI *GetSystemInformation)(IShellDispatch3 *This,BSTR name,VARIANT *pv); | 
 |       HRESULT (WINAPI *ServiceStart)(IShellDispatch3 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *ServiceStop)(IShellDispatch3 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *IsServiceRunning)(IShellDispatch3 *This,BSTR ServiceName,VARIANT *pRunning); | 
 |       HRESULT (WINAPI *CanStartStopService)(IShellDispatch3 *This,BSTR ServiceName,VARIANT *pCanStartStop); | 
 |       HRESULT (WINAPI *ShowBrowserBar)(IShellDispatch3 *This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *AddToRecent)(IShellDispatch3 *This,VARIANT varFile,BSTR bstrCategory); | 
 |     END_INTERFACE | 
 |   } IShellDispatch3Vtbl; | 
 |   struct IShellDispatch3 { | 
 |     CONST_VTBL struct IShellDispatch3Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellDispatch3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellDispatch3_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellDispatch3_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellDispatch3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellDispatch3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellDispatch3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellDispatch3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellDispatch3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define IShellDispatch3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define IShellDispatch3_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) | 
 | #define IShellDispatch3_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) | 
 | #define IShellDispatch3_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) | 
 | #define IShellDispatch3_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) | 
 | #define IShellDispatch3_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) | 
 | #define IShellDispatch3_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) | 
 | #define IShellDispatch3_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) | 
 | #define IShellDispatch3_FileRun(This) (This)->lpVtbl->FileRun(This) | 
 | #define IShellDispatch3_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) | 
 | #define IShellDispatch3_TileVertically(This) (This)->lpVtbl->TileVertically(This) | 
 | #define IShellDispatch3_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) | 
 | #define IShellDispatch3_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) | 
 | #define IShellDispatch3_Suspend(This) (This)->lpVtbl->Suspend(This) | 
 | #define IShellDispatch3_EjectPC(This) (This)->lpVtbl->EjectPC(This) | 
 | #define IShellDispatch3_SetTime(This) (This)->lpVtbl->SetTime(This) | 
 | #define IShellDispatch3_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) | 
 | #define IShellDispatch3_Help(This) (This)->lpVtbl->Help(This) | 
 | #define IShellDispatch3_FindFiles(This) (This)->lpVtbl->FindFiles(This) | 
 | #define IShellDispatch3_FindComputer(This) (This)->lpVtbl->FindComputer(This) | 
 | #define IShellDispatch3_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) | 
 | #define IShellDispatch3_ControlPanelItem(This,szDir) (This)->lpVtbl->ControlPanelItem(This,szDir) | 
 | #define IShellDispatch3_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) | 
 | #define IShellDispatch3_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) | 
 | #define IShellDispatch3_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) | 
 | #define IShellDispatch3_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) | 
 | #define IShellDispatch3_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) | 
 | #define IShellDispatch3_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) | 
 | #define IShellDispatch3_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) | 
 | #define IShellDispatch3_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) | 
 | #define IShellDispatch3_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) | 
 | #define IShellDispatch3_AddToRecent(This,varFile,bstrCategory) (This)->lpVtbl->AddToRecent(This,varFile,bstrCategory) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellDispatch3_AddToRecent_Proxy(IShellDispatch3 *This,VARIANT varFile,BSTR bstrCategory); | 
 |   void __RPC_STUB IShellDispatch3_AddToRecent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IShellDispatch4_INTERFACE_DEFINED__ | 
 | #define __IShellDispatch4_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IShellDispatch4; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IShellDispatch4 : public IShellDispatch3 { | 
 |   public: | 
 |     virtual HRESULT WINAPI WindowsSecurity(void) = 0; | 
 |     virtual HRESULT WINAPI ToggleDesktop(void) = 0; | 
 |     virtual HRESULT WINAPI ExplorerPolicy(BSTR bstrPolicyName,VARIANT *pValue) = 0; | 
 |     virtual HRESULT WINAPI GetSetting(long lSetting,VARIANT_BOOL *pResult) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IShellDispatch4Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IShellDispatch4 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IShellDispatch4 *This); | 
 |       ULONG (WINAPI *Release)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IShellDispatch4 *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IShellDispatch4 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IShellDispatch4 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IShellDispatch4 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *get_Application)(IShellDispatch4 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *get_Parent)(IShellDispatch4 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *NameSpace)(IShellDispatch4 *This,VARIANT vDir,Folder **ppsdf); | 
 |       HRESULT (WINAPI *BrowseForFolder)(IShellDispatch4 *This,long Hwnd,BSTR Title,long Options,VARIANT RootFolder,Folder **ppsdf); | 
 |       HRESULT (WINAPI *Windows)(IShellDispatch4 *This,IDispatch **ppid); | 
 |       HRESULT (WINAPI *Open)(IShellDispatch4 *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *Explore)(IShellDispatch4 *This,VARIANT vDir); | 
 |       HRESULT (WINAPI *MinimizeAll)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *UndoMinimizeALL)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *FileRun)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *CascadeWindows)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *TileVertically)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *TileHorizontally)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *ShutdownWindows)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *Suspend)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *EjectPC)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *SetTime)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *TrayProperties)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *Help)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *FindFiles)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *FindComputer)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *RefreshMenu)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *ControlPanelItem)(IShellDispatch4 *This,BSTR szDir); | 
 |       HRESULT (WINAPI *IsRestricted)(IShellDispatch4 *This,BSTR Group,BSTR Restriction,long *plRestrictValue); | 
 |       HRESULT (WINAPI *ShellExecute)(IShellDispatch4 *This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow); | 
 |       HRESULT (WINAPI *FindPrinter)(IShellDispatch4 *This,BSTR name,BSTR location,BSTR model); | 
 |       HRESULT (WINAPI *GetSystemInformation)(IShellDispatch4 *This,BSTR name,VARIANT *pv); | 
 |       HRESULT (WINAPI *ServiceStart)(IShellDispatch4 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *ServiceStop)(IShellDispatch4 *This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *IsServiceRunning)(IShellDispatch4 *This,BSTR ServiceName,VARIANT *pRunning); | 
 |       HRESULT (WINAPI *CanStartStopService)(IShellDispatch4 *This,BSTR ServiceName,VARIANT *pCanStartStop); | 
 |       HRESULT (WINAPI *ShowBrowserBar)(IShellDispatch4 *This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess); | 
 |       HRESULT (WINAPI *AddToRecent)(IShellDispatch4 *This,VARIANT varFile,BSTR bstrCategory); | 
 |       HRESULT (WINAPI *WindowsSecurity)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *ToggleDesktop)(IShellDispatch4 *This); | 
 |       HRESULT (WINAPI *ExplorerPolicy)(IShellDispatch4 *This,BSTR bstrPolicyName,VARIANT *pValue); | 
 |       HRESULT (WINAPI *GetSetting)(IShellDispatch4 *This,long lSetting,VARIANT_BOOL *pResult); | 
 |     END_INTERFACE | 
 |   } IShellDispatch4Vtbl; | 
 |   struct IShellDispatch4 { | 
 |     CONST_VTBL struct IShellDispatch4Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IShellDispatch4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IShellDispatch4_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IShellDispatch4_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IShellDispatch4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IShellDispatch4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IShellDispatch4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IShellDispatch4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IShellDispatch4_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) | 
 | #define IShellDispatch4_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) | 
 | #define IShellDispatch4_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) | 
 | #define IShellDispatch4_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) | 
 | #define IShellDispatch4_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) | 
 | #define IShellDispatch4_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) | 
 | #define IShellDispatch4_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) | 
 | #define IShellDispatch4_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) | 
 | #define IShellDispatch4_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) | 
 | #define IShellDispatch4_FileRun(This) (This)->lpVtbl->FileRun(This) | 
 | #define IShellDispatch4_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) | 
 | #define IShellDispatch4_TileVertically(This) (This)->lpVtbl->TileVertically(This) | 
 | #define IShellDispatch4_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) | 
 | #define IShellDispatch4_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) | 
 | #define IShellDispatch4_Suspend(This) (This)->lpVtbl->Suspend(This) | 
 | #define IShellDispatch4_EjectPC(This) (This)->lpVtbl->EjectPC(This) | 
 | #define IShellDispatch4_SetTime(This) (This)->lpVtbl->SetTime(This) | 
 | #define IShellDispatch4_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) | 
 | #define IShellDispatch4_Help(This) (This)->lpVtbl->Help(This) | 
 | #define IShellDispatch4_FindFiles(This) (This)->lpVtbl->FindFiles(This) | 
 | #define IShellDispatch4_FindComputer(This) (This)->lpVtbl->FindComputer(This) | 
 | #define IShellDispatch4_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) | 
 | #define IShellDispatch4_ControlPanelItem(This,szDir) (This)->lpVtbl->ControlPanelItem(This,szDir) | 
 | #define IShellDispatch4_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) | 
 | #define IShellDispatch4_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) | 
 | #define IShellDispatch4_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) | 
 | #define IShellDispatch4_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) | 
 | #define IShellDispatch4_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) | 
 | #define IShellDispatch4_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) | 
 | #define IShellDispatch4_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) | 
 | #define IShellDispatch4_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) | 
 | #define IShellDispatch4_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) | 
 | #define IShellDispatch4_AddToRecent(This,varFile,bstrCategory) (This)->lpVtbl->AddToRecent(This,varFile,bstrCategory) | 
 | #define IShellDispatch4_WindowsSecurity(This) (This)->lpVtbl->WindowsSecurity(This) | 
 | #define IShellDispatch4_ToggleDesktop(This) (This)->lpVtbl->ToggleDesktop(This) | 
 | #define IShellDispatch4_ExplorerPolicy(This,bstrPolicyName,pValue) (This)->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue) | 
 | #define IShellDispatch4_GetSetting(This,lSetting,pResult) (This)->lpVtbl->GetSetting(This,lSetting,pResult) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IShellDispatch4_WindowsSecurity_Proxy(IShellDispatch4 *This); | 
 |   void __RPC_STUB IShellDispatch4_WindowsSecurity_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch4_ToggleDesktop_Proxy(IShellDispatch4 *This); | 
 |   void __RPC_STUB IShellDispatch4_ToggleDesktop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch4_ExplorerPolicy_Proxy(IShellDispatch4 *This,BSTR bstrPolicyName,VARIANT *pValue); | 
 |   void __RPC_STUB IShellDispatch4_ExplorerPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IShellDispatch4_GetSetting_Proxy(IShellDispatch4 *This,long lSetting,VARIANT_BOOL *pResult); | 
 |   void __RPC_STUB IShellDispatch4_GetSetting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_Shell; | 
 | #ifdef __cplusplus | 
 |   class Shell; | 
 | #endif | 
 |   EXTERN_C const CLSID CLSID_ShellDispatchInproc; | 
 | #ifdef __cplusplus | 
 |   class ShellDispatchInproc; | 
 | #endif | 
 |   EXTERN_C const CLSID CLSID_WebViewFolderContents; | 
 | #ifdef __cplusplus | 
 |   class WebViewFolderContents; | 
 | #endif | 
 |  | 
 | #ifndef __DSearchCommandEvents_DISPINTERFACE_DEFINED__ | 
 | #define __DSearchCommandEvents_DISPINTERFACE_DEFINED__ | 
 |   EXTERN_C const IID DIID_DSearchCommandEvents; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct DSearchCommandEvents : public IDispatch { | 
 |   }; | 
 | #else | 
 |   typedef struct DSearchCommandEventsVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(DSearchCommandEvents *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(DSearchCommandEvents *This); | 
 |       ULONG (WINAPI *Release)(DSearchCommandEvents *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(DSearchCommandEvents *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(DSearchCommandEvents *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(DSearchCommandEvents *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(DSearchCommandEvents *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |     END_INTERFACE | 
 |   } DSearchCommandEventsVtbl; | 
 |   struct DSearchCommandEvents { | 
 |     CONST_VTBL struct DSearchCommandEventsVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define DSearchCommandEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define DSearchCommandEvents_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define DSearchCommandEvents_Release(This) (This)->lpVtbl->Release(This) | 
 | #define DSearchCommandEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define DSearchCommandEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define DSearchCommandEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define DSearchCommandEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #endif | 
 | #endif | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_SearchCommand; | 
 | #ifdef __cplusplus | 
 |   class SearchCommand; | 
 | #endif | 
 |  | 
 | #ifndef __IFileSearchBand_INTERFACE_DEFINED__ | 
 | #define __IFileSearchBand_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IFileSearchBand; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IFileSearchBand : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI SetFocus(void) = 0; | 
 |     virtual HRESULT WINAPI SetSearchParameters(BSTR *pbstrSearchID,VARIANT_BOOL bNavToResults,VARIANT *pvarScope,VARIANT *pvarQueryFile) = 0; | 
 |     virtual HRESULT WINAPI get_SearchID(BSTR *pbstrSearchID) = 0; | 
 |     virtual HRESULT WINAPI get_Scope(VARIANT *pvarScope) = 0; | 
 |     virtual HRESULT WINAPI get_QueryFile(VARIANT *pvarFile) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IFileSearchBandVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IFileSearchBand *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IFileSearchBand *This); | 
 |       ULONG (WINAPI *Release)(IFileSearchBand *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IFileSearchBand *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IFileSearchBand *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IFileSearchBand *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IFileSearchBand *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *SetFocus)(IFileSearchBand *This); | 
 |       HRESULT (WINAPI *SetSearchParameters)(IFileSearchBand *This,BSTR *pbstrSearchID,VARIANT_BOOL bNavToResults,VARIANT *pvarScope,VARIANT *pvarQueryFile); | 
 |       HRESULT (WINAPI *get_SearchID)(IFileSearchBand *This,BSTR *pbstrSearchID); | 
 |       HRESULT (WINAPI *get_Scope)(IFileSearchBand *This,VARIANT *pvarScope); | 
 |       HRESULT (WINAPI *get_QueryFile)(IFileSearchBand *This,VARIANT *pvarFile); | 
 |     END_INTERFACE | 
 |   } IFileSearchBandVtbl; | 
 |   struct IFileSearchBand { | 
 |     CONST_VTBL struct IFileSearchBandVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IFileSearchBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IFileSearchBand_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IFileSearchBand_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IFileSearchBand_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IFileSearchBand_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IFileSearchBand_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IFileSearchBand_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IFileSearchBand_SetFocus(This) (This)->lpVtbl->SetFocus(This) | 
 | #define IFileSearchBand_SetSearchParameters(This,pbstrSearchID,bNavToResults,pvarScope,pvarQueryFile) (This)->lpVtbl->SetSearchParameters(This,pbstrSearchID,bNavToResults,pvarScope,pvarQueryFile) | 
 | #define IFileSearchBand_get_SearchID(This,pbstrSearchID) (This)->lpVtbl->get_SearchID(This,pbstrSearchID) | 
 | #define IFileSearchBand_get_Scope(This,pvarScope) (This)->lpVtbl->get_Scope(This,pvarScope) | 
 | #define IFileSearchBand_get_QueryFile(This,pvarFile) (This)->lpVtbl->get_QueryFile(This,pvarFile) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IFileSearchBand_SetFocus_Proxy(IFileSearchBand *This); | 
 |   void __RPC_STUB IFileSearchBand_SetFocus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IFileSearchBand_SetSearchParameters_Proxy(IFileSearchBand *This,BSTR *pbstrSearchID,VARIANT_BOOL bNavToResults,VARIANT *pvarScope,VARIANT *pvarQueryFile); | 
 |   void __RPC_STUB IFileSearchBand_SetSearchParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IFileSearchBand_get_SearchID_Proxy(IFileSearchBand *This,BSTR *pbstrSearchID); | 
 |   void __RPC_STUB IFileSearchBand_get_SearchID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IFileSearchBand_get_Scope_Proxy(IFileSearchBand *This,VARIANT *pvarScope); | 
 |   void __RPC_STUB IFileSearchBand_get_Scope_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IFileSearchBand_get_QueryFile_Proxy(IFileSearchBand *This,VARIANT *pvarFile); | 
 |   void __RPC_STUB IFileSearchBand_get_QueryFile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_FileSearchBand; | 
 | #ifdef __cplusplus | 
 |   class FileSearchBand; | 
 | #endif | 
 |  | 
 | #ifndef __IWebWizardHost_INTERFACE_DEFINED__ | 
 | #define __IWebWizardHost_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IWebWizardHost; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IWebWizardHost : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI FinalBack(void) = 0; | 
 |     virtual HRESULT WINAPI FinalNext(void) = 0; | 
 |     virtual HRESULT WINAPI Cancel(void) = 0; | 
 |     virtual HRESULT WINAPI put_Caption(BSTR bstrCaption) = 0; | 
 |     virtual HRESULT WINAPI get_Caption(BSTR *pbstrCaption) = 0; | 
 |     virtual HRESULT WINAPI put_Property(BSTR bstrPropertyName,VARIANT *pvProperty) = 0; | 
 |     virtual HRESULT WINAPI get_Property(BSTR bstrPropertyName,VARIANT *pvProperty) = 0; | 
 |     virtual HRESULT WINAPI SetWizardButtons(VARIANT_BOOL vfEnableBack,VARIANT_BOOL vfEnableNext,VARIANT_BOOL vfLastPage) = 0; | 
 |     virtual HRESULT WINAPI SetHeaderText(BSTR bstrHeaderTitle,BSTR bstrHeaderSubtitle) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IWebWizardHostVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IWebWizardHost *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IWebWizardHost *This); | 
 |       ULONG (WINAPI *Release)(IWebWizardHost *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IWebWizardHost *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IWebWizardHost *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IWebWizardHost *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IWebWizardHost *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *FinalBack)(IWebWizardHost *This); | 
 |       HRESULT (WINAPI *FinalNext)(IWebWizardHost *This); | 
 |       HRESULT (WINAPI *Cancel)(IWebWizardHost *This); | 
 |       HRESULT (WINAPI *put_Caption)(IWebWizardHost *This,BSTR bstrCaption); | 
 |       HRESULT (WINAPI *get_Caption)(IWebWizardHost *This,BSTR *pbstrCaption); | 
 |       HRESULT (WINAPI *put_Property)(IWebWizardHost *This,BSTR bstrPropertyName,VARIANT *pvProperty); | 
 |       HRESULT (WINAPI *get_Property)(IWebWizardHost *This,BSTR bstrPropertyName,VARIANT *pvProperty); | 
 |       HRESULT (WINAPI *SetWizardButtons)(IWebWizardHost *This,VARIANT_BOOL vfEnableBack,VARIANT_BOOL vfEnableNext,VARIANT_BOOL vfLastPage); | 
 |       HRESULT (WINAPI *SetHeaderText)(IWebWizardHost *This,BSTR bstrHeaderTitle,BSTR bstrHeaderSubtitle); | 
 |     END_INTERFACE | 
 |   } IWebWizardHostVtbl; | 
 |   struct IWebWizardHost { | 
 |     CONST_VTBL struct IWebWizardHostVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IWebWizardHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IWebWizardHost_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IWebWizardHost_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IWebWizardHost_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IWebWizardHost_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IWebWizardHost_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IWebWizardHost_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IWebWizardHost_FinalBack(This) (This)->lpVtbl->FinalBack(This) | 
 | #define IWebWizardHost_FinalNext(This) (This)->lpVtbl->FinalNext(This) | 
 | #define IWebWizardHost_Cancel(This) (This)->lpVtbl->Cancel(This) | 
 | #define IWebWizardHost_put_Caption(This,bstrCaption) (This)->lpVtbl->put_Caption(This,bstrCaption) | 
 | #define IWebWizardHost_get_Caption(This,pbstrCaption) (This)->lpVtbl->get_Caption(This,pbstrCaption) | 
 | #define IWebWizardHost_put_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->put_Property(This,bstrPropertyName,pvProperty) | 
 | #define IWebWizardHost_get_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->get_Property(This,bstrPropertyName,pvProperty) | 
 | #define IWebWizardHost_SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) (This)->lpVtbl->SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) | 
 | #define IWebWizardHost_SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) (This)->lpVtbl->SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IWebWizardHost_FinalBack_Proxy(IWebWizardHost *This); | 
 |   void __RPC_STUB IWebWizardHost_FinalBack_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_FinalNext_Proxy(IWebWizardHost *This); | 
 |   void __RPC_STUB IWebWizardHost_FinalNext_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_Cancel_Proxy(IWebWizardHost *This); | 
 |   void __RPC_STUB IWebWizardHost_Cancel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_put_Caption_Proxy(IWebWizardHost *This,BSTR bstrCaption); | 
 |   void __RPC_STUB IWebWizardHost_put_Caption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_get_Caption_Proxy(IWebWizardHost *This,BSTR *pbstrCaption); | 
 |   void __RPC_STUB IWebWizardHost_get_Caption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_put_Property_Proxy(IWebWizardHost *This,BSTR bstrPropertyName,VARIANT *pvProperty); | 
 |   void __RPC_STUB IWebWizardHost_put_Property_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_get_Property_Proxy(IWebWizardHost *This,BSTR bstrPropertyName,VARIANT *pvProperty); | 
 |   void __RPC_STUB IWebWizardHost_get_Property_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_SetWizardButtons_Proxy(IWebWizardHost *This,VARIANT_BOOL vfEnableBack,VARIANT_BOOL vfEnableNext,VARIANT_BOOL vfLastPage); | 
 |   void __RPC_STUB IWebWizardHost_SetWizardButtons_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IWebWizardHost_SetHeaderText_Proxy(IWebWizardHost *This,BSTR bstrHeaderTitle,BSTR bstrHeaderSubtitle); | 
 |   void __RPC_STUB IWebWizardHost_SetHeaderText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __INewWDEvents_INTERFACE_DEFINED__ | 
 | #define __INewWDEvents_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_INewWDEvents; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct INewWDEvents : public IWebWizardHost { | 
 |   public: | 
 |     virtual HRESULT WINAPI PassportAuthenticate(BSTR bstrSignInUrl,VARIANT_BOOL *pvfAuthenitcated) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct INewWDEventsVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(INewWDEvents *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(INewWDEvents *This); | 
 |       ULONG (WINAPI *Release)(INewWDEvents *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(INewWDEvents *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(INewWDEvents *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(INewWDEvents *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(INewWDEvents *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *FinalBack)(INewWDEvents *This); | 
 |       HRESULT (WINAPI *FinalNext)(INewWDEvents *This); | 
 |       HRESULT (WINAPI *Cancel)(INewWDEvents *This); | 
 |       HRESULT (WINAPI *put_Caption)(INewWDEvents *This,BSTR bstrCaption); | 
 |       HRESULT (WINAPI *get_Caption)(INewWDEvents *This,BSTR *pbstrCaption); | 
 |       HRESULT (WINAPI *put_Property)(INewWDEvents *This,BSTR bstrPropertyName,VARIANT *pvProperty); | 
 |       HRESULT (WINAPI *get_Property)(INewWDEvents *This,BSTR bstrPropertyName,VARIANT *pvProperty); | 
 |       HRESULT (WINAPI *SetWizardButtons)(INewWDEvents *This,VARIANT_BOOL vfEnableBack,VARIANT_BOOL vfEnableNext,VARIANT_BOOL vfLastPage); | 
 |       HRESULT (WINAPI *SetHeaderText)(INewWDEvents *This,BSTR bstrHeaderTitle,BSTR bstrHeaderSubtitle); | 
 |       HRESULT (WINAPI *PassportAuthenticate)(INewWDEvents *This,BSTR bstrSignInUrl,VARIANT_BOOL *pvfAuthenitcated); | 
 |     END_INTERFACE | 
 |   } INewWDEventsVtbl; | 
 |   struct INewWDEvents { | 
 |     CONST_VTBL struct INewWDEventsVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define INewWDEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define INewWDEvents_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define INewWDEvents_Release(This) (This)->lpVtbl->Release(This) | 
 | #define INewWDEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define INewWDEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define INewWDEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define INewWDEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define INewWDEvents_FinalBack(This) (This)->lpVtbl->FinalBack(This) | 
 | #define INewWDEvents_FinalNext(This) (This)->lpVtbl->FinalNext(This) | 
 | #define INewWDEvents_Cancel(This) (This)->lpVtbl->Cancel(This) | 
 | #define INewWDEvents_put_Caption(This,bstrCaption) (This)->lpVtbl->put_Caption(This,bstrCaption) | 
 | #define INewWDEvents_get_Caption(This,pbstrCaption) (This)->lpVtbl->get_Caption(This,pbstrCaption) | 
 | #define INewWDEvents_put_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->put_Property(This,bstrPropertyName,pvProperty) | 
 | #define INewWDEvents_get_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->get_Property(This,bstrPropertyName,pvProperty) | 
 | #define INewWDEvents_SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) (This)->lpVtbl->SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) | 
 | #define INewWDEvents_SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) (This)->lpVtbl->SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) | 
 | #define INewWDEvents_PassportAuthenticate(This,bstrSignInUrl,pvfAuthenitcated) (This)->lpVtbl->PassportAuthenticate(This,bstrSignInUrl,pvfAuthenitcated) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI INewWDEvents_PassportAuthenticate_Proxy(INewWDEvents *This,BSTR bstrSignInUrl,VARIANT_BOOL *pvfAuthenitcated); | 
 |   void __RPC_STUB INewWDEvents_PassportAuthenticate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IPassportClientServices_INTERFACE_DEFINED__ | 
 | #define __IPassportClientServices_INTERFACE_DEFINED__ | 
 |   EXTERN_C const IID IID_IPassportClientServices; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IPassportClientServices : public IDispatch { | 
 |   public: | 
 |     virtual HRESULT WINAPI MemberExists(BSTR bstrUser,BSTR bstrPassword,VARIANT_BOOL *pvfExists) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IPassportClientServicesVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IPassportClientServices *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IPassportClientServices *This); | 
 |       ULONG (WINAPI *Release)(IPassportClientServices *This); | 
 |       HRESULT (WINAPI *GetTypeInfoCount)(IPassportClientServices *This,UINT *pctinfo); | 
 |       HRESULT (WINAPI *GetTypeInfo)(IPassportClientServices *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); | 
 |       HRESULT (WINAPI *GetIDsOfNames)(IPassportClientServices *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); | 
 |       HRESULT (WINAPI *Invoke)(IPassportClientServices *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); | 
 |       HRESULT (WINAPI *MemberExists)(IPassportClientServices *This,BSTR bstrUser,BSTR bstrPassword,VARIANT_BOOL *pvfExists); | 
 |     END_INTERFACE | 
 |   } IPassportClientServicesVtbl; | 
 |   struct IPassportClientServices { | 
 |     CONST_VTBL struct IPassportClientServicesVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IPassportClientServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IPassportClientServices_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IPassportClientServices_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IPassportClientServices_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
 | #define IPassportClientServices_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
 | #define IPassportClientServices_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
 | #define IPassportClientServices_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
 | #define IPassportClientServices_MemberExists(This,bstrUser,bstrPassword,pvfExists) (This)->lpVtbl->MemberExists(This,bstrUser,bstrPassword,pvfExists) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IPassportClientServices_MemberExists_Proxy(IPassportClientServices *This,BSTR bstrUser,BSTR bstrPassword,VARIANT_BOOL *pvfExists); | 
 |   void __RPC_STUB IPassportClientServices_MemberExists_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   EXTERN_C const CLSID CLSID_PassportClientServices; | 
 | #ifdef __cplusplus | 
 |   class PassportClientServices; | 
 | #endif | 
 | #endif | 
 |  | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0287_v0_0_c_ifspec; | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0287_v0_0_s_ifspec; | 
 | #ifndef __IAutoComplete_INTERFACE_DEFINED__ | 
 | #define __IAutoComplete_INTERFACE_DEFINED__ | 
 |   typedef IAutoComplete *LPAUTOCOMPLETE; | 
 |  | 
 |   EXTERN_C const IID IID_IAutoComplete; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IAutoComplete : public IUnknown { | 
 |   public: | 
 |     virtual HRESULT WINAPI Init(HWND hwndEdit,IUnknown *punkACL,LPCOLESTR pwszRegKeyPath,LPCOLESTR pwszQuickComplete) = 0; | 
 |     virtual HRESULT WINAPI Enable(WINBOOL fEnable) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IAutoCompleteVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IAutoComplete *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IAutoComplete *This); | 
 |       ULONG (WINAPI *Release)(IAutoComplete *This); | 
 |       HRESULT (WINAPI *Init)(IAutoComplete *This,HWND hwndEdit,IUnknown *punkACL,LPCOLESTR pwszRegKeyPath,LPCOLESTR pwszQuickComplete); | 
 |       HRESULT (WINAPI *Enable)(IAutoComplete *This,WINBOOL fEnable); | 
 |     END_INTERFACE | 
 |   } IAutoCompleteVtbl; | 
 |   struct IAutoComplete { | 
 |     CONST_VTBL struct IAutoCompleteVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IAutoComplete_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IAutoComplete_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IAutoComplete_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IAutoComplete_Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) (This)->lpVtbl->Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) | 
 | #define IAutoComplete_Enable(This,fEnable) (This)->lpVtbl->Enable(This,fEnable) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IAutoComplete_Init_Proxy(IAutoComplete *This,HWND hwndEdit,IUnknown *punkACL,LPCOLESTR pwszRegKeyPath,LPCOLESTR pwszQuickComplete); | 
 |   void __RPC_STUB IAutoComplete_Init_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IAutoComplete_Enable_Proxy(IAutoComplete *This,WINBOOL fEnable); | 
 |   void __RPC_STUB IAutoComplete_Enable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifndef __IAutoComplete2_INTERFACE_DEFINED__ | 
 | #define __IAutoComplete2_INTERFACE_DEFINED__ | 
 |   typedef IAutoComplete2 *LPAUTOCOMPLETE2; | 
 |  | 
 |   typedef enum _tagAUTOCOMPLETEOPTIONS { | 
 |     ACO_NONE = 0,ACO_AUTOSUGGEST = 0x1,ACO_AUTOAPPEND = 0x2,ACO_SEARCH = 0x4,ACO_FILTERPREFIXES = 0x8,ACO_USETAB = 0x10,ACO_UPDOWNKEYDROPSLIST = 0x20, | 
 |     ACO_RTLREADING = 0x40 | 
 |   } AUTOCOMPLETEOPTIONS; | 
 |  | 
 |   EXTERN_C const IID IID_IAutoComplete2; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IAutoComplete2 : public IAutoComplete { | 
 |   public: | 
 |     virtual HRESULT WINAPI SetOptions(DWORD dwFlag) = 0; | 
 |     virtual HRESULT WINAPI GetOptions(DWORD *pdwFlag) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IAutoComplete2Vtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IAutoComplete2 *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IAutoComplete2 *This); | 
 |       ULONG (WINAPI *Release)(IAutoComplete2 *This); | 
 |       HRESULT (WINAPI *Init)(IAutoComplete2 *This,HWND hwndEdit,IUnknown *punkACL,LPCOLESTR pwszRegKeyPath,LPCOLESTR pwszQuickComplete); | 
 |       HRESULT (WINAPI *Enable)(IAutoComplete2 *This,WINBOOL fEnable); | 
 |       HRESULT (WINAPI *SetOptions)(IAutoComplete2 *This,DWORD dwFlag); | 
 |       HRESULT (WINAPI *GetOptions)(IAutoComplete2 *This,DWORD *pdwFlag); | 
 |     END_INTERFACE | 
 |   } IAutoComplete2Vtbl; | 
 |   struct IAutoComplete2 { | 
 |     CONST_VTBL struct IAutoComplete2Vtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IAutoComplete2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IAutoComplete2_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IAutoComplete2_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IAutoComplete2_Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) (This)->lpVtbl->Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) | 
 | #define IAutoComplete2_Enable(This,fEnable) (This)->lpVtbl->Enable(This,fEnable) | 
 | #define IAutoComplete2_SetOptions(This,dwFlag) (This)->lpVtbl->SetOptions(This,dwFlag) | 
 | #define IAutoComplete2_GetOptions(This,pdwFlag) (This)->lpVtbl->GetOptions(This,pdwFlag) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IAutoComplete2_SetOptions_Proxy(IAutoComplete2 *This,DWORD dwFlag); | 
 |   void __RPC_STUB IAutoComplete2_SetOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IAutoComplete2_GetOptions_Proxy(IAutoComplete2 *This,DWORD *pdwFlag); | 
 |   void __RPC_STUB IAutoComplete2_GetOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0289_v0_0_c_ifspec; | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0289_v0_0_s_ifspec; | 
 | #ifndef __IEnumACString_INTERFACE_DEFINED__ | 
 | #define __IEnumACString_INTERFACE_DEFINED__ | 
 |   typedef IEnumACString *PENUMACSTRING; | 
 |   typedef IEnumACString *LPENUMACSTRING; | 
 |  | 
 |   typedef enum _tagACENUMOPTION { | 
 |     ACEO_NONE = 0,ACEO_MOSTRECENTFIRST = 0x1,ACEO_FIRSTUNUSED = 0x10000 | 
 |   } ACENUMOPTION; | 
 |  | 
 |   EXTERN_C const IID IID_IEnumACString; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IEnumACString : public IEnumString { | 
 |   public: | 
 |     virtual HRESULT WINAPI NextItem(LPOLESTR pszUrl,ULONG cchMax,ULONG *pulSortIndex) = 0; | 
 |     virtual HRESULT WINAPI SetEnumOptions(DWORD dwOptions) = 0; | 
 |     virtual HRESULT WINAPI GetEnumOptions(DWORD *pdwOptions) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IEnumACStringVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IEnumACString *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IEnumACString *This); | 
 |       ULONG (WINAPI *Release)(IEnumACString *This); | 
 |       HRESULT (WINAPI *Next)(IEnumACString *This,ULONG celt,LPOLESTR *rgelt,ULONG *pceltFetched); | 
 |       HRESULT (WINAPI *Skip)(IEnumACString *This,ULONG celt); | 
 |       HRESULT (WINAPI *Reset)(IEnumACString *This); | 
 |       HRESULT (WINAPI *Clone)(IEnumACString *This,IEnumString **ppenum); | 
 |       HRESULT (WINAPI *NextItem)(IEnumACString *This,LPOLESTR pszUrl,ULONG cchMax,ULONG *pulSortIndex); | 
 |       HRESULT (WINAPI *SetEnumOptions)(IEnumACString *This,DWORD dwOptions); | 
 |       HRESULT (WINAPI *GetEnumOptions)(IEnumACString *This,DWORD *pdwOptions); | 
 |     END_INTERFACE | 
 |   } IEnumACStringVtbl; | 
 |   struct IEnumACString { | 
 |     CONST_VTBL struct IEnumACStringVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IEnumACString_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IEnumACString_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IEnumACString_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IEnumACString_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) | 
 | #define IEnumACString_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) | 
 | #define IEnumACString_Reset(This) (This)->lpVtbl->Reset(This) | 
 | #define IEnumACString_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) | 
 | #define IEnumACString_NextItem(This,pszUrl,cchMax,pulSortIndex) (This)->lpVtbl->NextItem(This,pszUrl,cchMax,pulSortIndex) | 
 | #define IEnumACString_SetEnumOptions(This,dwOptions) (This)->lpVtbl->SetEnumOptions(This,dwOptions) | 
 | #define IEnumACString_GetEnumOptions(This,pdwOptions) (This)->lpVtbl->GetEnumOptions(This,pdwOptions) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IEnumACString_NextItem_Proxy(IEnumACString *This,LPOLESTR pszUrl,ULONG cchMax,ULONG *pulSortIndex); | 
 |   void __RPC_STUB IEnumACString_NextItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IEnumACString_SetEnumOptions_Proxy(IEnumACString *This,DWORD dwOptions); | 
 |   void __RPC_STUB IEnumACString_SetEnumOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IEnumACString_GetEnumOptions_Proxy(IEnumACString *This,DWORD *pdwOptions); | 
 |   void __RPC_STUB IEnumACString_GetEnumOptions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0290_v0_0_c_ifspec; | 
 |   extern RPC_IF_HANDLE __MIDL_itf_shldisp_0290_v0_0_s_ifspec; | 
 | #ifndef __IAsyncOperation_INTERFACE_DEFINED__ | 
 | #define __IAsyncOperation_INTERFACE_DEFINED__ | 
 |   typedef IAsyncOperation *LPASYNCOPERATION; | 
 |  | 
 |   EXTERN_C const IID IID_IAsyncOperation; | 
 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 |   struct IAsyncOperation : public IUnknown { | 
 |   public: | 
 |     virtual HRESULT WINAPI SetAsyncMode(WINBOOL fDoOpAsync) = 0; | 
 |     virtual HRESULT WINAPI GetAsyncMode(WINBOOL *pfIsOpAsync) = 0; | 
 |     virtual HRESULT WINAPI StartOperation(IBindCtx *pbcReserved) = 0; | 
 |     virtual HRESULT WINAPI InOperation(WINBOOL *pfInAsyncOp) = 0; | 
 |     virtual HRESULT WINAPI EndOperation(HRESULT hResult,IBindCtx *pbcReserved,DWORD dwEffects) = 0; | 
 |   }; | 
 | #else | 
 |   typedef struct IAsyncOperationVtbl { | 
 |     BEGIN_INTERFACE | 
 |       HRESULT (WINAPI *QueryInterface)(IAsyncOperation *This,REFIID riid,void **ppvObject); | 
 |       ULONG (WINAPI *AddRef)(IAsyncOperation *This); | 
 |       ULONG (WINAPI *Release)(IAsyncOperation *This); | 
 |       HRESULT (WINAPI *SetAsyncMode)(IAsyncOperation *This,WINBOOL fDoOpAsync); | 
 |       HRESULT (WINAPI *GetAsyncMode)(IAsyncOperation *This,WINBOOL *pfIsOpAsync); | 
 |       HRESULT (WINAPI *StartOperation)(IAsyncOperation *This,IBindCtx *pbcReserved); | 
 |       HRESULT (WINAPI *InOperation)(IAsyncOperation *This,WINBOOL *pfInAsyncOp); | 
 |       HRESULT (WINAPI *EndOperation)(IAsyncOperation *This,HRESULT hResult,IBindCtx *pbcReserved,DWORD dwEffects); | 
 |     END_INTERFACE | 
 |   } IAsyncOperationVtbl; | 
 |   struct IAsyncOperation { | 
 |     CONST_VTBL struct IAsyncOperationVtbl *lpVtbl; | 
 |   }; | 
 | #ifdef COBJMACROS | 
 | #define IAsyncOperation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 | #define IAsyncOperation_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 | #define IAsyncOperation_Release(This) (This)->lpVtbl->Release(This) | 
 | #define IAsyncOperation_SetAsyncMode(This,fDoOpAsync) (This)->lpVtbl->SetAsyncMode(This,fDoOpAsync) | 
 | #define IAsyncOperation_GetAsyncMode(This,pfIsOpAsync) (This)->lpVtbl->GetAsyncMode(This,pfIsOpAsync) | 
 | #define IAsyncOperation_StartOperation(This,pbcReserved) (This)->lpVtbl->StartOperation(This,pbcReserved) | 
 | #define IAsyncOperation_InOperation(This,pfInAsyncOp) (This)->lpVtbl->InOperation(This,pfInAsyncOp) | 
 | #define IAsyncOperation_EndOperation(This,hResult,pbcReserved,dwEffects) (This)->lpVtbl->EndOperation(This,hResult,pbcReserved,dwEffects) | 
 | #endif | 
 | #endif | 
 |   HRESULT WINAPI IAsyncOperation_SetAsyncMode_Proxy(IAsyncOperation *This,WINBOOL fDoOpAsync); | 
 |   void __RPC_STUB IAsyncOperation_SetAsyncMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IAsyncOperation_GetAsyncMode_Proxy(IAsyncOperation *This,WINBOOL *pfIsOpAsync); | 
 |   void __RPC_STUB IAsyncOperation_GetAsyncMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IAsyncOperation_StartOperation_Proxy(IAsyncOperation *This,IBindCtx *pbcReserved); | 
 |   void __RPC_STUB IAsyncOperation_StartOperation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IAsyncOperation_InOperation_Proxy(IAsyncOperation *This,WINBOOL *pfInAsyncOp); | 
 |   void __RPC_STUB IAsyncOperation_InOperation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 |   HRESULT WINAPI IAsyncOperation_EndOperation_Proxy(IAsyncOperation *This,HRESULT hResult,IBindCtx *pbcReserved,DWORD dwEffects); | 
 |   void __RPC_STUB IAsyncOperation_EndOperation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); | 
 | #endif | 
 |  | 
 | #ifdef __cplusplus | 
 | } | 
 | #endif | 
 | #endif |