Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      7 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      8 #endif
      9 
     10 #include "rpc.h"
     11 #include "rpcndr.h"
     12 
     13 #ifndef __RPCNDR_H_VERSION__
     14 #error This stub requires an updated version of <rpcndr.h>
     15 #endif
     16 
     17 #ifndef COM_NO_WINDOWS_H
     18 #include "windows.h"
     19 #include "ole2.h"
     20 #endif
     21 
     22 #ifndef __qmgr_h__
     23 #define __qmgr_h__
     24 
     25 #ifndef __IBackgroundCopyJob1_FWD_DEFINED__
     26 #define __IBackgroundCopyJob1_FWD_DEFINED__
     27 typedef struct IBackgroundCopyJob1 IBackgroundCopyJob1;
     28 #endif
     29 
     30 #ifndef __IEnumBackgroundCopyJobs1_FWD_DEFINED__
     31 #define __IEnumBackgroundCopyJobs1_FWD_DEFINED__
     32 typedef struct IEnumBackgroundCopyJobs1 IEnumBackgroundCopyJobs1;
     33 #endif
     34 
     35 #ifndef __IBackgroundCopyGroup_FWD_DEFINED__
     36 #define __IBackgroundCopyGroup_FWD_DEFINED__
     37 typedef struct IBackgroundCopyGroup IBackgroundCopyGroup;
     38 #endif
     39 
     40 #ifndef __IEnumBackgroundCopyGroups_FWD_DEFINED__
     41 #define __IEnumBackgroundCopyGroups_FWD_DEFINED__
     42 typedef struct IEnumBackgroundCopyGroups IEnumBackgroundCopyGroups;
     43 #endif
     44 
     45 #ifndef __IBackgroundCopyCallback1_FWD_DEFINED__
     46 #define __IBackgroundCopyCallback1_FWD_DEFINED__
     47 typedef struct IBackgroundCopyCallback1 IBackgroundCopyCallback1;
     48 #endif
     49 
     50 #ifndef __IBackgroundCopyQMgr_FWD_DEFINED__
     51 #define __IBackgroundCopyQMgr_FWD_DEFINED__
     52 typedef struct IBackgroundCopyQMgr IBackgroundCopyQMgr;
     53 #endif
     54 
     55 #ifndef __BackgroundCopyQMgr_FWD_DEFINED__
     56 #define __BackgroundCopyQMgr_FWD_DEFINED__
     57 #ifdef __cplusplus
     58 typedef class BackgroundCopyQMgr BackgroundCopyQMgr;
     59 #else
     60 typedef struct BackgroundCopyQMgr BackgroundCopyQMgr;
     61 #endif
     62 #endif
     63 
     64 #include "unknwn.h"
     65 #include "ocidl.h"
     66 #include "docobj.h"
     67 
     68 #ifdef __cplusplus
     69 extern "C"{
     70 #endif
     71 
     72 #ifndef __MIDL_user_allocate_free_DEFINED__
     73 #define __MIDL_user_allocate_free_DEFINED__
     74   void *__RPC_API MIDL_user_allocate(size_t);
     75   void __RPC_API MIDL_user_free(void *);
     76 #endif
     77 
     78 #define QM_NOTIFY_FILE_DONE 0x00000001
     79 #define QM_NOTIFY_JOB_DONE 0x00000002
     80 #define QM_NOTIFY_GROUP_DONE 0x00000004
     81 #define QM_NOTIFY_DISABLE_NOTIFY 0x00000040
     82 #define QM_NOTIFY_USE_PROGRESSEX 0x00000080
     83 #define QM_STATUS_FILE_COMPLETE 0x00000001
     84 #define QM_STATUS_FILE_INCOMPLETE 0x00000002
     85 #define QM_STATUS_JOB_COMPLETE 0x00000004
     86 #define QM_STATUS_JOB_INCOMPLETE 0x00000008
     87 #define QM_STATUS_JOB_ERROR 0x00000010
     88 #define QM_STATUS_JOB_FOREGROUND 0x00000020
     89 #define QM_STATUS_GROUP_COMPLETE 0x00000040
     90 #define QM_STATUS_GROUP_INCOMPLETE 0x00000080
     91 #define QM_STATUS_GROUP_SUSPENDED 0x00000100
     92 #define QM_STATUS_GROUP_ERROR 0x00000200
     93 #define QM_STATUS_GROUP_FOREGROUND 0x00000400
     94 #define QM_PROTOCOL_HTTP 1
     95 #define QM_PROTOCOL_FTP 2
     96 #define QM_PROTOCOL_SMB 3
     97 #define QM_PROTOCOL_CUSTOM 4
     98 #define QM_PROGRESS_PERCENT_DONE 1
     99 #define QM_PROGRESS_TIME_DONE 2
    100 #define QM_PROGRESS_SIZE_DONE 3
    101 #define QM_E_INVALID_STATE 0x81001001
    102 #define QM_E_SERVICE_UNAVAILABLE 0x81001002
    103 #define QM_E_DOWNLOADER_UNAVAILABLE 0x81001003
    104 #define QM_E_ITEM_NOT_FOUND 0x81001004
    105 
    106   extern RPC_IF_HANDLE __MIDL_itf_qmgr_0000_v0_0_c_ifspec;
    107   extern RPC_IF_HANDLE __MIDL_itf_qmgr_0000_v0_0_s_ifspec;
    108 
    109 #ifndef __IBackgroundCopyJob1_INTERFACE_DEFINED__
    110 #define __IBackgroundCopyJob1_INTERFACE_DEFINED__
    111 
    112   typedef struct _FILESETINFO {
    113     BSTR bstrRemoteFile;
    114     BSTR bstrLocalFile;
    115     DWORD dwSizeHint;
    116   } FILESETINFO;
    117 
    118   EXTERN_C const IID IID_IBackgroundCopyJob1;
    119 #if defined(__cplusplus) && !defined(CINTERFACE)
    120   struct IBackgroundCopyJob1 : public IUnknown {
    121   public:
    122     virtual HRESULT WINAPI CancelJob(void) = 0;
    123     virtual HRESULT WINAPI GetProgress(DWORD dwFlags,DWORD *pdwProgress) = 0;
    124     virtual HRESULT WINAPI GetStatus(DWORD *pdwStatus,DWORD *pdwWin32Result,DWORD *pdwTransportResult,DWORD *pdwNumOfRetries) = 0;
    125     virtual HRESULT WINAPI AddFiles(ULONG cFileCount,FILESETINFO **ppFileSet) = 0;
    126     virtual HRESULT WINAPI GetFile(ULONG cFileIndex,FILESETINFO *pFileInfo) = 0;
    127     virtual HRESULT WINAPI GetFileCount(DWORD *pdwFileCount) = 0;
    128     virtual HRESULT WINAPI SwitchToForeground(void) = 0;
    129     virtual HRESULT WINAPI get_JobID(GUID *pguidJobID) = 0;
    130   };
    131 #else
    132   typedef struct IBackgroundCopyJob1Vtbl {
    133     BEGIN_INTERFACE
    134       HRESULT (WINAPI *QueryInterface)(IBackgroundCopyJob1 *This,REFIID riid,void **ppvObject);
    135       ULONG (WINAPI *AddRef)(IBackgroundCopyJob1 *This);
    136       ULONG (WINAPI *Release)(IBackgroundCopyJob1 *This);
    137       HRESULT (WINAPI *CancelJob)(IBackgroundCopyJob1 *This);
    138       HRESULT (WINAPI *GetProgress)(IBackgroundCopyJob1 *This,DWORD dwFlags,DWORD *pdwProgress);
    139       HRESULT (WINAPI *GetStatus)(IBackgroundCopyJob1 *This,DWORD *pdwStatus,DWORD *pdwWin32Result,DWORD *pdwTransportResult,DWORD *pdwNumOfRetries);
    140       HRESULT (WINAPI *AddFiles)(IBackgroundCopyJob1 *This,ULONG cFileCount,FILESETINFO **ppFileSet);
    141       HRESULT (WINAPI *GetFile)(IBackgroundCopyJob1 *This,ULONG cFileIndex,FILESETINFO *pFileInfo);
    142       HRESULT (WINAPI *GetFileCount)(IBackgroundCopyJob1 *This,DWORD *pdwFileCount);
    143       HRESULT (WINAPI *SwitchToForeground)(IBackgroundCopyJob1 *This);
    144       HRESULT (WINAPI *get_JobID)(IBackgroundCopyJob1 *This,GUID *pguidJobID);
    145     END_INTERFACE
    146   } IBackgroundCopyJob1Vtbl;
    147   struct IBackgroundCopyJob1 {
    148     CONST_VTBL struct IBackgroundCopyJob1Vtbl *lpVtbl;
    149   };
    150 #ifdef COBJMACROS
    151 #define IBackgroundCopyJob1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    152 #define IBackgroundCopyJob1_AddRef(This) (This)->lpVtbl->AddRef(This)
    153 #define IBackgroundCopyJob1_Release(This) (This)->lpVtbl->Release(This)
    154 #define IBackgroundCopyJob1_CancelJob(This) (This)->lpVtbl->CancelJob(This)
    155 #define IBackgroundCopyJob1_GetProgress(This,dwFlags,pdwProgress) (This)->lpVtbl->GetProgress(This,dwFlags,pdwProgress)
    156 #define IBackgroundCopyJob1_GetStatus(This,pdwStatus,pdwWin32Result,pdwTransportResult,pdwNumOfRetries) (This)->lpVtbl->GetStatus(This,pdwStatus,pdwWin32Result,pdwTransportResult,pdwNumOfRetries)
    157 #define IBackgroundCopyJob1_AddFiles(This,cFileCount,ppFileSet) (This)->lpVtbl->AddFiles(This,cFileCount,ppFileSet)
    158 #define IBackgroundCopyJob1_GetFile(This,cFileIndex,pFileInfo) (This)->lpVtbl->GetFile(This,cFileIndex,pFileInfo)
    159 #define IBackgroundCopyJob1_GetFileCount(This,pdwFileCount) (This)->lpVtbl->GetFileCount(This,pdwFileCount)
    160 #define IBackgroundCopyJob1_SwitchToForeground(This) (This)->lpVtbl->SwitchToForeground(This)
    161 #define IBackgroundCopyJob1_get_JobID(This,pguidJobID) (This)->lpVtbl->get_JobID(This,pguidJobID)
    162 #endif
    163 #endif
    164   HRESULT WINAPI IBackgroundCopyJob1_CancelJob_Proxy(IBackgroundCopyJob1 *This);
    165   void __RPC_STUB IBackgroundCopyJob1_CancelJob_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    166   HRESULT WINAPI IBackgroundCopyJob1_GetProgress_Proxy(IBackgroundCopyJob1 *This,DWORD dwFlags,DWORD *pdwProgress);
    167   void __RPC_STUB IBackgroundCopyJob1_GetProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    168   HRESULT WINAPI IBackgroundCopyJob1_GetStatus_Proxy(IBackgroundCopyJob1 *This,DWORD *pdwStatus,DWORD *pdwWin32Result,DWORD *pdwTransportResult,DWORD *pdwNumOfRetries);
    169   void __RPC_STUB IBackgroundCopyJob1_GetStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    170   HRESULT WINAPI IBackgroundCopyJob1_AddFiles_Proxy(IBackgroundCopyJob1 *This,ULONG cFileCount,FILESETINFO **ppFileSet);
    171   void __RPC_STUB IBackgroundCopyJob1_AddFiles_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    172   HRESULT WINAPI IBackgroundCopyJob1_GetFile_Proxy(IBackgroundCopyJob1 *This,ULONG cFileIndex,FILESETINFO *pFileInfo);
    173   void __RPC_STUB IBackgroundCopyJob1_GetFile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    174   HRESULT WINAPI IBackgroundCopyJob1_GetFileCount_Proxy(IBackgroundCopyJob1 *This,DWORD *pdwFileCount);
    175   void __RPC_STUB IBackgroundCopyJob1_GetFileCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    176   HRESULT WINAPI IBackgroundCopyJob1_SwitchToForeground_Proxy(IBackgroundCopyJob1 *This);
    177   void __RPC_STUB IBackgroundCopyJob1_SwitchToForeground_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    178   HRESULT WINAPI IBackgroundCopyJob1_get_JobID_Proxy(IBackgroundCopyJob1 *This,GUID *pguidJobID);
    179   void __RPC_STUB IBackgroundCopyJob1_get_JobID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    180 #endif
    181 
    182 #ifndef __IEnumBackgroundCopyJobs1_INTERFACE_DEFINED__
    183 #define __IEnumBackgroundCopyJobs1_INTERFACE_DEFINED__
    184   EXTERN_C const IID IID_IEnumBackgroundCopyJobs1;
    185 #if defined(__cplusplus) && !defined(CINTERFACE)
    186   struct IEnumBackgroundCopyJobs1 : public IUnknown {
    187   public:
    188     virtual HRESULT WINAPI Next(ULONG celt,GUID *rgelt,ULONG *pceltFetched) = 0;
    189     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
    190     virtual HRESULT WINAPI Reset(void) = 0;
    191     virtual HRESULT WINAPI Clone(IEnumBackgroundCopyJobs1 **ppenum) = 0;
    192     virtual HRESULT WINAPI GetCount(ULONG *puCount) = 0;
    193   };
    194 #else
    195   typedef struct IEnumBackgroundCopyJobs1Vtbl {
    196     BEGIN_INTERFACE
    197       HRESULT (WINAPI *QueryInterface)(IEnumBackgroundCopyJobs1 *This,REFIID riid,void **ppvObject);
    198       ULONG (WINAPI *AddRef)(IEnumBackgroundCopyJobs1 *This);
    199       ULONG (WINAPI *Release)(IEnumBackgroundCopyJobs1 *This);
    200       HRESULT (WINAPI *Next)(IEnumBackgroundCopyJobs1 *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
    201       HRESULT (WINAPI *Skip)(IEnumBackgroundCopyJobs1 *This,ULONG celt);
    202       HRESULT (WINAPI *Reset)(IEnumBackgroundCopyJobs1 *This);
    203       HRESULT (WINAPI *Clone)(IEnumBackgroundCopyJobs1 *This,IEnumBackgroundCopyJobs1 **ppenum);
    204       HRESULT (WINAPI *GetCount)(IEnumBackgroundCopyJobs1 *This,ULONG *puCount);
    205     END_INTERFACE
    206   } IEnumBackgroundCopyJobs1Vtbl;
    207   struct IEnumBackgroundCopyJobs1 {
    208     CONST_VTBL struct IEnumBackgroundCopyJobs1Vtbl *lpVtbl;
    209   };
    210 #ifdef COBJMACROS
    211 #define IEnumBackgroundCopyJobs1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    212 #define IEnumBackgroundCopyJobs1_AddRef(This) (This)->lpVtbl->AddRef(This)
    213 #define IEnumBackgroundCopyJobs1_Release(This) (This)->lpVtbl->Release(This)
    214 #define IEnumBackgroundCopyJobs1_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
    215 #define IEnumBackgroundCopyJobs1_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
    216 #define IEnumBackgroundCopyJobs1_Reset(This) (This)->lpVtbl->Reset(This)
    217 #define IEnumBackgroundCopyJobs1_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
    218 #define IEnumBackgroundCopyJobs1_GetCount(This,puCount) (This)->lpVtbl->GetCount(This,puCount)
    219 #endif
    220 #endif
    221   HRESULT WINAPI IEnumBackgroundCopyJobs1_Next_Proxy(IEnumBackgroundCopyJobs1 *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
    222   void __RPC_STUB IEnumBackgroundCopyJobs1_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    223   HRESULT WINAPI IEnumBackgroundCopyJobs1_Skip_Proxy(IEnumBackgroundCopyJobs1 *This,ULONG celt);
    224   void __RPC_STUB IEnumBackgroundCopyJobs1_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    225   HRESULT WINAPI IEnumBackgroundCopyJobs1_Reset_Proxy(IEnumBackgroundCopyJobs1 *This);
    226   void __RPC_STUB IEnumBackgroundCopyJobs1_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    227   HRESULT WINAPI IEnumBackgroundCopyJobs1_Clone_Proxy(IEnumBackgroundCopyJobs1 *This,IEnumBackgroundCopyJobs1 **ppenum);
    228   void __RPC_STUB IEnumBackgroundCopyJobs1_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    229   HRESULT WINAPI IEnumBackgroundCopyJobs1_GetCount_Proxy(IEnumBackgroundCopyJobs1 *This,ULONG *puCount);
    230   void __RPC_STUB IEnumBackgroundCopyJobs1_GetCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    231 #endif
    232 
    233 #ifndef __IBackgroundCopyGroup_INTERFACE_DEFINED__
    234 #define __IBackgroundCopyGroup_INTERFACE_DEFINED__
    235   typedef enum GROUPPROP {
    236     GROUPPROP_PRIORITY = 0,GROUPPROP_REMOTEUSERID = 1,GROUPPROP_REMOTEUSERPWD = 2,GROUPPROP_LOCALUSERID = 3,GROUPPROP_LOCALUSERPWD = 4,
    237     GROUPPROP_PROTOCOLFLAGS = 5,GROUPPROP_NOTIFYFLAGS = 6,GROUPPROP_NOTIFYCLSID = 7,GROUPPROP_PROGRESSSIZE = 8,GROUPPROP_PROGRESSPERCENT = 9,
    238     GROUPPROP_PROGRESSTIME = 10,GROUPPROP_DISPLAYNAME = 11,GROUPPROP_DESCRIPTION = 12
    239   } GROUPPROP;
    240 
    241   EXTERN_C const IID IID_IBackgroundCopyGroup;
    242 #if defined(__cplusplus) && !defined(CINTERFACE)
    243   struct IBackgroundCopyGroup : public IUnknown {
    244   public:
    245     virtual HRESULT WINAPI GetProp(GROUPPROP propID,VARIANT *pvarVal) = 0;
    246     virtual HRESULT WINAPI SetProp(GROUPPROP propID,VARIANT *pvarVal) = 0;
    247     virtual HRESULT WINAPI GetProgress(DWORD dwFlags,DWORD *pdwProgress) = 0;
    248     virtual HRESULT WINAPI GetStatus(DWORD *pdwStatus,DWORD *pdwJobIndex) = 0;
    249     virtual HRESULT WINAPI GetJob(GUID jobID,IBackgroundCopyJob1 **ppJob) = 0;
    250     virtual HRESULT WINAPI SuspendGroup(void) = 0;
    251     virtual HRESULT WINAPI ResumeGroup(void) = 0;
    252     virtual HRESULT WINAPI CancelGroup(void) = 0;
    253     virtual HRESULT WINAPI get_Size(DWORD *pdwSize) = 0;
    254     virtual HRESULT WINAPI get_GroupID(GUID *pguidGroupID) = 0;
    255     virtual HRESULT WINAPI CreateJob(GUID guidJobID,IBackgroundCopyJob1 **ppJob) = 0;
    256     virtual HRESULT WINAPI EnumJobs(DWORD dwFlags,IEnumBackgroundCopyJobs1 **ppEnumJobs) = 0;
    257     virtual HRESULT WINAPI SwitchToForeground(void) = 0;
    258     virtual HRESULT WINAPI QueryNewJobInterface(REFIID iid,IUnknown **pUnk) = 0;
    259     virtual HRESULT WINAPI SetNotificationPointer(REFIID iid,IUnknown *pUnk) = 0;
    260   };
    261 #else
    262   typedef struct IBackgroundCopyGroupVtbl {
    263     BEGIN_INTERFACE
    264       HRESULT (WINAPI *QueryInterface)(IBackgroundCopyGroup *This,REFIID riid,void **ppvObject);
    265       ULONG (WINAPI *AddRef)(IBackgroundCopyGroup *This);
    266       ULONG (WINAPI *Release)(IBackgroundCopyGroup *This);
    267       HRESULT (WINAPI *GetProp)(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
    268       HRESULT (WINAPI *SetProp)(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
    269       HRESULT (WINAPI *GetProgress)(IBackgroundCopyGroup *This,DWORD dwFlags,DWORD *pdwProgress);
    270       HRESULT (WINAPI *GetStatus)(IBackgroundCopyGroup *This,DWORD *pdwStatus,DWORD *pdwJobIndex);
    271       HRESULT (WINAPI *GetJob)(IBackgroundCopyGroup *This,GUID jobID,IBackgroundCopyJob1 **ppJob);
    272       HRESULT (WINAPI *SuspendGroup)(IBackgroundCopyGroup *This);
    273       HRESULT (WINAPI *ResumeGroup)(IBackgroundCopyGroup *This);
    274       HRESULT (WINAPI *CancelGroup)(IBackgroundCopyGroup *This);
    275       HRESULT (WINAPI *get_Size)(IBackgroundCopyGroup *This,DWORD *pdwSize);
    276       HRESULT (WINAPI *get_GroupID)(IBackgroundCopyGroup *This,GUID *pguidGroupID);
    277       HRESULT (WINAPI *CreateJob)(IBackgroundCopyGroup *This,GUID guidJobID,IBackgroundCopyJob1 **ppJob);
    278       HRESULT (WINAPI *EnumJobs)(IBackgroundCopyGroup *This,DWORD dwFlags,IEnumBackgroundCopyJobs1 **ppEnumJobs);
    279       HRESULT (WINAPI *SwitchToForeground)(IBackgroundCopyGroup *This);
    280       HRESULT (WINAPI *QueryNewJobInterface)(IBackgroundCopyGroup *This,REFIID iid,IUnknown **pUnk);
    281       HRESULT (WINAPI *SetNotificationPointer)(IBackgroundCopyGroup *This,REFIID iid,IUnknown *pUnk);
    282     END_INTERFACE
    283   } IBackgroundCopyGroupVtbl;
    284   struct IBackgroundCopyGroup {
    285     CONST_VTBL struct IBackgroundCopyGroupVtbl *lpVtbl;
    286   };
    287 #ifdef COBJMACROS
    288 #define IBackgroundCopyGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    289 #define IBackgroundCopyGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
    290 #define IBackgroundCopyGroup_Release(This) (This)->lpVtbl->Release(This)
    291 #define IBackgroundCopyGroup_GetProp(This,propID,pvarVal) (This)->lpVtbl->GetProp(This,propID,pvarVal)
    292 #define IBackgroundCopyGroup_SetProp(This,propID,pvarVal) (This)->lpVtbl->SetProp(This,propID,pvarVal)
    293 #define IBackgroundCopyGroup_GetProgress(This,dwFlags,pdwProgress) (This)->lpVtbl->GetProgress(This,dwFlags,pdwProgress)
    294 #define IBackgroundCopyGroup_GetStatus(This,pdwStatus,pdwJobIndex) (This)->lpVtbl->GetStatus(This,pdwStatus,pdwJobIndex)
    295 #define IBackgroundCopyGroup_GetJob(This,jobID,ppJob) (This)->lpVtbl->GetJob(This,jobID,ppJob)
    296 #define IBackgroundCopyGroup_SuspendGroup(This) (This)->lpVtbl->SuspendGroup(This)
    297 #define IBackgroundCopyGroup_ResumeGroup(This) (This)->lpVtbl->ResumeGroup(This)
    298 #define IBackgroundCopyGroup_CancelGroup(This) (This)->lpVtbl->CancelGroup(This)
    299 #define IBackgroundCopyGroup_get_Size(This,pdwSize) (This)->lpVtbl->get_Size(This,pdwSize)
    300 #define IBackgroundCopyGroup_get_GroupID(This,pguidGroupID) (This)->lpVtbl->get_GroupID(This,pguidGroupID)
    301 #define IBackgroundCopyGroup_CreateJob(This,guidJobID,ppJob) (This)->lpVtbl->CreateJob(This,guidJobID,ppJob)
    302 #define IBackgroundCopyGroup_EnumJobs(This,dwFlags,ppEnumJobs) (This)->lpVtbl->EnumJobs(This,dwFlags,ppEnumJobs)
    303 #define IBackgroundCopyGroup_SwitchToForeground(This) (This)->lpVtbl->SwitchToForeground(This)
    304 #define IBackgroundCopyGroup_QueryNewJobInterface(This,iid,pUnk) (This)->lpVtbl->QueryNewJobInterface(This,iid,pUnk)
    305 #define IBackgroundCopyGroup_SetNotificationPointer(This,iid,pUnk) (This)->lpVtbl->SetNotificationPointer(This,iid,pUnk)
    306 #endif
    307 #endif
    308   HRESULT WINAPI IBackgroundCopyGroup_GetProp_Proxy(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
    309   void __RPC_STUB IBackgroundCopyGroup_GetProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    310   HRESULT WINAPI IBackgroundCopyGroup_InternalSetProp_Proxy(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
    311   void __RPC_STUB IBackgroundCopyGroup_InternalSetProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    312   HRESULT WINAPI IBackgroundCopyGroup_GetProgress_Proxy(IBackgroundCopyGroup *This,DWORD dwFlags,DWORD *pdwProgress);
    313   void __RPC_STUB IBackgroundCopyGroup_GetProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    314   HRESULT WINAPI IBackgroundCopyGroup_GetStatus_Proxy(IBackgroundCopyGroup *This,DWORD *pdwStatus,DWORD *pdwJobIndex);
    315   void __RPC_STUB IBackgroundCopyGroup_GetStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    316   HRESULT WINAPI IBackgroundCopyGroup_GetJob_Proxy(IBackgroundCopyGroup *This,GUID jobID,IBackgroundCopyJob1 **ppJob);
    317   void __RPC_STUB IBackgroundCopyGroup_GetJob_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    318   HRESULT WINAPI IBackgroundCopyGroup_SuspendGroup_Proxy(IBackgroundCopyGroup *This);
    319   void __RPC_STUB IBackgroundCopyGroup_SuspendGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    320   HRESULT WINAPI IBackgroundCopyGroup_ResumeGroup_Proxy(IBackgroundCopyGroup *This);
    321   void __RPC_STUB IBackgroundCopyGroup_ResumeGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    322   HRESULT WINAPI IBackgroundCopyGroup_CancelGroup_Proxy(IBackgroundCopyGroup *This);
    323   void __RPC_STUB IBackgroundCopyGroup_CancelGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    324   HRESULT WINAPI IBackgroundCopyGroup_get_Size_Proxy(IBackgroundCopyGroup *This,DWORD *pdwSize);
    325   void __RPC_STUB IBackgroundCopyGroup_get_Size_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    326   HRESULT WINAPI IBackgroundCopyGroup_get_GroupID_Proxy(IBackgroundCopyGroup *This,GUID *pguidGroupID);
    327   void __RPC_STUB IBackgroundCopyGroup_get_GroupID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    328   HRESULT WINAPI IBackgroundCopyGroup_CreateJob_Proxy(IBackgroundCopyGroup *This,GUID guidJobID,IBackgroundCopyJob1 **ppJob);
    329   void __RPC_STUB IBackgroundCopyGroup_CreateJob_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    330   HRESULT WINAPI IBackgroundCopyGroup_EnumJobs_Proxy(IBackgroundCopyGroup *This,DWORD dwFlags,IEnumBackgroundCopyJobs1 **ppEnumJobs);
    331   void __RPC_STUB IBackgroundCopyGroup_EnumJobs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    332   HRESULT WINAPI IBackgroundCopyGroup_SwitchToForeground_Proxy(IBackgroundCopyGroup *This);
    333   void __RPC_STUB IBackgroundCopyGroup_SwitchToForeground_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    334   HRESULT WINAPI IBackgroundCopyGroup_QueryNewJobInterface_Proxy(IBackgroundCopyGroup *This,REFIID iid,IUnknown **pUnk);
    335   void __RPC_STUB IBackgroundCopyGroup_QueryNewJobInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    336   HRESULT WINAPI IBackgroundCopyGroup_SetNotificationPointer_Proxy(IBackgroundCopyGroup *This,REFIID iid,IUnknown *pUnk);
    337   void __RPC_STUB IBackgroundCopyGroup_SetNotificationPointer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    338 #endif
    339 
    340 #ifndef __IEnumBackgroundCopyGroups_INTERFACE_DEFINED__
    341 #define __IEnumBackgroundCopyGroups_INTERFACE_DEFINED__
    342   EXTERN_C const IID IID_IEnumBackgroundCopyGroups;
    343 #if defined(__cplusplus) && !defined(CINTERFACE)
    344   struct IEnumBackgroundCopyGroups : public IUnknown {
    345   public:
    346     virtual HRESULT WINAPI Next(ULONG celt,GUID *rgelt,ULONG *pceltFetched) = 0;
    347     virtual HRESULT WINAPI Skip(ULONG celt) = 0;
    348     virtual HRESULT WINAPI Reset(void) = 0;
    349     virtual HRESULT WINAPI Clone(IEnumBackgroundCopyGroups **ppenum) = 0;
    350     virtual HRESULT WINAPI GetCount(ULONG *puCount) = 0;
    351   };
    352 #else
    353   typedef struct IEnumBackgroundCopyGroupsVtbl {
    354     BEGIN_INTERFACE
    355       HRESULT (WINAPI *QueryInterface)(IEnumBackgroundCopyGroups *This,REFIID riid,void **ppvObject);
    356       ULONG (WINAPI *AddRef)(IEnumBackgroundCopyGroups *This);
    357       ULONG (WINAPI *Release)(IEnumBackgroundCopyGroups *This);
    358       HRESULT (WINAPI *Next)(IEnumBackgroundCopyGroups *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
    359       HRESULT (WINAPI *Skip)(IEnumBackgroundCopyGroups *This,ULONG celt);
    360       HRESULT (WINAPI *Reset)(IEnumBackgroundCopyGroups *This);
    361       HRESULT (WINAPI *Clone)(IEnumBackgroundCopyGroups *This,IEnumBackgroundCopyGroups **ppenum);
    362       HRESULT (WINAPI *GetCount)(IEnumBackgroundCopyGroups *This,ULONG *puCount);
    363     END_INTERFACE
    364   } IEnumBackgroundCopyGroupsVtbl;
    365   struct IEnumBackgroundCopyGroups {
    366     CONST_VTBL struct IEnumBackgroundCopyGroupsVtbl *lpVtbl;
    367   };
    368 #ifdef COBJMACROS
    369 #define IEnumBackgroundCopyGroups_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    370 #define IEnumBackgroundCopyGroups_AddRef(This) (This)->lpVtbl->AddRef(This)
    371 #define IEnumBackgroundCopyGroups_Release(This) (This)->lpVtbl->Release(This)
    372 #define IEnumBackgroundCopyGroups_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
    373 #define IEnumBackgroundCopyGroups_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
    374 #define IEnumBackgroundCopyGroups_Reset(This) (This)->lpVtbl->Reset(This)
    375 #define IEnumBackgroundCopyGroups_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
    376 #define IEnumBackgroundCopyGroups_GetCount(This,puCount) (This)->lpVtbl->GetCount(This,puCount)
    377 #endif
    378 #endif
    379   HRESULT WINAPI IEnumBackgroundCopyGroups_Next_Proxy(IEnumBackgroundCopyGroups *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
    380   void __RPC_STUB IEnumBackgroundCopyGroups_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    381   HRESULT WINAPI IEnumBackgroundCopyGroups_Skip_Proxy(IEnumBackgroundCopyGroups *This,ULONG celt);
    382   void __RPC_STUB IEnumBackgroundCopyGroups_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    383   HRESULT WINAPI IEnumBackgroundCopyGroups_Reset_Proxy(IEnumBackgroundCopyGroups *This);
    384   void __RPC_STUB IEnumBackgroundCopyGroups_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    385   HRESULT WINAPI IEnumBackgroundCopyGroups_Clone_Proxy(IEnumBackgroundCopyGroups *This,IEnumBackgroundCopyGroups **ppenum);
    386   void __RPC_STUB IEnumBackgroundCopyGroups_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    387   HRESULT WINAPI IEnumBackgroundCopyGroups_GetCount_Proxy(IEnumBackgroundCopyGroups *This,ULONG *puCount);
    388   void __RPC_STUB IEnumBackgroundCopyGroups_GetCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    389 #endif
    390 
    391 #ifndef __IBackgroundCopyCallback1_INTERFACE_DEFINED__
    392 #define __IBackgroundCopyCallback1_INTERFACE_DEFINED__
    393   EXTERN_C const IID IID_IBackgroundCopyCallback1;
    394 #if defined(__cplusplus) && !defined(CINTERFACE)
    395   struct IBackgroundCopyCallback1 : public IUnknown {
    396   public:
    397     virtual HRESULT WINAPI OnStatus(IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwStatus,DWORD dwNumOfRetries,DWORD dwWin32Result,DWORD dwTransportResult) = 0;
    398     virtual HRESULT WINAPI OnProgress(DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue) = 0;
    399     virtual HRESULT WINAPI OnProgressEx(DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue,DWORD dwByteArraySize,BYTE *pByte) = 0;
    400   };
    401 #else
    402   typedef struct IBackgroundCopyCallback1Vtbl {
    403     BEGIN_INTERFACE
    404       HRESULT (WINAPI *QueryInterface)(IBackgroundCopyCallback1 *This,REFIID riid,void **ppvObject);
    405       ULONG (WINAPI *AddRef)(IBackgroundCopyCallback1 *This);
    406       ULONG (WINAPI *Release)(IBackgroundCopyCallback1 *This);
    407       HRESULT (WINAPI *OnStatus)(IBackgroundCopyCallback1 *This,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwStatus,DWORD dwNumOfRetries,DWORD dwWin32Result,DWORD dwTransportResult);
    408       HRESULT (WINAPI *OnProgress)(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue);
    409       HRESULT (WINAPI *OnProgressEx)(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue,DWORD dwByteArraySize,BYTE *pByte);
    410     END_INTERFACE
    411   } IBackgroundCopyCallback1Vtbl;
    412   struct IBackgroundCopyCallback1 {
    413     CONST_VTBL struct IBackgroundCopyCallback1Vtbl *lpVtbl;
    414   };
    415 #ifdef COBJMACROS
    416 #define IBackgroundCopyCallback1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    417 #define IBackgroundCopyCallback1_AddRef(This) (This)->lpVtbl->AddRef(This)
    418 #define IBackgroundCopyCallback1_Release(This) (This)->lpVtbl->Release(This)
    419 #define IBackgroundCopyCallback1_OnStatus(This,pGroup,pJob,dwFileIndex,dwStatus,dwNumOfRetries,dwWin32Result,dwTransportResult) (This)->lpVtbl->OnStatus(This,pGroup,pJob,dwFileIndex,dwStatus,dwNumOfRetries,dwWin32Result,dwTransportResult)
    420 #define IBackgroundCopyCallback1_OnProgress(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue) (This)->lpVtbl->OnProgress(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue)
    421 #define IBackgroundCopyCallback1_OnProgressEx(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue,dwByteArraySize,pByte) (This)->lpVtbl->OnProgressEx(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue,dwByteArraySize,pByte)
    422 #endif
    423 #endif
    424   HRESULT WINAPI IBackgroundCopyCallback1_OnStatus_Proxy(IBackgroundCopyCallback1 *This,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwStatus,DWORD dwNumOfRetries,DWORD dwWin32Result,DWORD dwTransportResult);
    425   void __RPC_STUB IBackgroundCopyCallback1_OnStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    426   HRESULT WINAPI IBackgroundCopyCallback1_OnProgress_Proxy(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue);
    427   void __RPC_STUB IBackgroundCopyCallback1_OnProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    428   HRESULT WINAPI IBackgroundCopyCallback1_OnProgressEx_Proxy(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue,DWORD dwByteArraySize,BYTE *pByte);
    429   void __RPC_STUB IBackgroundCopyCallback1_OnProgressEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    430 #endif
    431 
    432 #ifndef __IBackgroundCopyQMgr_INTERFACE_DEFINED__
    433 #define __IBackgroundCopyQMgr_INTERFACE_DEFINED__
    434   EXTERN_C const IID IID_IBackgroundCopyQMgr;
    435 #if defined(__cplusplus) && !defined(CINTERFACE)
    436   struct IBackgroundCopyQMgr : public IUnknown {
    437   public:
    438     virtual HRESULT WINAPI CreateGroup(GUID guidGroupID,IBackgroundCopyGroup **ppGroup) = 0;
    439     virtual HRESULT WINAPI GetGroup(GUID groupID,IBackgroundCopyGroup **ppGroup) = 0;
    440     virtual HRESULT WINAPI EnumGroups(DWORD dwFlags,IEnumBackgroundCopyGroups **ppEnumGroups) = 0;
    441   };
    442 #else
    443   typedef struct IBackgroundCopyQMgrVtbl {
    444     BEGIN_INTERFACE
    445       HRESULT (WINAPI *QueryInterface)(IBackgroundCopyQMgr *This,REFIID riid,void **ppvObject);
    446       ULONG (WINAPI *AddRef)(IBackgroundCopyQMgr *This);
    447       ULONG (WINAPI *Release)(IBackgroundCopyQMgr *This);
    448       HRESULT (WINAPI *CreateGroup)(IBackgroundCopyQMgr *This,GUID guidGroupID,IBackgroundCopyGroup **ppGroup);
    449       HRESULT (WINAPI *GetGroup)(IBackgroundCopyQMgr *This,GUID groupID,IBackgroundCopyGroup **ppGroup);
    450       HRESULT (WINAPI *EnumGroups)(IBackgroundCopyQMgr *This,DWORD dwFlags,IEnumBackgroundCopyGroups **ppEnumGroups);
    451     END_INTERFACE
    452   } IBackgroundCopyQMgrVtbl;
    453   struct IBackgroundCopyQMgr {
    454     CONST_VTBL struct IBackgroundCopyQMgrVtbl *lpVtbl;
    455   };
    456 #ifdef COBJMACROS
    457 #define IBackgroundCopyQMgr_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    458 #define IBackgroundCopyQMgr_AddRef(This) (This)->lpVtbl->AddRef(This)
    459 #define IBackgroundCopyQMgr_Release(This) (This)->lpVtbl->Release(This)
    460 #define IBackgroundCopyQMgr_CreateGroup(This,guidGroupID,ppGroup) (This)->lpVtbl->CreateGroup(This,guidGroupID,ppGroup)
    461 #define IBackgroundCopyQMgr_GetGroup(This,groupID,ppGroup) (This)->lpVtbl->GetGroup(This,groupID,ppGroup)
    462 #define IBackgroundCopyQMgr_EnumGroups(This,dwFlags,ppEnumGroups) (This)->lpVtbl->EnumGroups(This,dwFlags,ppEnumGroups)
    463 #endif
    464 #endif
    465   HRESULT WINAPI IBackgroundCopyQMgr_CreateGroup_Proxy(IBackgroundCopyQMgr *This,GUID guidGroupID,IBackgroundCopyGroup **ppGroup);
    466   void __RPC_STUB IBackgroundCopyQMgr_CreateGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    467   HRESULT WINAPI IBackgroundCopyQMgr_GetGroup_Proxy(IBackgroundCopyQMgr *This,GUID groupID,IBackgroundCopyGroup **ppGroup);
    468   void __RPC_STUB IBackgroundCopyQMgr_GetGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    469   HRESULT WINAPI IBackgroundCopyQMgr_EnumGroups_Proxy(IBackgroundCopyQMgr *This,DWORD dwFlags,IEnumBackgroundCopyGroups **ppEnumGroups);
    470   void __RPC_STUB IBackgroundCopyQMgr_EnumGroups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    471 #endif
    472 
    473 #ifndef __BackgroundCopyQMgr_LIBRARY_DEFINED__
    474 #define __BackgroundCopyQMgr_LIBRARY_DEFINED__
    475   EXTERN_C const IID LIBID_BackgroundCopyQMgr;
    476   EXTERN_C const CLSID CLSID_BackgroundCopyQMgr;
    477 #ifdef __cplusplus
    478   class BackgroundCopyQMgr;
    479 #endif
    480 #endif
    481 
    482   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
    483   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
    484   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
    485   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
    486   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
    487   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
    488   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
    489   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
    490 
    491   HRESULT WINAPI IBackgroundCopyGroup_SetProp_Proxy(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
    492   HRESULT WINAPI IBackgroundCopyGroup_SetProp_Stub(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
    493 
    494 #ifdef __cplusplus
    495 }
    496 #endif
    497 #endif
    498