|  | /*** Autogenerated by WIDL 6.4 from include/wuapi.idl - Do not edit ***/ | 
|  |  | 
|  | #ifdef _WIN32 | 
|  | #ifndef __REQUIRED_RPCNDR_H_VERSION__ | 
|  | #define __REQUIRED_RPCNDR_H_VERSION__ 475 | 
|  | #endif | 
|  | #include <rpc.h> | 
|  | #include <rpcndr.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef COM_NO_WINDOWS_H | 
|  | #include <windows.h> | 
|  | #include <ole2.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef __wuapi_h__ | 
|  | #define __wuapi_h__ | 
|  |  | 
|  | /* Forward declarations */ | 
|  |  | 
|  | #ifndef __IAutomaticUpdatesSettings_FWD_DEFINED__ | 
|  | #define __IAutomaticUpdatesSettings_FWD_DEFINED__ | 
|  | typedef interface IAutomaticUpdatesSettings IAutomaticUpdatesSettings; | 
|  | #ifdef __cplusplus | 
|  | interface IAutomaticUpdatesSettings; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IAutomaticUpdates_FWD_DEFINED__ | 
|  | #define __IAutomaticUpdates_FWD_DEFINED__ | 
|  | typedef interface IAutomaticUpdates IAutomaticUpdates; | 
|  | #ifdef __cplusplus | 
|  | interface IAutomaticUpdates; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IWebProxy_FWD_DEFINED__ | 
|  | #define __IWebProxy_FWD_DEFINED__ | 
|  | typedef interface IWebProxy IWebProxy; | 
|  | #ifdef __cplusplus | 
|  | interface IWebProxy; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateSession_FWD_DEFINED__ | 
|  | #define __IUpdateSession_FWD_DEFINED__ | 
|  | typedef interface IUpdateSession IUpdateSession; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateSession; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IImageInformation_FWD_DEFINED__ | 
|  | #define __IImageInformation_FWD_DEFINED__ | 
|  | typedef interface IImageInformation IImageInformation; | 
|  | #ifdef __cplusplus | 
|  | interface IImageInformation; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __ICategory_FWD_DEFINED__ | 
|  | #define __ICategory_FWD_DEFINED__ | 
|  | typedef interface ICategory ICategory; | 
|  | #ifdef __cplusplus | 
|  | interface ICategory; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __ICategoryCollection_FWD_DEFINED__ | 
|  | #define __ICategoryCollection_FWD_DEFINED__ | 
|  | typedef interface ICategoryCollection ICategoryCollection; | 
|  | #ifdef __cplusplus | 
|  | interface ICategoryCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IStringCollection_FWD_DEFINED__ | 
|  | #define __IStringCollection_FWD_DEFINED__ | 
|  | typedef interface IStringCollection IStringCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IStringCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateException_FWD_DEFINED__ | 
|  | #define __IUpdateException_FWD_DEFINED__ | 
|  | typedef interface IUpdateException IUpdateException; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateException; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateExceptionCollection_FWD_DEFINED__ | 
|  | #define __IUpdateExceptionCollection_FWD_DEFINED__ | 
|  | typedef interface IUpdateExceptionCollection IUpdateExceptionCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateExceptionCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateIdentity_FWD_DEFINED__ | 
|  | #define __IUpdateIdentity_FWD_DEFINED__ | 
|  | typedef interface IUpdateIdentity IUpdateIdentity; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateIdentity; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IInstallationBehavior_FWD_DEFINED__ | 
|  | #define __IInstallationBehavior_FWD_DEFINED__ | 
|  | typedef interface IInstallationBehavior IInstallationBehavior; | 
|  | #ifdef __cplusplus | 
|  | interface IInstallationBehavior; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateDownloadContent_FWD_DEFINED__ | 
|  | #define __IUpdateDownloadContent_FWD_DEFINED__ | 
|  | typedef interface IUpdateDownloadContent IUpdateDownloadContent; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateDownloadContent; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateDownloadContentCollection_FWD_DEFINED__ | 
|  | #define __IUpdateDownloadContentCollection_FWD_DEFINED__ | 
|  | typedef interface IUpdateDownloadContentCollection IUpdateDownloadContentCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateDownloadContentCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdate_FWD_DEFINED__ | 
|  | #define __IUpdate_FWD_DEFINED__ | 
|  | typedef interface IUpdate IUpdate; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdate; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateCollection_FWD_DEFINED__ | 
|  | #define __IUpdateCollection_FWD_DEFINED__ | 
|  | typedef interface IUpdateCollection IUpdateCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __ISearchJob_FWD_DEFINED__ | 
|  | #define __ISearchJob_FWD_DEFINED__ | 
|  | typedef interface ISearchJob ISearchJob; | 
|  | #ifdef __cplusplus | 
|  | interface ISearchJob; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __ISearchResult_FWD_DEFINED__ | 
|  | #define __ISearchResult_FWD_DEFINED__ | 
|  | typedef interface ISearchResult ISearchResult; | 
|  | #ifdef __cplusplus | 
|  | interface ISearchResult; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateHistoryEntry_FWD_DEFINED__ | 
|  | #define __IUpdateHistoryEntry_FWD_DEFINED__ | 
|  | typedef interface IUpdateHistoryEntry IUpdateHistoryEntry; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateHistoryEntry; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateHistoryEntryCollection_FWD_DEFINED__ | 
|  | #define __IUpdateHistoryEntryCollection_FWD_DEFINED__ | 
|  | typedef interface IUpdateHistoryEntryCollection IUpdateHistoryEntryCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateHistoryEntryCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateSearcher_FWD_DEFINED__ | 
|  | #define __IUpdateSearcher_FWD_DEFINED__ | 
|  | typedef interface IUpdateSearcher IUpdateSearcher; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateSearcher; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateDownloadResult_FWD_DEFINED__ | 
|  | #define __IUpdateDownloadResult_FWD_DEFINED__ | 
|  | typedef interface IUpdateDownloadResult IUpdateDownloadResult; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateDownloadResult; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IDownloadProgress_FWD_DEFINED__ | 
|  | #define __IDownloadProgress_FWD_DEFINED__ | 
|  | typedef interface IDownloadProgress IDownloadProgress; | 
|  | #ifdef __cplusplus | 
|  | interface IDownloadProgress; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IDownloadJob_FWD_DEFINED__ | 
|  | #define __IDownloadJob_FWD_DEFINED__ | 
|  | typedef interface IDownloadJob IDownloadJob; | 
|  | #ifdef __cplusplus | 
|  | interface IDownloadJob; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IDownloadResult_FWD_DEFINED__ | 
|  | #define __IDownloadResult_FWD_DEFINED__ | 
|  | typedef interface IDownloadResult IDownloadResult; | 
|  | #ifdef __cplusplus | 
|  | interface IDownloadResult; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateDownloader_FWD_DEFINED__ | 
|  | #define __IUpdateDownloader_FWD_DEFINED__ | 
|  | typedef interface IUpdateDownloader IUpdateDownloader; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateDownloader; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateInstallationResult_FWD_DEFINED__ | 
|  | #define __IUpdateInstallationResult_FWD_DEFINED__ | 
|  | typedef interface IUpdateInstallationResult IUpdateInstallationResult; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateInstallationResult; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IInstallationProgress_FWD_DEFINED__ | 
|  | #define __IInstallationProgress_FWD_DEFINED__ | 
|  | typedef interface IInstallationProgress IInstallationProgress; | 
|  | #ifdef __cplusplus | 
|  | interface IInstallationProgress; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IInstallationJob_FWD_DEFINED__ | 
|  | #define __IInstallationJob_FWD_DEFINED__ | 
|  | typedef interface IInstallationJob IInstallationJob; | 
|  | #ifdef __cplusplus | 
|  | interface IInstallationJob; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IInstallationResult_FWD_DEFINED__ | 
|  | #define __IInstallationResult_FWD_DEFINED__ | 
|  | typedef interface IInstallationResult IInstallationResult; | 
|  | #ifdef __cplusplus | 
|  | interface IInstallationResult; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateInstaller_FWD_DEFINED__ | 
|  | #define __IUpdateInstaller_FWD_DEFINED__ | 
|  | typedef interface IUpdateInstaller IUpdateInstaller; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateInstaller; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __ISystemInformation_FWD_DEFINED__ | 
|  | #define __ISystemInformation_FWD_DEFINED__ | 
|  | typedef interface ISystemInformation ISystemInformation; | 
|  | #ifdef __cplusplus | 
|  | interface ISystemInformation; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __AutomaticUpdates_FWD_DEFINED__ | 
|  | #define __AutomaticUpdates_FWD_DEFINED__ | 
|  | #ifdef __cplusplus | 
|  | typedef class AutomaticUpdates AutomaticUpdates; | 
|  | #else | 
|  | typedef struct AutomaticUpdates AutomaticUpdates; | 
|  | #endif /* defined __cplusplus */ | 
|  | #endif /* defined __AutomaticUpdates_FWD_DEFINED__ */ | 
|  |  | 
|  | #ifndef __UpdateInstaller_FWD_DEFINED__ | 
|  | #define __UpdateInstaller_FWD_DEFINED__ | 
|  | #ifdef __cplusplus | 
|  | typedef class UpdateInstaller UpdateInstaller; | 
|  | #else | 
|  | typedef struct UpdateInstaller UpdateInstaller; | 
|  | #endif /* defined __cplusplus */ | 
|  | #endif /* defined __UpdateInstaller_FWD_DEFINED__ */ | 
|  |  | 
|  | #ifndef __UpdateSession_FWD_DEFINED__ | 
|  | #define __UpdateSession_FWD_DEFINED__ | 
|  | #ifdef __cplusplus | 
|  | typedef class UpdateSession UpdateSession; | 
|  | #else | 
|  | typedef struct UpdateSession UpdateSession; | 
|  | #endif /* defined __cplusplus */ | 
|  | #endif /* defined __UpdateSession_FWD_DEFINED__ */ | 
|  |  | 
|  | #ifndef __SystemInformation_FWD_DEFINED__ | 
|  | #define __SystemInformation_FWD_DEFINED__ | 
|  | #ifdef __cplusplus | 
|  | typedef class SystemInformation SystemInformation; | 
|  | #else | 
|  | typedef struct SystemInformation SystemInformation; | 
|  | #endif /* defined __cplusplus */ | 
|  | #endif /* defined __SystemInformation_FWD_DEFINED__ */ | 
|  |  | 
|  | /* Headers for imported files */ | 
|  |  | 
|  | #include <oaidl.h> | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | #ifndef __WUApiLib_LIBRARY_DEFINED__ | 
|  | #define __WUApiLib_LIBRARY_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(LIBID_WUApiLib, 0xb596cc9f, 0x56e5, 0x419e, 0xa6,0x22, 0xe0,0x1b,0xb4,0x57,0x43,0x1e); | 
|  |  | 
|  | #ifndef __ICategoryCollection_FWD_DEFINED__ | 
|  | #define __ICategoryCollection_FWD_DEFINED__ | 
|  | typedef interface ICategoryCollection ICategoryCollection; | 
|  | #ifdef __cplusplus | 
|  | interface ICategoryCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IStringCollection_FWD_DEFINED__ | 
|  | #define __IStringCollection_FWD_DEFINED__ | 
|  | typedef interface IStringCollection IStringCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IStringCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateCollection_FWD_DEFINED__ | 
|  | #define __IUpdateCollection_FWD_DEFINED__ | 
|  | typedef interface IUpdateCollection IUpdateCollection; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateCollection; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateDownloader_FWD_DEFINED__ | 
|  | #define __IUpdateDownloader_FWD_DEFINED__ | 
|  | typedef interface IUpdateDownloader IUpdateDownloader; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateDownloader; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateInstaller_FWD_DEFINED__ | 
|  | #define __IUpdateInstaller_FWD_DEFINED__ | 
|  | typedef interface IUpdateInstaller IUpdateInstaller; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateInstaller; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IUpdateSearcher_FWD_DEFINED__ | 
|  | #define __IUpdateSearcher_FWD_DEFINED__ | 
|  | typedef interface IUpdateSearcher IUpdateSearcher; | 
|  | #ifdef __cplusplus | 
|  | interface IUpdateSearcher; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | typedef enum tagDownloadPriority { | 
|  | dpLow = 1, | 
|  | dpNormal = 2, | 
|  | dpHigh = 3 | 
|  | } DownloadPriority; | 
|  | typedef enum tagServerSelection { | 
|  | ssDefault = 0, | 
|  | ssManagedServer = 1, | 
|  | ssWindowsUpdate = 2, | 
|  | ssOthers = 3 | 
|  | } ServerSelection; | 
|  | typedef enum tagAutomaticUpdatesNotificationLevel { | 
|  | aunlNotConfigured = 0, | 
|  | aunlDisabled = 1, | 
|  | aunlNotifyBeforeDownload = 2, | 
|  | aunlNotifyBeforeInstallation = 3, | 
|  | aunlScheduledInstallation = 4 | 
|  | } AutomaticUpdatesNotificationLevel; | 
|  | typedef enum tagAutomaticUpdatesScheduledInstallationDay { | 
|  | ausidEveryDay = 0, | 
|  | ausidEverySunday = 1, | 
|  | ausidEveryMonday = 2, | 
|  | ausidEveryTuesday = 3, | 
|  | ausidEveryWednesday = 4, | 
|  | ausidEveryThursday = 5, | 
|  | ausidEveryFriday = 6, | 
|  | ausidEverySaturday = 7 | 
|  | } AutomaticUpdatesScheduledInstallationDay; | 
|  | typedef enum tagDownloadPhase { | 
|  | dphInitializing = 0, | 
|  | dphDownloading = 1, | 
|  | dphVerifying = 2 | 
|  | } DownloadPhase; | 
|  | typedef enum tagOperationResultCode { | 
|  | orcNotStarted = 0, | 
|  | orcInProgress = 1, | 
|  | orcSucceeded = 2, | 
|  | orcSucceededWithErrors = 3, | 
|  | orcFailed = 4, | 
|  | orcAborted = 5 | 
|  | } OperationResultCode; | 
|  | typedef enum tagUpdateExceptionContext { | 
|  | uecGeneral = 1, | 
|  | uecWindowsDriver = 2, | 
|  | uecWindowsInstaller = 3 | 
|  | } UpdateExceptionContext; | 
|  | typedef enum tagInstallationImpact { | 
|  | iiNormal = 0, | 
|  | iiMinor = 1, | 
|  | iiRequiresExclusiveHandling = 2 | 
|  | } InstallationImpact; | 
|  | typedef enum tagInstallationRebootBehavior { | 
|  | irbNeverReboots = 0, | 
|  | irbAlwaysRequiresReboot = 1, | 
|  | irbCanRequestReboot = 2 | 
|  | } InstallationRebootBehavior; | 
|  | typedef enum tagUpdateType { | 
|  | utSoftware = 1, | 
|  | utDriver = 2 | 
|  | } UpdateType; | 
|  | typedef enum tagUpdateOperation { | 
|  | uoInstallation = 1, | 
|  | uoUninstallation = 2 | 
|  | } UpdateOperation; | 
|  | typedef enum tagDeploymentAction { | 
|  | daNone = 0, | 
|  | daInstallation = 1, | 
|  | daUninstallation = 2, | 
|  | daDetection = 3 | 
|  | } DeploymentAction; | 
|  | /***************************************************************************** | 
|  | * IAutomaticUpdatesSettings interface | 
|  | */ | 
|  | #ifndef __IAutomaticUpdatesSettings_INTERFACE_DEFINED__ | 
|  | #define __IAutomaticUpdatesSettings_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IAutomaticUpdatesSettings, 0x2ee48f22, 0xaf3c, 0x405f, 0x89,0x70, 0xf7,0x1b,0xe1,0x2e,0xe9,0xa2); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("2ee48f22-af3c-405f-8970-f71be12ee9a2") | 
|  | IAutomaticUpdatesSettings : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_NotificationLevel( | 
|  | AutomaticUpdatesNotificationLevel *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_NotificationLevel( | 
|  | AutomaticUpdatesNotificationLevel value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ReadOnly( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Required( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ScheduledInstallationDay( | 
|  | AutomaticUpdatesScheduledInstallationDay *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ScheduledInstallationDay( | 
|  | AutomaticUpdatesScheduledInstallationDay value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ScheduledInstallationTime( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ScheduledInstallationTime( | 
|  | LONG value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Refresh( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Save( | 
|  | ) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IAutomaticUpdatesSettings, 0x2ee48f22, 0xaf3c, 0x405f, 0x89,0x70, 0xf7,0x1b,0xe1,0x2e,0xe9,0xa2) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IAutomaticUpdatesSettingsVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IAutomaticUpdatesSettings *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IAutomaticUpdatesSettings *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IAutomaticUpdatesSettings methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_NotificationLevel)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | AutomaticUpdatesNotificationLevel *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_NotificationLevel)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | AutomaticUpdatesNotificationLevel value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ReadOnly)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Required)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ScheduledInstallationDay)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | AutomaticUpdatesScheduledInstallationDay *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ScheduledInstallationDay)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | AutomaticUpdatesScheduledInstallationDay value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ScheduledInstallationTime)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ScheduledInstallationTime)( | 
|  | IAutomaticUpdatesSettings *This, | 
|  | LONG value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Refresh)( | 
|  | IAutomaticUpdatesSettings *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Save)( | 
|  | IAutomaticUpdatesSettings *This); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IAutomaticUpdatesSettingsVtbl; | 
|  |  | 
|  | interface IAutomaticUpdatesSettings { | 
|  | CONST_VTBL IAutomaticUpdatesSettingsVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IAutomaticUpdatesSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IAutomaticUpdatesSettings_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IAutomaticUpdatesSettings_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IAutomaticUpdatesSettings_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IAutomaticUpdatesSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IAutomaticUpdatesSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IAutomaticUpdatesSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IAutomaticUpdatesSettings methods ***/ | 
|  | #define IAutomaticUpdatesSettings_get_NotificationLevel(This,retval) (This)->lpVtbl->get_NotificationLevel(This,retval) | 
|  | #define IAutomaticUpdatesSettings_put_NotificationLevel(This,value) (This)->lpVtbl->put_NotificationLevel(This,value) | 
|  | #define IAutomaticUpdatesSettings_get_ReadOnly(This,retval) (This)->lpVtbl->get_ReadOnly(This,retval) | 
|  | #define IAutomaticUpdatesSettings_get_Required(This,retval) (This)->lpVtbl->get_Required(This,retval) | 
|  | #define IAutomaticUpdatesSettings_get_ScheduledInstallationDay(This,retval) (This)->lpVtbl->get_ScheduledInstallationDay(This,retval) | 
|  | #define IAutomaticUpdatesSettings_put_ScheduledInstallationDay(This,value) (This)->lpVtbl->put_ScheduledInstallationDay(This,value) | 
|  | #define IAutomaticUpdatesSettings_get_ScheduledInstallationTime(This,retval) (This)->lpVtbl->get_ScheduledInstallationTime(This,retval) | 
|  | #define IAutomaticUpdatesSettings_put_ScheduledInstallationTime(This,value) (This)->lpVtbl->put_ScheduledInstallationTime(This,value) | 
|  | #define IAutomaticUpdatesSettings_Refresh(This) (This)->lpVtbl->Refresh(This) | 
|  | #define IAutomaticUpdatesSettings_Save(This) (This)->lpVtbl->Save(This) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_QueryInterface(IAutomaticUpdatesSettings* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IAutomaticUpdatesSettings_AddRef(IAutomaticUpdatesSettings* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IAutomaticUpdatesSettings_Release(IAutomaticUpdatesSettings* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_GetTypeInfoCount(IAutomaticUpdatesSettings* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_GetTypeInfo(IAutomaticUpdatesSettings* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_GetIDsOfNames(IAutomaticUpdatesSettings* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_Invoke(IAutomaticUpdatesSettings* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IAutomaticUpdatesSettings methods ***/ | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_get_NotificationLevel(IAutomaticUpdatesSettings* This,AutomaticUpdatesNotificationLevel *retval) { | 
|  | return This->lpVtbl->get_NotificationLevel(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_put_NotificationLevel(IAutomaticUpdatesSettings* This,AutomaticUpdatesNotificationLevel value) { | 
|  | return This->lpVtbl->put_NotificationLevel(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_get_ReadOnly(IAutomaticUpdatesSettings* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_ReadOnly(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_get_Required(IAutomaticUpdatesSettings* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_Required(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_get_ScheduledInstallationDay(IAutomaticUpdatesSettings* This,AutomaticUpdatesScheduledInstallationDay *retval) { | 
|  | return This->lpVtbl->get_ScheduledInstallationDay(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_put_ScheduledInstallationDay(IAutomaticUpdatesSettings* This,AutomaticUpdatesScheduledInstallationDay value) { | 
|  | return This->lpVtbl->put_ScheduledInstallationDay(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_get_ScheduledInstallationTime(IAutomaticUpdatesSettings* This,LONG *retval) { | 
|  | return This->lpVtbl->get_ScheduledInstallationTime(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_put_ScheduledInstallationTime(IAutomaticUpdatesSettings* This,LONG value) { | 
|  | return This->lpVtbl->put_ScheduledInstallationTime(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_Refresh(IAutomaticUpdatesSettings* This) { | 
|  | return This->lpVtbl->Refresh(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdatesSettings_Save(IAutomaticUpdatesSettings* This) { | 
|  | return This->lpVtbl->Save(This); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IAutomaticUpdatesSettings_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IAutomaticUpdates interface | 
|  | */ | 
|  | #ifndef __IAutomaticUpdates_INTERFACE_DEFINED__ | 
|  | #define __IAutomaticUpdates_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IAutomaticUpdates, 0x673425bf, 0xc082, 0x4c7c, 0xbd,0xfd, 0x56,0x94,0x64,0xb8,0xe0,0xce); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("673425bf-c082-4c7c-bdfd-569464b8e0ce") | 
|  | IAutomaticUpdates : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE DetectNow( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Pause( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Resume( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE ShowSettingsDialog( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Settings( | 
|  | IAutomaticUpdatesSettings **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ServiceEnabled( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE EnableService( | 
|  | ) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IAutomaticUpdates, 0x673425bf, 0xc082, 0x4c7c, 0xbd,0xfd, 0x56,0x94,0x64,0xb8,0xe0,0xce) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IAutomaticUpdatesVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IAutomaticUpdates *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IAutomaticUpdates *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IAutomaticUpdates *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IAutomaticUpdates *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IAutomaticUpdates *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IAutomaticUpdates methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *DetectNow)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Pause)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Resume)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *ShowSettingsDialog)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Settings)( | 
|  | IAutomaticUpdates *This, | 
|  | IAutomaticUpdatesSettings **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ServiceEnabled)( | 
|  | IAutomaticUpdates *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *EnableService)( | 
|  | IAutomaticUpdates *This); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IAutomaticUpdatesVtbl; | 
|  |  | 
|  | interface IAutomaticUpdates { | 
|  | CONST_VTBL IAutomaticUpdatesVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IAutomaticUpdates_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IAutomaticUpdates_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IAutomaticUpdates_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IAutomaticUpdates_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IAutomaticUpdates_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IAutomaticUpdates_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IAutomaticUpdates_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IAutomaticUpdates methods ***/ | 
|  | #define IAutomaticUpdates_DetectNow(This) (This)->lpVtbl->DetectNow(This) | 
|  | #define IAutomaticUpdates_Pause(This) (This)->lpVtbl->Pause(This) | 
|  | #define IAutomaticUpdates_Resume(This) (This)->lpVtbl->Resume(This) | 
|  | #define IAutomaticUpdates_ShowSettingsDialog(This) (This)->lpVtbl->ShowSettingsDialog(This) | 
|  | #define IAutomaticUpdates_get_Settings(This,retval) (This)->lpVtbl->get_Settings(This,retval) | 
|  | #define IAutomaticUpdates_get_ServiceEnabled(This,retval) (This)->lpVtbl->get_ServiceEnabled(This,retval) | 
|  | #define IAutomaticUpdates_EnableService(This) (This)->lpVtbl->EnableService(This) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_QueryInterface(IAutomaticUpdates* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IAutomaticUpdates_AddRef(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IAutomaticUpdates_Release(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_GetTypeInfoCount(IAutomaticUpdates* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_GetTypeInfo(IAutomaticUpdates* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_GetIDsOfNames(IAutomaticUpdates* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_Invoke(IAutomaticUpdates* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IAutomaticUpdates methods ***/ | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_DetectNow(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->DetectNow(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_Pause(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->Pause(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_Resume(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->Resume(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_ShowSettingsDialog(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->ShowSettingsDialog(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_get_Settings(IAutomaticUpdates* This,IAutomaticUpdatesSettings **retval) { | 
|  | return This->lpVtbl->get_Settings(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_get_ServiceEnabled(IAutomaticUpdates* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_ServiceEnabled(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IAutomaticUpdates_EnableService(IAutomaticUpdates* This) { | 
|  | return This->lpVtbl->EnableService(This); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IAutomaticUpdates_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IWebProxy interface | 
|  | */ | 
|  | #ifndef __IWebProxy_INTERFACE_DEFINED__ | 
|  | #define __IWebProxy_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IWebProxy, 0x174c81fe, 0xaecd, 0x4dae, 0xb8,0xa0, 0x2c,0x63,0x18,0xdd,0x86,0xa8); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("174c81fe-aecd-4dae-b8a0-2c6318dd86a8") | 
|  | IWebProxy : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Address( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Address( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_BypassList( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_BypassList( | 
|  | IStringCollection *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_BypassProxyOnLocal( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_BypassProxyOnLocal( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ReadOnly( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UserName( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_UserName( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetPassword( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE PromptForCredentials( | 
|  | IUnknown *parentWindow, | 
|  | BSTR title) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE PromptForCredentialsFromHwnd( | 
|  | HWND parentWindow, | 
|  | BSTR title) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AutoDetect( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_AutoDetect( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IWebProxy, 0x174c81fe, 0xaecd, 0x4dae, 0xb8,0xa0, 0x2c,0x63,0x18,0xdd,0x86,0xa8) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IWebProxyVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IWebProxy *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IWebProxy *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IWebProxy *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IWebProxy *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IWebProxy *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IWebProxy *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IWebProxy *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IWebProxy methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Address)( | 
|  | IWebProxy *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Address)( | 
|  | IWebProxy *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_BypassList)( | 
|  | IWebProxy *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_BypassList)( | 
|  | IWebProxy *This, | 
|  | IStringCollection *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_BypassProxyOnLocal)( | 
|  | IWebProxy *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_BypassProxyOnLocal)( | 
|  | IWebProxy *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ReadOnly)( | 
|  | IWebProxy *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UserName)( | 
|  | IWebProxy *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_UserName)( | 
|  | IWebProxy *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetPassword)( | 
|  | IWebProxy *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *PromptForCredentials)( | 
|  | IWebProxy *This, | 
|  | IUnknown *parentWindow, | 
|  | BSTR title); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *PromptForCredentialsFromHwnd)( | 
|  | IWebProxy *This, | 
|  | HWND parentWindow, | 
|  | BSTR title); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_AutoDetect)( | 
|  | IWebProxy *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_AutoDetect)( | 
|  | IWebProxy *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IWebProxyVtbl; | 
|  |  | 
|  | interface IWebProxy { | 
|  | CONST_VTBL IWebProxyVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IWebProxy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IWebProxy_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IWebProxy_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IWebProxy_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IWebProxy_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IWebProxy_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IWebProxy_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IWebProxy methods ***/ | 
|  | #define IWebProxy_get_Address(This,retval) (This)->lpVtbl->get_Address(This,retval) | 
|  | #define IWebProxy_put_Address(This,value) (This)->lpVtbl->put_Address(This,value) | 
|  | #define IWebProxy_get_BypassList(This,retval) (This)->lpVtbl->get_BypassList(This,retval) | 
|  | #define IWebProxy_put_BypassList(This,value) (This)->lpVtbl->put_BypassList(This,value) | 
|  | #define IWebProxy_get_BypassProxyOnLocal(This,retval) (This)->lpVtbl->get_BypassProxyOnLocal(This,retval) | 
|  | #define IWebProxy_put_BypassProxyOnLocal(This,value) (This)->lpVtbl->put_BypassProxyOnLocal(This,value) | 
|  | #define IWebProxy_get_ReadOnly(This,retval) (This)->lpVtbl->get_ReadOnly(This,retval) | 
|  | #define IWebProxy_get_UserName(This,retval) (This)->lpVtbl->get_UserName(This,retval) | 
|  | #define IWebProxy_put_UserName(This,value) (This)->lpVtbl->put_UserName(This,value) | 
|  | #define IWebProxy_SetPassword(This,value) (This)->lpVtbl->SetPassword(This,value) | 
|  | #define IWebProxy_PromptForCredentials(This,parentWindow,title) (This)->lpVtbl->PromptForCredentials(This,parentWindow,title) | 
|  | #define IWebProxy_PromptForCredentialsFromHwnd(This,parentWindow,title) (This)->lpVtbl->PromptForCredentialsFromHwnd(This,parentWindow,title) | 
|  | #define IWebProxy_get_AutoDetect(This,retval) (This)->lpVtbl->get_AutoDetect(This,retval) | 
|  | #define IWebProxy_put_AutoDetect(This,value) (This)->lpVtbl->put_AutoDetect(This,value) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IWebProxy_QueryInterface(IWebProxy* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IWebProxy_AddRef(IWebProxy* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IWebProxy_Release(IWebProxy* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IWebProxy_GetTypeInfoCount(IWebProxy* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_GetTypeInfo(IWebProxy* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_GetIDsOfNames(IWebProxy* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_Invoke(IWebProxy* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IWebProxy methods ***/ | 
|  | static FORCEINLINE HRESULT IWebProxy_get_Address(IWebProxy* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Address(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_put_Address(IWebProxy* This,BSTR value) { | 
|  | return This->lpVtbl->put_Address(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_get_BypassList(IWebProxy* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_BypassList(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_put_BypassList(IWebProxy* This,IStringCollection *value) { | 
|  | return This->lpVtbl->put_BypassList(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_get_BypassProxyOnLocal(IWebProxy* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_BypassProxyOnLocal(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_put_BypassProxyOnLocal(IWebProxy* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_BypassProxyOnLocal(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_get_ReadOnly(IWebProxy* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_ReadOnly(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_get_UserName(IWebProxy* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_UserName(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_put_UserName(IWebProxy* This,BSTR value) { | 
|  | return This->lpVtbl->put_UserName(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_SetPassword(IWebProxy* This,BSTR value) { | 
|  | return This->lpVtbl->SetPassword(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_PromptForCredentials(IWebProxy* This,IUnknown *parentWindow,BSTR title) { | 
|  | return This->lpVtbl->PromptForCredentials(This,parentWindow,title); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_PromptForCredentialsFromHwnd(IWebProxy* This,HWND parentWindow,BSTR title) { | 
|  | return This->lpVtbl->PromptForCredentialsFromHwnd(This,parentWindow,title); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_get_AutoDetect(IWebProxy* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_AutoDetect(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IWebProxy_put_AutoDetect(IWebProxy* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_AutoDetect(This,value); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IWebProxy_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateSession interface | 
|  | */ | 
|  | #ifndef __IUpdateSession_INTERFACE_DEFINED__ | 
|  | #define __IUpdateSession_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateSession, 0x816858a4, 0x260d, 0x4260, 0x93,0x3a, 0x25,0x85,0xf1,0xab,0xc7,0x6b); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("816858a4-260d-4260-933a-2585f1abc76b") | 
|  | IUpdateSession : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ClientApplicationID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ClientApplicationID( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ReadOnly( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_WebProxy( | 
|  | IWebProxy **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_WebProxy( | 
|  | IWebProxy *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateUpdateSearcher( | 
|  | IUpdateSearcher **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateUpdateDownloader( | 
|  | IUpdateDownloader **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateUpdateInstaller( | 
|  | IUpdateInstaller **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateSession, 0x816858a4, 0x260d, 0x4260, 0x93,0x3a, 0x25,0x85,0xf1,0xab,0xc7,0x6b) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateSessionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateSession *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateSession *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateSession *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateSession *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateSession *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateSession *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateSession *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateSession methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_ClientApplicationID)( | 
|  | IUpdateSession *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ClientApplicationID)( | 
|  | IUpdateSession *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ReadOnly)( | 
|  | IUpdateSession *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_WebProxy)( | 
|  | IUpdateSession *This, | 
|  | IWebProxy **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_WebProxy)( | 
|  | IUpdateSession *This, | 
|  | IWebProxy *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateUpdateSearcher)( | 
|  | IUpdateSession *This, | 
|  | IUpdateSearcher **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateUpdateDownloader)( | 
|  | IUpdateSession *This, | 
|  | IUpdateDownloader **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateUpdateInstaller)( | 
|  | IUpdateSession *This, | 
|  | IUpdateInstaller **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateSessionVtbl; | 
|  |  | 
|  | interface IUpdateSession { | 
|  | CONST_VTBL IUpdateSessionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateSession_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateSession_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateSession_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateSession_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateSession_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateSession_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateSession methods ***/ | 
|  | #define IUpdateSession_get_ClientApplicationID(This,retval) (This)->lpVtbl->get_ClientApplicationID(This,retval) | 
|  | #define IUpdateSession_put_ClientApplicationID(This,value) (This)->lpVtbl->put_ClientApplicationID(This,value) | 
|  | #define IUpdateSession_get_ReadOnly(This,retval) (This)->lpVtbl->get_ReadOnly(This,retval) | 
|  | #define IUpdateSession_get_WebProxy(This,retval) (This)->lpVtbl->get_WebProxy(This,retval) | 
|  | #define IUpdateSession_put_WebProxy(This,value) (This)->lpVtbl->put_WebProxy(This,value) | 
|  | #define IUpdateSession_CreateUpdateSearcher(This,retval) (This)->lpVtbl->CreateUpdateSearcher(This,retval) | 
|  | #define IUpdateSession_CreateUpdateDownloader(This,retval) (This)->lpVtbl->CreateUpdateDownloader(This,retval) | 
|  | #define IUpdateSession_CreateUpdateInstaller(This,retval) (This)->lpVtbl->CreateUpdateInstaller(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateSession_QueryInterface(IUpdateSession* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateSession_AddRef(IUpdateSession* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateSession_Release(IUpdateSession* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateSession_GetTypeInfoCount(IUpdateSession* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_GetTypeInfo(IUpdateSession* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_GetIDsOfNames(IUpdateSession* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_Invoke(IUpdateSession* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateSession methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateSession_get_ClientApplicationID(IUpdateSession* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ClientApplicationID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_put_ClientApplicationID(IUpdateSession* This,BSTR value) { | 
|  | return This->lpVtbl->put_ClientApplicationID(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_get_ReadOnly(IUpdateSession* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_ReadOnly(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_get_WebProxy(IUpdateSession* This,IWebProxy **retval) { | 
|  | return This->lpVtbl->get_WebProxy(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_put_WebProxy(IUpdateSession* This,IWebProxy *value) { | 
|  | return This->lpVtbl->put_WebProxy(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_CreateUpdateSearcher(IUpdateSession* This,IUpdateSearcher **retval) { | 
|  | return This->lpVtbl->CreateUpdateSearcher(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_CreateUpdateDownloader(IUpdateSession* This,IUpdateDownloader **retval) { | 
|  | return This->lpVtbl->CreateUpdateDownloader(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSession_CreateUpdateInstaller(IUpdateSession* This,IUpdateInstaller **retval) { | 
|  | return This->lpVtbl->CreateUpdateInstaller(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateSession_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IImageInformation interface | 
|  | */ | 
|  | #ifndef __IImageInformation_INTERFACE_DEFINED__ | 
|  | #define __IImageInformation_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IImageInformation, 0x7c907864, 0x346c, 0x4aeb, 0x8f,0x3f, 0x57,0xda,0x28,0x9f,0x96,0x9f); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("7c907864-346c-4aeb-8f3f-57da289f969f") | 
|  | IImageInformation : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AltText( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Height( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Source( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Width( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IImageInformation, 0x7c907864, 0x346c, 0x4aeb, 0x8f,0x3f, 0x57,0xda,0x28,0x9f,0x96,0x9f) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IImageInformationVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IImageInformation *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IImageInformation *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IImageInformation *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IImageInformation *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IImageInformation *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IImageInformation *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IImageInformation *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IImageInformation methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_AltText)( | 
|  | IImageInformation *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Height)( | 
|  | IImageInformation *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Source)( | 
|  | IImageInformation *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Width)( | 
|  | IImageInformation *This, | 
|  | LONG *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IImageInformationVtbl; | 
|  |  | 
|  | interface IImageInformation { | 
|  | CONST_VTBL IImageInformationVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IImageInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IImageInformation_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IImageInformation_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IImageInformation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IImageInformation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IImageInformation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IImageInformation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IImageInformation methods ***/ | 
|  | #define IImageInformation_get_AltText(This,retval) (This)->lpVtbl->get_AltText(This,retval) | 
|  | #define IImageInformation_get_Height(This,retval) (This)->lpVtbl->get_Height(This,retval) | 
|  | #define IImageInformation_get_Source(This,retval) (This)->lpVtbl->get_Source(This,retval) | 
|  | #define IImageInformation_get_Width(This,retval) (This)->lpVtbl->get_Width(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IImageInformation_QueryInterface(IImageInformation* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IImageInformation_AddRef(IImageInformation* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IImageInformation_Release(IImageInformation* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IImageInformation_GetTypeInfoCount(IImageInformation* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IImageInformation_GetTypeInfo(IImageInformation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IImageInformation_GetIDsOfNames(IImageInformation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IImageInformation_Invoke(IImageInformation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IImageInformation methods ***/ | 
|  | static FORCEINLINE HRESULT IImageInformation_get_AltText(IImageInformation* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_AltText(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IImageInformation_get_Height(IImageInformation* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Height(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IImageInformation_get_Source(IImageInformation* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Source(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IImageInformation_get_Width(IImageInformation* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Width(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IImageInformation_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * ICategory interface | 
|  | */ | 
|  | #ifndef __ICategory_INTERFACE_DEFINED__ | 
|  | #define __ICategory_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_ICategory, 0x81ddc1b8, 0x9d35, 0x47a6, 0xb4,0x71, 0x5b,0x80,0xf5,0x19,0x22,0x3b); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("81ddc1b8-9d35-47a6-b471-5b80f519223b") | 
|  | ICategory : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Name( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CategoryID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Children( | 
|  | ICategoryCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Description( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Image( | 
|  | IImageInformation **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Order( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Parent( | 
|  | ICategory **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Type( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Updates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(ICategory, 0x81ddc1b8, 0x9d35, 0x47a6, 0xb4,0x71, 0x5b,0x80,0xf5,0x19,0x22,0x3b) | 
|  | #endif | 
|  | #else | 
|  | typedef struct ICategoryVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | ICategory *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | ICategory *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | ICategory *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | ICategory *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | ICategory *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | ICategory *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | ICategory *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** ICategory methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Name)( | 
|  | ICategory *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CategoryID)( | 
|  | ICategory *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Children)( | 
|  | ICategory *This, | 
|  | ICategoryCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Description)( | 
|  | ICategory *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Image)( | 
|  | ICategory *This, | 
|  | IImageInformation **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Order)( | 
|  | ICategory *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Parent)( | 
|  | ICategory *This, | 
|  | ICategory **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Type)( | 
|  | ICategory *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Updates)( | 
|  | ICategory *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } ICategoryVtbl; | 
|  |  | 
|  | interface ICategory { | 
|  | CONST_VTBL ICategoryVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define ICategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define ICategory_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define ICategory_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define ICategory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define ICategory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define ICategory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define ICategory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** ICategory methods ***/ | 
|  | #define ICategory_get_Name(This,retval) (This)->lpVtbl->get_Name(This,retval) | 
|  | #define ICategory_get_CategoryID(This,retval) (This)->lpVtbl->get_CategoryID(This,retval) | 
|  | #define ICategory_get_Children(This,retval) (This)->lpVtbl->get_Children(This,retval) | 
|  | #define ICategory_get_Description(This,retval) (This)->lpVtbl->get_Description(This,retval) | 
|  | #define ICategory_get_Image(This,retval) (This)->lpVtbl->get_Image(This,retval) | 
|  | #define ICategory_get_Order(This,retval) (This)->lpVtbl->get_Order(This,retval) | 
|  | #define ICategory_get_Parent(This,retval) (This)->lpVtbl->get_Parent(This,retval) | 
|  | #define ICategory_get_Type(This,retval) (This)->lpVtbl->get_Type(This,retval) | 
|  | #define ICategory_get_Updates(This,retval) (This)->lpVtbl->get_Updates(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT ICategory_QueryInterface(ICategory* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG ICategory_AddRef(ICategory* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG ICategory_Release(ICategory* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT ICategory_GetTypeInfoCount(ICategory* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_GetTypeInfo(ICategory* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_GetIDsOfNames(ICategory* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_Invoke(ICategory* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** ICategory methods ***/ | 
|  | static FORCEINLINE HRESULT ICategory_get_Name(ICategory* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Name(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_CategoryID(ICategory* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_CategoryID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Children(ICategory* This,ICategoryCollection **retval) { | 
|  | return This->lpVtbl->get_Children(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Description(ICategory* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Description(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Image(ICategory* This,IImageInformation **retval) { | 
|  | return This->lpVtbl->get_Image(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Order(ICategory* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Order(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Parent(ICategory* This,ICategory **retval) { | 
|  | return This->lpVtbl->get_Parent(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Type(ICategory* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Type(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategory_get_Updates(ICategory* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_Updates(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __ICategory_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * ICategoryCollection interface | 
|  | */ | 
|  | #ifndef __ICategoryCollection_INTERFACE_DEFINED__ | 
|  | #define __ICategoryCollection_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_ICategoryCollection, 0x3a56bfb8, 0x576c, 0x43f7, 0x93,0x35, 0xfe,0x48,0x38,0xfd,0x7e,0x37); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("3a56bfb8-576c-43f7-9335-fe4838fd7e37") | 
|  | ICategoryCollection : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Item( | 
|  | LONG index, | 
|  | ICategory **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get__NewEnum( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Count( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(ICategoryCollection, 0x3a56bfb8, 0x576c, 0x43f7, 0x93,0x35, 0xfe,0x48,0x38,0xfd,0x7e,0x37) | 
|  | #endif | 
|  | #else | 
|  | typedef struct ICategoryCollectionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | ICategoryCollection *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | ICategoryCollection *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | ICategoryCollection *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | ICategoryCollection *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | ICategoryCollection *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | ICategoryCollection *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | ICategoryCollection *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** ICategoryCollection methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Item)( | 
|  | ICategoryCollection *This, | 
|  | LONG index, | 
|  | ICategory **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get__NewEnum)( | 
|  | ICategoryCollection *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Count)( | 
|  | ICategoryCollection *This, | 
|  | LONG *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } ICategoryCollectionVtbl; | 
|  |  | 
|  | interface ICategoryCollection { | 
|  | CONST_VTBL ICategoryCollectionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define ICategoryCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define ICategoryCollection_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define ICategoryCollection_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define ICategoryCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define ICategoryCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define ICategoryCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define ICategoryCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** ICategoryCollection methods ***/ | 
|  | #define ICategoryCollection_get_Item(This,index,retval) (This)->lpVtbl->get_Item(This,index,retval) | 
|  | #define ICategoryCollection_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval) | 
|  | #define ICategoryCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT ICategoryCollection_QueryInterface(ICategoryCollection* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG ICategoryCollection_AddRef(ICategoryCollection* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG ICategoryCollection_Release(ICategoryCollection* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT ICategoryCollection_GetTypeInfoCount(ICategoryCollection* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategoryCollection_GetTypeInfo(ICategoryCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategoryCollection_GetIDsOfNames(ICategoryCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategoryCollection_Invoke(ICategoryCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** ICategoryCollection methods ***/ | 
|  | static FORCEINLINE HRESULT ICategoryCollection_get_Item(ICategoryCollection* This,LONG index,ICategory **retval) { | 
|  | return This->lpVtbl->get_Item(This,index,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategoryCollection_get__NewEnum(ICategoryCollection* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get__NewEnum(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ICategoryCollection_get_Count(ICategoryCollection* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Count(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __ICategoryCollection_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IStringCollection interface | 
|  | */ | 
|  | #ifndef __IStringCollection_INTERFACE_DEFINED__ | 
|  | #define __IStringCollection_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IStringCollection, 0xeff90582, 0x2ddc, 0x480f, 0xa0,0x6d, 0x60,0xf3,0xfb,0xc3,0x62,0xc3); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("eff90582-2ddc-480f-a06d-60f3fbc362c3") | 
|  | IStringCollection : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Item( | 
|  | LONG index, | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Item( | 
|  | LONG index, | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get__NewEnum( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Count( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ReadOnly( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Add( | 
|  | BSTR value, | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clear( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Copy( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Insert( | 
|  | LONG index, | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RemoveAt( | 
|  | LONG index) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IStringCollection, 0xeff90582, 0x2ddc, 0x480f, 0xa0,0x6d, 0x60,0xf3,0xfb,0xc3,0x62,0xc3) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IStringCollectionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IStringCollection *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IStringCollection *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IStringCollection *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IStringCollection *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IStringCollection *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IStringCollection *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IStringCollection *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IStringCollection methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Item)( | 
|  | IStringCollection *This, | 
|  | LONG index, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Item)( | 
|  | IStringCollection *This, | 
|  | LONG index, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get__NewEnum)( | 
|  | IStringCollection *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Count)( | 
|  | IStringCollection *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ReadOnly)( | 
|  | IStringCollection *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Add)( | 
|  | IStringCollection *This, | 
|  | BSTR value, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clear)( | 
|  | IStringCollection *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Copy)( | 
|  | IStringCollection *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Insert)( | 
|  | IStringCollection *This, | 
|  | LONG index, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RemoveAt)( | 
|  | IStringCollection *This, | 
|  | LONG index); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IStringCollectionVtbl; | 
|  |  | 
|  | interface IStringCollection { | 
|  | CONST_VTBL IStringCollectionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IStringCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IStringCollection_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IStringCollection_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IStringCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IStringCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IStringCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IStringCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IStringCollection methods ***/ | 
|  | #define IStringCollection_get_Item(This,index,retval) (This)->lpVtbl->get_Item(This,index,retval) | 
|  | #define IStringCollection_put_Item(This,index,value) (This)->lpVtbl->put_Item(This,index,value) | 
|  | #define IStringCollection_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval) | 
|  | #define IStringCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval) | 
|  | #define IStringCollection_get_ReadOnly(This,retval) (This)->lpVtbl->get_ReadOnly(This,retval) | 
|  | #define IStringCollection_Add(This,value,retval) (This)->lpVtbl->Add(This,value,retval) | 
|  | #define IStringCollection_Clear(This) (This)->lpVtbl->Clear(This) | 
|  | #define IStringCollection_Copy(This,retval) (This)->lpVtbl->Copy(This,retval) | 
|  | #define IStringCollection_Insert(This,index,value) (This)->lpVtbl->Insert(This,index,value) | 
|  | #define IStringCollection_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IStringCollection_QueryInterface(IStringCollection* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IStringCollection_AddRef(IStringCollection* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IStringCollection_Release(IStringCollection* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IStringCollection_GetTypeInfoCount(IStringCollection* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_GetTypeInfo(IStringCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_GetIDsOfNames(IStringCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_Invoke(IStringCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IStringCollection methods ***/ | 
|  | static FORCEINLINE HRESULT IStringCollection_get_Item(IStringCollection* This,LONG index,BSTR *retval) { | 
|  | return This->lpVtbl->get_Item(This,index,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_put_Item(IStringCollection* This,LONG index,BSTR value) { | 
|  | return This->lpVtbl->put_Item(This,index,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_get__NewEnum(IStringCollection* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get__NewEnum(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_get_Count(IStringCollection* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Count(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_get_ReadOnly(IStringCollection* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_ReadOnly(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_Add(IStringCollection* This,BSTR value,LONG *retval) { | 
|  | return This->lpVtbl->Add(This,value,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_Clear(IStringCollection* This) { | 
|  | return This->lpVtbl->Clear(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_Copy(IStringCollection* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->Copy(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_Insert(IStringCollection* This,LONG index,BSTR value) { | 
|  | return This->lpVtbl->Insert(This,index,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IStringCollection_RemoveAt(IStringCollection* This,LONG index) { | 
|  | return This->lpVtbl->RemoveAt(This,index); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IStringCollection_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateException interface | 
|  | */ | 
|  | #ifndef __IUpdateException_INTERFACE_DEFINED__ | 
|  | #define __IUpdateException_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateException, 0xa376dd5e, 0x09d4, 0x427f, 0xaf,0x7c, 0xfe,0xd5,0xb6,0xe1,0xc1,0xd6); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("a376dd5e-09d4-427f-af7c-fed5b6e1c1d6") | 
|  | IUpdateException : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Message( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HResult( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Context( | 
|  | UpdateExceptionContext *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateException, 0xa376dd5e, 0x09d4, 0x427f, 0xaf,0x7c, 0xfe,0xd5,0xb6,0xe1,0xc1,0xd6) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateExceptionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateException *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateException *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateException *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateException *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateException *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateException *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateException *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateException methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Message)( | 
|  | IUpdateException *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_HResult)( | 
|  | IUpdateException *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Context)( | 
|  | IUpdateException *This, | 
|  | UpdateExceptionContext *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateExceptionVtbl; | 
|  |  | 
|  | interface IUpdateException { | 
|  | CONST_VTBL IUpdateExceptionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateException_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateException_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateException_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateException_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateException_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateException_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateException_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateException methods ***/ | 
|  | #define IUpdateException_get_Message(This,retval) (This)->lpVtbl->get_Message(This,retval) | 
|  | #define IUpdateException_get_HResult(This,retval) (This)->lpVtbl->get_HResult(This,retval) | 
|  | #define IUpdateException_get_Context(This,retval) (This)->lpVtbl->get_Context(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateException_QueryInterface(IUpdateException* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateException_AddRef(IUpdateException* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateException_Release(IUpdateException* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateException_GetTypeInfoCount(IUpdateException* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateException_GetTypeInfo(IUpdateException* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateException_GetIDsOfNames(IUpdateException* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateException_Invoke(IUpdateException* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateException methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateException_get_Message(IUpdateException* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Message(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateException_get_HResult(IUpdateException* This,LONG *retval) { | 
|  | return This->lpVtbl->get_HResult(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateException_get_Context(IUpdateException* This,UpdateExceptionContext *retval) { | 
|  | return This->lpVtbl->get_Context(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateException_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateExceptionCollection interface | 
|  | */ | 
|  | #ifndef __IUpdateExceptionCollection_INTERFACE_DEFINED__ | 
|  | #define __IUpdateExceptionCollection_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateExceptionCollection, 0x503626a3, 0x8e14, 0x4729, 0x93,0x55, 0x0f,0xe6,0x64,0xbd,0x23,0x21); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("503626a3-8e14-4729-9355-0fe664bd2321") | 
|  | IUpdateExceptionCollection : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Item( | 
|  | LONG index, | 
|  | IUpdateException **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get__NewEnum( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Count( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateExceptionCollection, 0x503626a3, 0x8e14, 0x4729, 0x93,0x55, 0x0f,0xe6,0x64,0xbd,0x23,0x21) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateExceptionCollectionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateExceptionCollection *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateExceptionCollection *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateExceptionCollection *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateExceptionCollection *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateExceptionCollection *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateExceptionCollection *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateExceptionCollection *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateExceptionCollection methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Item)( | 
|  | IUpdateExceptionCollection *This, | 
|  | LONG index, | 
|  | IUpdateException **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get__NewEnum)( | 
|  | IUpdateExceptionCollection *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Count)( | 
|  | IUpdateExceptionCollection *This, | 
|  | LONG *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateExceptionCollectionVtbl; | 
|  |  | 
|  | interface IUpdateExceptionCollection { | 
|  | CONST_VTBL IUpdateExceptionCollectionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateExceptionCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateExceptionCollection_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateExceptionCollection_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateExceptionCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateExceptionCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateExceptionCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateExceptionCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateExceptionCollection methods ***/ | 
|  | #define IUpdateExceptionCollection_get_Item(This,index,retval) (This)->lpVtbl->get_Item(This,index,retval) | 
|  | #define IUpdateExceptionCollection_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval) | 
|  | #define IUpdateExceptionCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_QueryInterface(IUpdateExceptionCollection* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateExceptionCollection_AddRef(IUpdateExceptionCollection* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateExceptionCollection_Release(IUpdateExceptionCollection* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_GetTypeInfoCount(IUpdateExceptionCollection* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_GetTypeInfo(IUpdateExceptionCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_GetIDsOfNames(IUpdateExceptionCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_Invoke(IUpdateExceptionCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateExceptionCollection methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_get_Item(IUpdateExceptionCollection* This,LONG index,IUpdateException **retval) { | 
|  | return This->lpVtbl->get_Item(This,index,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_get__NewEnum(IUpdateExceptionCollection* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get__NewEnum(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateExceptionCollection_get_Count(IUpdateExceptionCollection* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Count(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateExceptionCollection_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateIdentity interface | 
|  | */ | 
|  | #ifndef __IUpdateIdentity_INTERFACE_DEFINED__ | 
|  | #define __IUpdateIdentity_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateIdentity, 0x46297823, 0x9940, 0x4c09, 0xae,0xd9, 0xcd,0x3e,0xa6,0xd0,0x59,0x68); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("46297823-9940-4c09-aed9-cd3ea6d05968") | 
|  | IUpdateIdentity : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RevisionNumber( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UpdateID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateIdentity, 0x46297823, 0x9940, 0x4c09, 0xae,0xd9, 0xcd,0x3e,0xa6,0xd0,0x59,0x68) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateIdentityVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateIdentity *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateIdentity *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateIdentity *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateIdentity *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateIdentity *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateIdentity *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateIdentity *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateIdentity methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_RevisionNumber)( | 
|  | IUpdateIdentity *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UpdateID)( | 
|  | IUpdateIdentity *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateIdentityVtbl; | 
|  |  | 
|  | interface IUpdateIdentity { | 
|  | CONST_VTBL IUpdateIdentityVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateIdentity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateIdentity_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateIdentity_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateIdentity_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateIdentity_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateIdentity_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateIdentity_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateIdentity methods ***/ | 
|  | #define IUpdateIdentity_get_RevisionNumber(This,retval) (This)->lpVtbl->get_RevisionNumber(This,retval) | 
|  | #define IUpdateIdentity_get_UpdateID(This,retval) (This)->lpVtbl->get_UpdateID(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_QueryInterface(IUpdateIdentity* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateIdentity_AddRef(IUpdateIdentity* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateIdentity_Release(IUpdateIdentity* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_GetTypeInfoCount(IUpdateIdentity* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_GetTypeInfo(IUpdateIdentity* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_GetIDsOfNames(IUpdateIdentity* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_Invoke(IUpdateIdentity* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateIdentity methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_get_RevisionNumber(IUpdateIdentity* This,LONG *retval) { | 
|  | return This->lpVtbl->get_RevisionNumber(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateIdentity_get_UpdateID(IUpdateIdentity* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_UpdateID(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateIdentity_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IInstallationBehavior interface | 
|  | */ | 
|  | #ifndef __IInstallationBehavior_INTERFACE_DEFINED__ | 
|  | #define __IInstallationBehavior_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IInstallationBehavior, 0xd9a59339, 0xe245, 0x4dbd, 0x96,0x86, 0x4d,0x57,0x63,0xe3,0x96,0x24); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("d9a59339-e245-4dbd-9686-4d5763e39624") | 
|  | IInstallationBehavior : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CanRequestUserInput( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Impact( | 
|  | InstallationImpact *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RebootBehavior( | 
|  | InstallationRebootBehavior *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RequiresNetworkConnectivity( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IInstallationBehavior, 0xd9a59339, 0xe245, 0x4dbd, 0x96,0x86, 0x4d,0x57,0x63,0xe3,0x96,0x24) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IInstallationBehaviorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IInstallationBehavior *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IInstallationBehavior *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IInstallationBehavior *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IInstallationBehavior *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IInstallationBehavior *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IInstallationBehavior *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IInstallationBehavior *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IInstallationBehavior methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_CanRequestUserInput)( | 
|  | IInstallationBehavior *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Impact)( | 
|  | IInstallationBehavior *This, | 
|  | InstallationImpact *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RebootBehavior)( | 
|  | IInstallationBehavior *This, | 
|  | InstallationRebootBehavior *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RequiresNetworkConnectivity)( | 
|  | IInstallationBehavior *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IInstallationBehaviorVtbl; | 
|  |  | 
|  | interface IInstallationBehavior { | 
|  | CONST_VTBL IInstallationBehaviorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IInstallationBehavior_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IInstallationBehavior_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IInstallationBehavior_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IInstallationBehavior_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IInstallationBehavior_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IInstallationBehavior_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IInstallationBehavior_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IInstallationBehavior methods ***/ | 
|  | #define IInstallationBehavior_get_CanRequestUserInput(This,retval) (This)->lpVtbl->get_CanRequestUserInput(This,retval) | 
|  | #define IInstallationBehavior_get_Impact(This,retval) (This)->lpVtbl->get_Impact(This,retval) | 
|  | #define IInstallationBehavior_get_RebootBehavior(This,retval) (This)->lpVtbl->get_RebootBehavior(This,retval) | 
|  | #define IInstallationBehavior_get_RequiresNetworkConnectivity(This,retval) (This)->lpVtbl->get_RequiresNetworkConnectivity(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_QueryInterface(IInstallationBehavior* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationBehavior_AddRef(IInstallationBehavior* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationBehavior_Release(IInstallationBehavior* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_GetTypeInfoCount(IInstallationBehavior* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_GetTypeInfo(IInstallationBehavior* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_GetIDsOfNames(IInstallationBehavior* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_Invoke(IInstallationBehavior* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IInstallationBehavior methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_get_CanRequestUserInput(IInstallationBehavior* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_CanRequestUserInput(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_get_Impact(IInstallationBehavior* This,InstallationImpact *retval) { | 
|  | return This->lpVtbl->get_Impact(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_get_RebootBehavior(IInstallationBehavior* This,InstallationRebootBehavior *retval) { | 
|  | return This->lpVtbl->get_RebootBehavior(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationBehavior_get_RequiresNetworkConnectivity(IInstallationBehavior* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_RequiresNetworkConnectivity(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IInstallationBehavior_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateDownloadContent interface | 
|  | */ | 
|  | #ifndef __IUpdateDownloadContent_INTERFACE_DEFINED__ | 
|  | #define __IUpdateDownloadContent_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateDownloadContent, 0x54a2cb2d, 0x9a0c, 0x48b6, 0x8a,0x50, 0x9a,0xbb,0x69,0xee,0x2d,0x02); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("54a2cb2d-9a0c-48b6-8a50-9abb69ee2d02") | 
|  | IUpdateDownloadContent : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_DownloadUrl( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateDownloadContent, 0x54a2cb2d, 0x9a0c, 0x48b6, 0x8a,0x50, 0x9a,0xbb,0x69,0xee,0x2d,0x02) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateDownloadContentVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateDownloadContent *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateDownloadContent *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateDownloadContent *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateDownloadContent *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateDownloadContent *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateDownloadContent *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateDownloadContent *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateDownloadContent methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_DownloadUrl)( | 
|  | IUpdateDownloadContent *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateDownloadContentVtbl; | 
|  |  | 
|  | interface IUpdateDownloadContent { | 
|  | CONST_VTBL IUpdateDownloadContentVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateDownloadContent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateDownloadContent_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateDownloadContent_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateDownloadContent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateDownloadContent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateDownloadContent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateDownloadContent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateDownloadContent methods ***/ | 
|  | #define IUpdateDownloadContent_get_DownloadUrl(This,retval) (This)->lpVtbl->get_DownloadUrl(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContent_QueryInterface(IUpdateDownloadContent* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloadContent_AddRef(IUpdateDownloadContent* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloadContent_Release(IUpdateDownloadContent* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContent_GetTypeInfoCount(IUpdateDownloadContent* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContent_GetTypeInfo(IUpdateDownloadContent* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContent_GetIDsOfNames(IUpdateDownloadContent* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContent_Invoke(IUpdateDownloadContent* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateDownloadContent methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContent_get_DownloadUrl(IUpdateDownloadContent* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_DownloadUrl(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateDownloadContent_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateDownloadContentCollection interface | 
|  | */ | 
|  | #ifndef __IUpdateDownloadContentCollection_INTERFACE_DEFINED__ | 
|  | #define __IUpdateDownloadContentCollection_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateDownloadContentCollection, 0xbc5513c8, 0xb3b8, 0x4bf7, 0xa4,0xd4, 0x36,0x1c,0x0d,0x8c,0x88,0xba); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("bc5513c8-b3b8-4bf7-a4d4-361c0d8c88ba") | 
|  | IUpdateDownloadContentCollection : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Item( | 
|  | LONG index, | 
|  | IUpdateDownloadContent **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get__NewEnum( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Count( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateDownloadContentCollection, 0xbc5513c8, 0xb3b8, 0x4bf7, 0xa4,0xd4, 0x36,0x1c,0x0d,0x8c,0x88,0xba) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateDownloadContentCollectionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateDownloadContentCollection *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateDownloadContentCollection *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateDownloadContentCollection methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Item)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | LONG index, | 
|  | IUpdateDownloadContent **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get__NewEnum)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Count)( | 
|  | IUpdateDownloadContentCollection *This, | 
|  | LONG *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateDownloadContentCollectionVtbl; | 
|  |  | 
|  | interface IUpdateDownloadContentCollection { | 
|  | CONST_VTBL IUpdateDownloadContentCollectionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateDownloadContentCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateDownloadContentCollection_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateDownloadContentCollection_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateDownloadContentCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateDownloadContentCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateDownloadContentCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateDownloadContentCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateDownloadContentCollection methods ***/ | 
|  | #define IUpdateDownloadContentCollection_get_Item(This,index,retval) (This)->lpVtbl->get_Item(This,index,retval) | 
|  | #define IUpdateDownloadContentCollection_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval) | 
|  | #define IUpdateDownloadContentCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_QueryInterface(IUpdateDownloadContentCollection* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloadContentCollection_AddRef(IUpdateDownloadContentCollection* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloadContentCollection_Release(IUpdateDownloadContentCollection* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_GetTypeInfoCount(IUpdateDownloadContentCollection* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_GetTypeInfo(IUpdateDownloadContentCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_GetIDsOfNames(IUpdateDownloadContentCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_Invoke(IUpdateDownloadContentCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateDownloadContentCollection methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_get_Item(IUpdateDownloadContentCollection* This,LONG index,IUpdateDownloadContent **retval) { | 
|  | return This->lpVtbl->get_Item(This,index,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_get__NewEnum(IUpdateDownloadContentCollection* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get__NewEnum(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadContentCollection_get_Count(IUpdateDownloadContentCollection* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Count(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateDownloadContentCollection_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdate interface | 
|  | */ | 
|  | #ifndef __IUpdate_INTERFACE_DEFINED__ | 
|  | #define __IUpdate_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdate, 0x6a92b07a, 0xd821, 0x4682, 0xb4,0x23, 0x5c,0x80,0x50,0x22,0xcc,0x4d); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("6a92b07a-d821-4682-b423-5c805022cc4d") | 
|  | IUpdate : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Title( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AutoSelectOnWebSites( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_BundledUpdates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CanRequireSource( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Categories( | 
|  | ICategoryCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Deadline( | 
|  | VARIANT *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_DeltaCompressedContentAvailable( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_DeltaCompressedContentPreferred( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Description( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_EulaAccepted( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_EulaText( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HandlerID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Identity( | 
|  | IUpdateIdentity **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Image( | 
|  | IImageInformation **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_InstallationBehavior( | 
|  | IInstallationBehavior **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsBeta( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsDownloaded( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsHidden( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_IsHidden( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsInstalled( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsMandatory( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsUninstallable( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Languages( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_LastDeploymentChangeTime( | 
|  | DATE *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_MaxDownloadSize( | 
|  | DECIMAL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_MinDownloadSize( | 
|  | DECIMAL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_MoreInfoUrls( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_MsrcSeverity( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RecommendedCpuSpeed( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RecommendedHardDiskSpace( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RecommendedMemory( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ReleaseNotes( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_SecurityBulletinIDs( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_SupersededUpdateIDs( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_SupportUrl( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Type( | 
|  | UpdateType *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UninstallationNotes( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UninstallationBehavior( | 
|  | IInstallationBehavior **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UninstallationSteps( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_KBArticleIDs( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE AcceptEula( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_DeploymentAction( | 
|  | DeploymentAction *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CopyFromCache( | 
|  | BSTR path, | 
|  | VARIANT_BOOL toExtractCabFiles) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_DownloadPriority( | 
|  | DownloadPriority *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_DownloadContents( | 
|  | IUpdateDownloadContentCollection **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdate, 0x6a92b07a, 0xd821, 0x4682, 0xb4,0x23, 0x5c,0x80,0x50,0x22,0xcc,0x4d) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdate *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdate *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdate *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdate *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdate *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdate *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdate *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdate methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Title)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_AutoSelectOnWebSites)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_BundledUpdates)( | 
|  | IUpdate *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CanRequireSource)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Categories)( | 
|  | IUpdate *This, | 
|  | ICategoryCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Deadline)( | 
|  | IUpdate *This, | 
|  | VARIANT *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_DeltaCompressedContentAvailable)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_DeltaCompressedContentPreferred)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Description)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_EulaAccepted)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_EulaText)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_HandlerID)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Identity)( | 
|  | IUpdate *This, | 
|  | IUpdateIdentity **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Image)( | 
|  | IUpdate *This, | 
|  | IImageInformation **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_InstallationBehavior)( | 
|  | IUpdate *This, | 
|  | IInstallationBehavior **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsBeta)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsDownloaded)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsHidden)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_IsHidden)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsInstalled)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsMandatory)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsUninstallable)( | 
|  | IUpdate *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Languages)( | 
|  | IUpdate *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_LastDeploymentChangeTime)( | 
|  | IUpdate *This, | 
|  | DATE *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_MaxDownloadSize)( | 
|  | IUpdate *This, | 
|  | DECIMAL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_MinDownloadSize)( | 
|  | IUpdate *This, | 
|  | DECIMAL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_MoreInfoUrls)( | 
|  | IUpdate *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_MsrcSeverity)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RecommendedCpuSpeed)( | 
|  | IUpdate *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RecommendedHardDiskSpace)( | 
|  | IUpdate *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RecommendedMemory)( | 
|  | IUpdate *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ReleaseNotes)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_SecurityBulletinIDs)( | 
|  | IUpdate *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_SupersededUpdateIDs)( | 
|  | IUpdate *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_SupportUrl)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Type)( | 
|  | IUpdate *This, | 
|  | UpdateType *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UninstallationNotes)( | 
|  | IUpdate *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UninstallationBehavior)( | 
|  | IUpdate *This, | 
|  | IInstallationBehavior **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UninstallationSteps)( | 
|  | IUpdate *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_KBArticleIDs)( | 
|  | IUpdate *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *AcceptEula)( | 
|  | IUpdate *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_DeploymentAction)( | 
|  | IUpdate *This, | 
|  | DeploymentAction *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CopyFromCache)( | 
|  | IUpdate *This, | 
|  | BSTR path, | 
|  | VARIANT_BOOL toExtractCabFiles); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_DownloadPriority)( | 
|  | IUpdate *This, | 
|  | DownloadPriority *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_DownloadContents)( | 
|  | IUpdate *This, | 
|  | IUpdateDownloadContentCollection **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateVtbl; | 
|  |  | 
|  | interface IUpdate { | 
|  | CONST_VTBL IUpdateVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdate_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdate_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdate_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdate_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdate methods ***/ | 
|  | #define IUpdate_get_Title(This,retval) (This)->lpVtbl->get_Title(This,retval) | 
|  | #define IUpdate_get_AutoSelectOnWebSites(This,retval) (This)->lpVtbl->get_AutoSelectOnWebSites(This,retval) | 
|  | #define IUpdate_get_BundledUpdates(This,retval) (This)->lpVtbl->get_BundledUpdates(This,retval) | 
|  | #define IUpdate_get_CanRequireSource(This,retval) (This)->lpVtbl->get_CanRequireSource(This,retval) | 
|  | #define IUpdate_get_Categories(This,retval) (This)->lpVtbl->get_Categories(This,retval) | 
|  | #define IUpdate_get_Deadline(This,retval) (This)->lpVtbl->get_Deadline(This,retval) | 
|  | #define IUpdate_get_DeltaCompressedContentAvailable(This,retval) (This)->lpVtbl->get_DeltaCompressedContentAvailable(This,retval) | 
|  | #define IUpdate_get_DeltaCompressedContentPreferred(This,retval) (This)->lpVtbl->get_DeltaCompressedContentPreferred(This,retval) | 
|  | #define IUpdate_get_Description(This,retval) (This)->lpVtbl->get_Description(This,retval) | 
|  | #define IUpdate_get_EulaAccepted(This,retval) (This)->lpVtbl->get_EulaAccepted(This,retval) | 
|  | #define IUpdate_get_EulaText(This,retval) (This)->lpVtbl->get_EulaText(This,retval) | 
|  | #define IUpdate_get_HandlerID(This,retval) (This)->lpVtbl->get_HandlerID(This,retval) | 
|  | #define IUpdate_get_Identity(This,retval) (This)->lpVtbl->get_Identity(This,retval) | 
|  | #define IUpdate_get_Image(This,retval) (This)->lpVtbl->get_Image(This,retval) | 
|  | #define IUpdate_get_InstallationBehavior(This,retval) (This)->lpVtbl->get_InstallationBehavior(This,retval) | 
|  | #define IUpdate_get_IsBeta(This,retval) (This)->lpVtbl->get_IsBeta(This,retval) | 
|  | #define IUpdate_get_IsDownloaded(This,retval) (This)->lpVtbl->get_IsDownloaded(This,retval) | 
|  | #define IUpdate_get_IsHidden(This,retval) (This)->lpVtbl->get_IsHidden(This,retval) | 
|  | #define IUpdate_put_IsHidden(This,value) (This)->lpVtbl->put_IsHidden(This,value) | 
|  | #define IUpdate_get_IsInstalled(This,retval) (This)->lpVtbl->get_IsInstalled(This,retval) | 
|  | #define IUpdate_get_IsMandatory(This,retval) (This)->lpVtbl->get_IsMandatory(This,retval) | 
|  | #define IUpdate_get_IsUninstallable(This,retval) (This)->lpVtbl->get_IsUninstallable(This,retval) | 
|  | #define IUpdate_get_Languages(This,retval) (This)->lpVtbl->get_Languages(This,retval) | 
|  | #define IUpdate_get_LastDeploymentChangeTime(This,retval) (This)->lpVtbl->get_LastDeploymentChangeTime(This,retval) | 
|  | #define IUpdate_get_MaxDownloadSize(This,retval) (This)->lpVtbl->get_MaxDownloadSize(This,retval) | 
|  | #define IUpdate_get_MinDownloadSize(This,retval) (This)->lpVtbl->get_MinDownloadSize(This,retval) | 
|  | #define IUpdate_get_MoreInfoUrls(This,retval) (This)->lpVtbl->get_MoreInfoUrls(This,retval) | 
|  | #define IUpdate_get_MsrcSeverity(This,retval) (This)->lpVtbl->get_MsrcSeverity(This,retval) | 
|  | #define IUpdate_get_RecommendedCpuSpeed(This,retval) (This)->lpVtbl->get_RecommendedCpuSpeed(This,retval) | 
|  | #define IUpdate_get_RecommendedHardDiskSpace(This,retval) (This)->lpVtbl->get_RecommendedHardDiskSpace(This,retval) | 
|  | #define IUpdate_get_RecommendedMemory(This,retval) (This)->lpVtbl->get_RecommendedMemory(This,retval) | 
|  | #define IUpdate_get_ReleaseNotes(This,retval) (This)->lpVtbl->get_ReleaseNotes(This,retval) | 
|  | #define IUpdate_get_SecurityBulletinIDs(This,retval) (This)->lpVtbl->get_SecurityBulletinIDs(This,retval) | 
|  | #define IUpdate_get_SupersededUpdateIDs(This,retval) (This)->lpVtbl->get_SupersededUpdateIDs(This,retval) | 
|  | #define IUpdate_get_SupportUrl(This,retval) (This)->lpVtbl->get_SupportUrl(This,retval) | 
|  | #define IUpdate_get_Type(This,retval) (This)->lpVtbl->get_Type(This,retval) | 
|  | #define IUpdate_get_UninstallationNotes(This,retval) (This)->lpVtbl->get_UninstallationNotes(This,retval) | 
|  | #define IUpdate_get_UninstallationBehavior(This,retval) (This)->lpVtbl->get_UninstallationBehavior(This,retval) | 
|  | #define IUpdate_get_UninstallationSteps(This,retval) (This)->lpVtbl->get_UninstallationSteps(This,retval) | 
|  | #define IUpdate_get_KBArticleIDs(This,retval) (This)->lpVtbl->get_KBArticleIDs(This,retval) | 
|  | #define IUpdate_AcceptEula(This) (This)->lpVtbl->AcceptEula(This) | 
|  | #define IUpdate_get_DeploymentAction(This,retval) (This)->lpVtbl->get_DeploymentAction(This,retval) | 
|  | #define IUpdate_CopyFromCache(This,path,toExtractCabFiles) (This)->lpVtbl->CopyFromCache(This,path,toExtractCabFiles) | 
|  | #define IUpdate_get_DownloadPriority(This,retval) (This)->lpVtbl->get_DownloadPriority(This,retval) | 
|  | #define IUpdate_get_DownloadContents(This,retval) (This)->lpVtbl->get_DownloadContents(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdate_QueryInterface(IUpdate* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdate_AddRef(IUpdate* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdate_Release(IUpdate* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdate_GetTypeInfoCount(IUpdate* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_GetTypeInfo(IUpdate* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_GetIDsOfNames(IUpdate* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_Invoke(IUpdate* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdate methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdate_get_Title(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Title(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_AutoSelectOnWebSites(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_AutoSelectOnWebSites(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_BundledUpdates(IUpdate* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_BundledUpdates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_CanRequireSource(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_CanRequireSource(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Categories(IUpdate* This,ICategoryCollection **retval) { | 
|  | return This->lpVtbl->get_Categories(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Deadline(IUpdate* This,VARIANT *retval) { | 
|  | return This->lpVtbl->get_Deadline(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_DeltaCompressedContentAvailable(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_DeltaCompressedContentAvailable(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_DeltaCompressedContentPreferred(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_DeltaCompressedContentPreferred(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Description(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Description(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_EulaAccepted(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_EulaAccepted(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_EulaText(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_EulaText(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_HandlerID(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_HandlerID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Identity(IUpdate* This,IUpdateIdentity **retval) { | 
|  | return This->lpVtbl->get_Identity(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Image(IUpdate* This,IImageInformation **retval) { | 
|  | return This->lpVtbl->get_Image(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_InstallationBehavior(IUpdate* This,IInstallationBehavior **retval) { | 
|  | return This->lpVtbl->get_InstallationBehavior(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_IsBeta(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsBeta(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_IsDownloaded(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsDownloaded(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_IsHidden(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsHidden(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_put_IsHidden(IUpdate* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_IsHidden(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_IsInstalled(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsInstalled(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_IsMandatory(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsMandatory(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_IsUninstallable(IUpdate* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsUninstallable(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Languages(IUpdate* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_Languages(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_LastDeploymentChangeTime(IUpdate* This,DATE *retval) { | 
|  | return This->lpVtbl->get_LastDeploymentChangeTime(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_MaxDownloadSize(IUpdate* This,DECIMAL *retval) { | 
|  | return This->lpVtbl->get_MaxDownloadSize(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_MinDownloadSize(IUpdate* This,DECIMAL *retval) { | 
|  | return This->lpVtbl->get_MinDownloadSize(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_MoreInfoUrls(IUpdate* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_MoreInfoUrls(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_MsrcSeverity(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_MsrcSeverity(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_RecommendedCpuSpeed(IUpdate* This,LONG *retval) { | 
|  | return This->lpVtbl->get_RecommendedCpuSpeed(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_RecommendedHardDiskSpace(IUpdate* This,LONG *retval) { | 
|  | return This->lpVtbl->get_RecommendedHardDiskSpace(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_RecommendedMemory(IUpdate* This,LONG *retval) { | 
|  | return This->lpVtbl->get_RecommendedMemory(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_ReleaseNotes(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ReleaseNotes(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_SecurityBulletinIDs(IUpdate* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_SecurityBulletinIDs(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_SupersededUpdateIDs(IUpdate* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_SupersededUpdateIDs(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_SupportUrl(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_SupportUrl(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_Type(IUpdate* This,UpdateType *retval) { | 
|  | return This->lpVtbl->get_Type(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_UninstallationNotes(IUpdate* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_UninstallationNotes(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_UninstallationBehavior(IUpdate* This,IInstallationBehavior **retval) { | 
|  | return This->lpVtbl->get_UninstallationBehavior(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_UninstallationSteps(IUpdate* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_UninstallationSteps(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_KBArticleIDs(IUpdate* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_KBArticleIDs(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_AcceptEula(IUpdate* This) { | 
|  | return This->lpVtbl->AcceptEula(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_DeploymentAction(IUpdate* This,DeploymentAction *retval) { | 
|  | return This->lpVtbl->get_DeploymentAction(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_CopyFromCache(IUpdate* This,BSTR path,VARIANT_BOOL toExtractCabFiles) { | 
|  | return This->lpVtbl->CopyFromCache(This,path,toExtractCabFiles); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_DownloadPriority(IUpdate* This,DownloadPriority *retval) { | 
|  | return This->lpVtbl->get_DownloadPriority(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdate_get_DownloadContents(IUpdate* This,IUpdateDownloadContentCollection **retval) { | 
|  | return This->lpVtbl->get_DownloadContents(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdate_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateCollection interface | 
|  | */ | 
|  | #ifndef __IUpdateCollection_INTERFACE_DEFINED__ | 
|  | #define __IUpdateCollection_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateCollection, 0x07f7438c, 0x7709, 0x4ca5, 0xb5,0x18, 0x91,0x27,0x92,0x88,0x13,0x4e); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("07f7438c-7709-4ca5-b518-91279288134e") | 
|  | IUpdateCollection : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Item( | 
|  | LONG index, | 
|  | IUpdate **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Item( | 
|  | LONG index, | 
|  | IUpdate *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get__NewEnum( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Count( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ReadOnly( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Add( | 
|  | IUpdate *value, | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clear( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Copy( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Insert( | 
|  | LONG index, | 
|  | IUpdate *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RemoveAt( | 
|  | LONG index) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateCollection, 0x07f7438c, 0x7709, 0x4ca5, 0xb5,0x18, 0x91,0x27,0x92,0x88,0x13,0x4e) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateCollectionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateCollection *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateCollection *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateCollection *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateCollection *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateCollection *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateCollection *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateCollection *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateCollection methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Item)( | 
|  | IUpdateCollection *This, | 
|  | LONG index, | 
|  | IUpdate **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Item)( | 
|  | IUpdateCollection *This, | 
|  | LONG index, | 
|  | IUpdate *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get__NewEnum)( | 
|  | IUpdateCollection *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Count)( | 
|  | IUpdateCollection *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ReadOnly)( | 
|  | IUpdateCollection *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Add)( | 
|  | IUpdateCollection *This, | 
|  | IUpdate *value, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clear)( | 
|  | IUpdateCollection *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Copy)( | 
|  | IUpdateCollection *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Insert)( | 
|  | IUpdateCollection *This, | 
|  | LONG index, | 
|  | IUpdate *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RemoveAt)( | 
|  | IUpdateCollection *This, | 
|  | LONG index); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateCollectionVtbl; | 
|  |  | 
|  | interface IUpdateCollection { | 
|  | CONST_VTBL IUpdateCollectionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateCollection_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateCollection_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateCollection methods ***/ | 
|  | #define IUpdateCollection_get_Item(This,index,retval) (This)->lpVtbl->get_Item(This,index,retval) | 
|  | #define IUpdateCollection_put_Item(This,index,value) (This)->lpVtbl->put_Item(This,index,value) | 
|  | #define IUpdateCollection_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval) | 
|  | #define IUpdateCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval) | 
|  | #define IUpdateCollection_get_ReadOnly(This,retval) (This)->lpVtbl->get_ReadOnly(This,retval) | 
|  | #define IUpdateCollection_Add(This,value,retval) (This)->lpVtbl->Add(This,value,retval) | 
|  | #define IUpdateCollection_Clear(This) (This)->lpVtbl->Clear(This) | 
|  | #define IUpdateCollection_Copy(This,retval) (This)->lpVtbl->Copy(This,retval) | 
|  | #define IUpdateCollection_Insert(This,index,value) (This)->lpVtbl->Insert(This,index,value) | 
|  | #define IUpdateCollection_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateCollection_QueryInterface(IUpdateCollection* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateCollection_AddRef(IUpdateCollection* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateCollection_Release(IUpdateCollection* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateCollection_GetTypeInfoCount(IUpdateCollection* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_GetTypeInfo(IUpdateCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_GetIDsOfNames(IUpdateCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_Invoke(IUpdateCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateCollection methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateCollection_get_Item(IUpdateCollection* This,LONG index,IUpdate **retval) { | 
|  | return This->lpVtbl->get_Item(This,index,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_put_Item(IUpdateCollection* This,LONG index,IUpdate *value) { | 
|  | return This->lpVtbl->put_Item(This,index,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_get__NewEnum(IUpdateCollection* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get__NewEnum(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_get_Count(IUpdateCollection* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Count(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_get_ReadOnly(IUpdateCollection* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_ReadOnly(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_Add(IUpdateCollection* This,IUpdate *value,LONG *retval) { | 
|  | return This->lpVtbl->Add(This,value,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_Clear(IUpdateCollection* This) { | 
|  | return This->lpVtbl->Clear(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_Copy(IUpdateCollection* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->Copy(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_Insert(IUpdateCollection* This,LONG index,IUpdate *value) { | 
|  | return This->lpVtbl->Insert(This,index,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateCollection_RemoveAt(IUpdateCollection* This,LONG index) { | 
|  | return This->lpVtbl->RemoveAt(This,index); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateCollection_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * ISearchJob interface | 
|  | */ | 
|  | #ifndef __ISearchJob_INTERFACE_DEFINED__ | 
|  | #define __ISearchJob_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_ISearchJob, 0x7366ea16, 0x7a1a, 0x4ea2, 0xb0,0x42, 0x97,0x3d,0x3e,0x9c,0xd9,0x9b); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("7366ea16-7a1a-4ea2-b042-973d3e9cd99b") | 
|  | ISearchJob : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AsyncState( | 
|  | VARIANT *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsCompleted( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CleanUp( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RequestAbort( | 
|  | ) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(ISearchJob, 0x7366ea16, 0x7a1a, 0x4ea2, 0xb0,0x42, 0x97,0x3d,0x3e,0x9c,0xd9,0x9b) | 
|  | #endif | 
|  | #else | 
|  | typedef struct ISearchJobVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | ISearchJob *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | ISearchJob *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | ISearchJob *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | ISearchJob *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | ISearchJob *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | ISearchJob *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | ISearchJob *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** ISearchJob methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_AsyncState)( | 
|  | ISearchJob *This, | 
|  | VARIANT *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsCompleted)( | 
|  | ISearchJob *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CleanUp)( | 
|  | ISearchJob *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RequestAbort)( | 
|  | ISearchJob *This); | 
|  |  | 
|  | END_INTERFACE | 
|  | } ISearchJobVtbl; | 
|  |  | 
|  | interface ISearchJob { | 
|  | CONST_VTBL ISearchJobVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define ISearchJob_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define ISearchJob_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define ISearchJob_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define ISearchJob_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define ISearchJob_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define ISearchJob_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define ISearchJob_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** ISearchJob methods ***/ | 
|  | #define ISearchJob_get_AsyncState(This,retval) (This)->lpVtbl->get_AsyncState(This,retval) | 
|  | #define ISearchJob_get_IsCompleted(This,retval) (This)->lpVtbl->get_IsCompleted(This,retval) | 
|  | #define ISearchJob_CleanUp(This) (This)->lpVtbl->CleanUp(This) | 
|  | #define ISearchJob_RequestAbort(This) (This)->lpVtbl->RequestAbort(This) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT ISearchJob_QueryInterface(ISearchJob* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG ISearchJob_AddRef(ISearchJob* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG ISearchJob_Release(ISearchJob* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT ISearchJob_GetTypeInfoCount(ISearchJob* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchJob_GetTypeInfo(ISearchJob* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchJob_GetIDsOfNames(ISearchJob* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchJob_Invoke(ISearchJob* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** ISearchJob methods ***/ | 
|  | static FORCEINLINE HRESULT ISearchJob_get_AsyncState(ISearchJob* This,VARIANT *retval) { | 
|  | return This->lpVtbl->get_AsyncState(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchJob_get_IsCompleted(ISearchJob* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsCompleted(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchJob_CleanUp(ISearchJob* This) { | 
|  | return This->lpVtbl->CleanUp(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchJob_RequestAbort(ISearchJob* This) { | 
|  | return This->lpVtbl->RequestAbort(This); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __ISearchJob_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * ISearchResult interface | 
|  | */ | 
|  | #ifndef __ISearchResult_INTERFACE_DEFINED__ | 
|  | #define __ISearchResult_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_ISearchResult, 0xd40cff62, 0xe08c, 0x4498, 0x94,0x1a, 0x01,0xe2,0x5f,0x0f,0xd3,0x3c); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("d40cff62-e08c-4498-941a-01e25f0fd33c") | 
|  | ISearchResult : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ResultCode( | 
|  | OperationResultCode *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RootCategories( | 
|  | ICategoryCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Updates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Warnings( | 
|  | IUpdateExceptionCollection **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(ISearchResult, 0xd40cff62, 0xe08c, 0x4498, 0x94,0x1a, 0x01,0xe2,0x5f,0x0f,0xd3,0x3c) | 
|  | #endif | 
|  | #else | 
|  | typedef struct ISearchResultVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | ISearchResult *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | ISearchResult *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | ISearchResult *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | ISearchResult *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | ISearchResult *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | ISearchResult *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | ISearchResult *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** ISearchResult methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_ResultCode)( | 
|  | ISearchResult *This, | 
|  | OperationResultCode *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RootCategories)( | 
|  | ISearchResult *This, | 
|  | ICategoryCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Updates)( | 
|  | ISearchResult *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Warnings)( | 
|  | ISearchResult *This, | 
|  | IUpdateExceptionCollection **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } ISearchResultVtbl; | 
|  |  | 
|  | interface ISearchResult { | 
|  | CONST_VTBL ISearchResultVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define ISearchResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define ISearchResult_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define ISearchResult_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define ISearchResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define ISearchResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define ISearchResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define ISearchResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** ISearchResult methods ***/ | 
|  | #define ISearchResult_get_ResultCode(This,retval) (This)->lpVtbl->get_ResultCode(This,retval) | 
|  | #define ISearchResult_get_RootCategories(This,retval) (This)->lpVtbl->get_RootCategories(This,retval) | 
|  | #define ISearchResult_get_Updates(This,retval) (This)->lpVtbl->get_Updates(This,retval) | 
|  | #define ISearchResult_get_Warnings(This,retval) (This)->lpVtbl->get_Warnings(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT ISearchResult_QueryInterface(ISearchResult* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG ISearchResult_AddRef(ISearchResult* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG ISearchResult_Release(ISearchResult* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT ISearchResult_GetTypeInfoCount(ISearchResult* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchResult_GetTypeInfo(ISearchResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchResult_GetIDsOfNames(ISearchResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchResult_Invoke(ISearchResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** ISearchResult methods ***/ | 
|  | static FORCEINLINE HRESULT ISearchResult_get_ResultCode(ISearchResult* This,OperationResultCode *retval) { | 
|  | return This->lpVtbl->get_ResultCode(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchResult_get_RootCategories(ISearchResult* This,ICategoryCollection **retval) { | 
|  | return This->lpVtbl->get_RootCategories(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchResult_get_Updates(ISearchResult* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_Updates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISearchResult_get_Warnings(ISearchResult* This,IUpdateExceptionCollection **retval) { | 
|  | return This->lpVtbl->get_Warnings(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __ISearchResult_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateHistoryEntry interface | 
|  | */ | 
|  | #ifndef __IUpdateHistoryEntry_INTERFACE_DEFINED__ | 
|  | #define __IUpdateHistoryEntry_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateHistoryEntry, 0xbe56a644, 0xaf0e, 0x4e0e, 0xa3,0x11, 0xc1,0xd8,0xe6,0x95,0xcb,0xff); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("be56a644-af0e-4e0e-a311-c1d8e695cbff") | 
|  | IUpdateHistoryEntry : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Operation( | 
|  | UpdateOperation *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ResultCode( | 
|  | OperationResultCode *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HResult( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Date( | 
|  | DATE *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UpdateIdentity( | 
|  | IUpdateIdentity **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Title( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Description( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UnmappedResultCode( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ClientApplicationID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ServerSelection( | 
|  | ServerSelection *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ServiceID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UninstallationSteps( | 
|  | IStringCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_UninstallationNotes( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_SupportUrl( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateHistoryEntry, 0xbe56a644, 0xaf0e, 0x4e0e, 0xa3,0x11, 0xc1,0xd8,0xe6,0x95,0xcb,0xff) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateHistoryEntryVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateHistoryEntry *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateHistoryEntry *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateHistoryEntry *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateHistoryEntry *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateHistoryEntry *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateHistoryEntry *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateHistoryEntry *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateHistoryEntry methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Operation)( | 
|  | IUpdateHistoryEntry *This, | 
|  | UpdateOperation *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ResultCode)( | 
|  | IUpdateHistoryEntry *This, | 
|  | OperationResultCode *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_HResult)( | 
|  | IUpdateHistoryEntry *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Date)( | 
|  | IUpdateHistoryEntry *This, | 
|  | DATE *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UpdateIdentity)( | 
|  | IUpdateHistoryEntry *This, | 
|  | IUpdateIdentity **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Title)( | 
|  | IUpdateHistoryEntry *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Description)( | 
|  | IUpdateHistoryEntry *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UnmappedResultCode)( | 
|  | IUpdateHistoryEntry *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ClientApplicationID)( | 
|  | IUpdateHistoryEntry *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ServerSelection)( | 
|  | IUpdateHistoryEntry *This, | 
|  | ServerSelection *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ServiceID)( | 
|  | IUpdateHistoryEntry *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UninstallationSteps)( | 
|  | IUpdateHistoryEntry *This, | 
|  | IStringCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_UninstallationNotes)( | 
|  | IUpdateHistoryEntry *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_SupportUrl)( | 
|  | IUpdateHistoryEntry *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateHistoryEntryVtbl; | 
|  |  | 
|  | interface IUpdateHistoryEntry { | 
|  | CONST_VTBL IUpdateHistoryEntryVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateHistoryEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateHistoryEntry_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateHistoryEntry_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateHistoryEntry_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateHistoryEntry_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateHistoryEntry_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateHistoryEntry_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateHistoryEntry methods ***/ | 
|  | #define IUpdateHistoryEntry_get_Operation(This,retval) (This)->lpVtbl->get_Operation(This,retval) | 
|  | #define IUpdateHistoryEntry_get_ResultCode(This,retval) (This)->lpVtbl->get_ResultCode(This,retval) | 
|  | #define IUpdateHistoryEntry_get_HResult(This,retval) (This)->lpVtbl->get_HResult(This,retval) | 
|  | #define IUpdateHistoryEntry_get_Date(This,retval) (This)->lpVtbl->get_Date(This,retval) | 
|  | #define IUpdateHistoryEntry_get_UpdateIdentity(This,retval) (This)->lpVtbl->get_UpdateIdentity(This,retval) | 
|  | #define IUpdateHistoryEntry_get_Title(This,retval) (This)->lpVtbl->get_Title(This,retval) | 
|  | #define IUpdateHistoryEntry_get_Description(This,retval) (This)->lpVtbl->get_Description(This,retval) | 
|  | #define IUpdateHistoryEntry_get_UnmappedResultCode(This,retval) (This)->lpVtbl->get_UnmappedResultCode(This,retval) | 
|  | #define IUpdateHistoryEntry_get_ClientApplicationID(This,retval) (This)->lpVtbl->get_ClientApplicationID(This,retval) | 
|  | #define IUpdateHistoryEntry_get_ServerSelection(This,retval) (This)->lpVtbl->get_ServerSelection(This,retval) | 
|  | #define IUpdateHistoryEntry_get_ServiceID(This,retval) (This)->lpVtbl->get_ServiceID(This,retval) | 
|  | #define IUpdateHistoryEntry_get_UninstallationSteps(This,retval) (This)->lpVtbl->get_UninstallationSteps(This,retval) | 
|  | #define IUpdateHistoryEntry_get_UninstallationNotes(This,retval) (This)->lpVtbl->get_UninstallationNotes(This,retval) | 
|  | #define IUpdateHistoryEntry_get_SupportUrl(This,retval) (This)->lpVtbl->get_SupportUrl(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_QueryInterface(IUpdateHistoryEntry* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateHistoryEntry_AddRef(IUpdateHistoryEntry* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateHistoryEntry_Release(IUpdateHistoryEntry* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_GetTypeInfoCount(IUpdateHistoryEntry* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_GetTypeInfo(IUpdateHistoryEntry* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_GetIDsOfNames(IUpdateHistoryEntry* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_Invoke(IUpdateHistoryEntry* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateHistoryEntry methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_Operation(IUpdateHistoryEntry* This,UpdateOperation *retval) { | 
|  | return This->lpVtbl->get_Operation(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_ResultCode(IUpdateHistoryEntry* This,OperationResultCode *retval) { | 
|  | return This->lpVtbl->get_ResultCode(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_HResult(IUpdateHistoryEntry* This,LONG *retval) { | 
|  | return This->lpVtbl->get_HResult(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_Date(IUpdateHistoryEntry* This,DATE *retval) { | 
|  | return This->lpVtbl->get_Date(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_UpdateIdentity(IUpdateHistoryEntry* This,IUpdateIdentity **retval) { | 
|  | return This->lpVtbl->get_UpdateIdentity(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_Title(IUpdateHistoryEntry* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Title(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_Description(IUpdateHistoryEntry* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_Description(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_UnmappedResultCode(IUpdateHistoryEntry* This,LONG *retval) { | 
|  | return This->lpVtbl->get_UnmappedResultCode(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_ClientApplicationID(IUpdateHistoryEntry* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ClientApplicationID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_ServerSelection(IUpdateHistoryEntry* This,ServerSelection *retval) { | 
|  | return This->lpVtbl->get_ServerSelection(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_ServiceID(IUpdateHistoryEntry* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ServiceID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_UninstallationSteps(IUpdateHistoryEntry* This,IStringCollection **retval) { | 
|  | return This->lpVtbl->get_UninstallationSteps(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_UninstallationNotes(IUpdateHistoryEntry* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_UninstallationNotes(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntry_get_SupportUrl(IUpdateHistoryEntry* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_SupportUrl(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateHistoryEntry_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateHistoryEntryCollection interface | 
|  | */ | 
|  | #ifndef __IUpdateHistoryEntryCollection_INTERFACE_DEFINED__ | 
|  | #define __IUpdateHistoryEntryCollection_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateHistoryEntryCollection, 0xa7f04f3c, 0xa290, 0x435b, 0xaa,0xdf, 0xa1,0x16,0xc3,0x35,0x7a,0x5c); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("a7f04f3c-a290-435b-aadf-a116c3357a5c") | 
|  | IUpdateHistoryEntryCollection : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Item( | 
|  | LONG index, | 
|  | IUpdateHistoryEntry **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get__NewEnum( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Count( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateHistoryEntryCollection, 0xa7f04f3c, 0xa290, 0x435b, 0xaa,0xdf, 0xa1,0x16,0xc3,0x35,0x7a,0x5c) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateHistoryEntryCollectionVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateHistoryEntryCollection *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateHistoryEntryCollection *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateHistoryEntryCollection methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_Item)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | LONG index, | 
|  | IUpdateHistoryEntry **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get__NewEnum)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Count)( | 
|  | IUpdateHistoryEntryCollection *This, | 
|  | LONG *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateHistoryEntryCollectionVtbl; | 
|  |  | 
|  | interface IUpdateHistoryEntryCollection { | 
|  | CONST_VTBL IUpdateHistoryEntryCollectionVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateHistoryEntryCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateHistoryEntryCollection_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateHistoryEntryCollection_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateHistoryEntryCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateHistoryEntryCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateHistoryEntryCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateHistoryEntryCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateHistoryEntryCollection methods ***/ | 
|  | #define IUpdateHistoryEntryCollection_get_Item(This,index,retval) (This)->lpVtbl->get_Item(This,index,retval) | 
|  | #define IUpdateHistoryEntryCollection_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval) | 
|  | #define IUpdateHistoryEntryCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_QueryInterface(IUpdateHistoryEntryCollection* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateHistoryEntryCollection_AddRef(IUpdateHistoryEntryCollection* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateHistoryEntryCollection_Release(IUpdateHistoryEntryCollection* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_GetTypeInfoCount(IUpdateHistoryEntryCollection* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_GetTypeInfo(IUpdateHistoryEntryCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_GetIDsOfNames(IUpdateHistoryEntryCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_Invoke(IUpdateHistoryEntryCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateHistoryEntryCollection methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_get_Item(IUpdateHistoryEntryCollection* This,LONG index,IUpdateHistoryEntry **retval) { | 
|  | return This->lpVtbl->get_Item(This,index,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_get__NewEnum(IUpdateHistoryEntryCollection* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get__NewEnum(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateHistoryEntryCollection_get_Count(IUpdateHistoryEntryCollection* This,LONG *retval) { | 
|  | return This->lpVtbl->get_Count(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateHistoryEntryCollection_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateSearcher interface | 
|  | */ | 
|  | #ifndef __IUpdateSearcher_INTERFACE_DEFINED__ | 
|  | #define __IUpdateSearcher_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateSearcher, 0x8f45abf1, 0xf9ae, 0x4b95, 0xa9,0x33, 0xf0,0xf6,0x6e,0x50,0x56,0xea); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("8f45abf1-f9ae-4b95-a933-f0f66e5056ea") | 
|  | IUpdateSearcher : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CanAutomaticallyUpgradeService( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_CanAutomaticallyUpgradeService( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ClientApplicationID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ClientApplicationID( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IncludePotentiallySupersededUpdates( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_IncludePotentiallySupersededUpdates( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ServerSelection( | 
|  | ServerSelection *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ServerSelection( | 
|  | ServerSelection value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE BeginSearch( | 
|  | BSTR criteria, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | ISearchJob **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE EndSearch( | 
|  | ISearchJob *searchJob, | 
|  | ISearchResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE EscapeString( | 
|  | BSTR unescaped, | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE QueryHistory( | 
|  | LONG startIndex, | 
|  | LONG count, | 
|  | IUpdateHistoryEntryCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Search( | 
|  | BSTR criteria, | 
|  | ISearchResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Online( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Online( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTotalHistoryCount( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ServiceID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ServiceID( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateSearcher, 0x8f45abf1, 0xf9ae, 0x4b95, 0xa9,0x33, 0xf0,0xf6,0x6e,0x50,0x56,0xea) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateSearcherVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateSearcher *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateSearcher *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateSearcher *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateSearcher *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateSearcher *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateSearcher *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateSearcher *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateSearcher methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_CanAutomaticallyUpgradeService)( | 
|  | IUpdateSearcher *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_CanAutomaticallyUpgradeService)( | 
|  | IUpdateSearcher *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ClientApplicationID)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ClientApplicationID)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IncludePotentiallySupersededUpdates)( | 
|  | IUpdateSearcher *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_IncludePotentiallySupersededUpdates)( | 
|  | IUpdateSearcher *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ServerSelection)( | 
|  | IUpdateSearcher *This, | 
|  | ServerSelection *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ServerSelection)( | 
|  | IUpdateSearcher *This, | 
|  | ServerSelection value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *BeginSearch)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR criteria, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | ISearchJob **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *EndSearch)( | 
|  | IUpdateSearcher *This, | 
|  | ISearchJob *searchJob, | 
|  | ISearchResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *EscapeString)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR unescaped, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *QueryHistory)( | 
|  | IUpdateSearcher *This, | 
|  | LONG startIndex, | 
|  | LONG count, | 
|  | IUpdateHistoryEntryCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Search)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR criteria, | 
|  | ISearchResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Online)( | 
|  | IUpdateSearcher *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Online)( | 
|  | IUpdateSearcher *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTotalHistoryCount)( | 
|  | IUpdateSearcher *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ServiceID)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ServiceID)( | 
|  | IUpdateSearcher *This, | 
|  | BSTR value); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateSearcherVtbl; | 
|  |  | 
|  | interface IUpdateSearcher { | 
|  | CONST_VTBL IUpdateSearcherVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateSearcher_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateSearcher_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateSearcher_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateSearcher_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateSearcher_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateSearcher_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateSearcher_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateSearcher methods ***/ | 
|  | #define IUpdateSearcher_get_CanAutomaticallyUpgradeService(This,retval) (This)->lpVtbl->get_CanAutomaticallyUpgradeService(This,retval) | 
|  | #define IUpdateSearcher_put_CanAutomaticallyUpgradeService(This,value) (This)->lpVtbl->put_CanAutomaticallyUpgradeService(This,value) | 
|  | #define IUpdateSearcher_get_ClientApplicationID(This,retval) (This)->lpVtbl->get_ClientApplicationID(This,retval) | 
|  | #define IUpdateSearcher_put_ClientApplicationID(This,value) (This)->lpVtbl->put_ClientApplicationID(This,value) | 
|  | #define IUpdateSearcher_get_IncludePotentiallySupersededUpdates(This,retval) (This)->lpVtbl->get_IncludePotentiallySupersededUpdates(This,retval) | 
|  | #define IUpdateSearcher_put_IncludePotentiallySupersededUpdates(This,value) (This)->lpVtbl->put_IncludePotentiallySupersededUpdates(This,value) | 
|  | #define IUpdateSearcher_get_ServerSelection(This,retval) (This)->lpVtbl->get_ServerSelection(This,retval) | 
|  | #define IUpdateSearcher_put_ServerSelection(This,value) (This)->lpVtbl->put_ServerSelection(This,value) | 
|  | #define IUpdateSearcher_BeginSearch(This,criteria,onCompleted,state,retval) (This)->lpVtbl->BeginSearch(This,criteria,onCompleted,state,retval) | 
|  | #define IUpdateSearcher_EndSearch(This,searchJob,retval) (This)->lpVtbl->EndSearch(This,searchJob,retval) | 
|  | #define IUpdateSearcher_EscapeString(This,unescaped,retval) (This)->lpVtbl->EscapeString(This,unescaped,retval) | 
|  | #define IUpdateSearcher_QueryHistory(This,startIndex,count,retval) (This)->lpVtbl->QueryHistory(This,startIndex,count,retval) | 
|  | #define IUpdateSearcher_Search(This,criteria,retval) (This)->lpVtbl->Search(This,criteria,retval) | 
|  | #define IUpdateSearcher_get_Online(This,retval) (This)->lpVtbl->get_Online(This,retval) | 
|  | #define IUpdateSearcher_put_Online(This,value) (This)->lpVtbl->put_Online(This,value) | 
|  | #define IUpdateSearcher_GetTotalHistoryCount(This,retval) (This)->lpVtbl->GetTotalHistoryCount(This,retval) | 
|  | #define IUpdateSearcher_get_ServiceID(This,retval) (This)->lpVtbl->get_ServiceID(This,retval) | 
|  | #define IUpdateSearcher_put_ServiceID(This,value) (This)->lpVtbl->put_ServiceID(This,value) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_QueryInterface(IUpdateSearcher* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateSearcher_AddRef(IUpdateSearcher* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateSearcher_Release(IUpdateSearcher* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_GetTypeInfoCount(IUpdateSearcher* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_GetTypeInfo(IUpdateSearcher* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_GetIDsOfNames(IUpdateSearcher* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_Invoke(IUpdateSearcher* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateSearcher methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_get_CanAutomaticallyUpgradeService(IUpdateSearcher* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_CanAutomaticallyUpgradeService(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_put_CanAutomaticallyUpgradeService(IUpdateSearcher* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_CanAutomaticallyUpgradeService(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_get_ClientApplicationID(IUpdateSearcher* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ClientApplicationID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_put_ClientApplicationID(IUpdateSearcher* This,BSTR value) { | 
|  | return This->lpVtbl->put_ClientApplicationID(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_get_IncludePotentiallySupersededUpdates(IUpdateSearcher* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IncludePotentiallySupersededUpdates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_put_IncludePotentiallySupersededUpdates(IUpdateSearcher* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_IncludePotentiallySupersededUpdates(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_get_ServerSelection(IUpdateSearcher* This,ServerSelection *retval) { | 
|  | return This->lpVtbl->get_ServerSelection(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_put_ServerSelection(IUpdateSearcher* This,ServerSelection value) { | 
|  | return This->lpVtbl->put_ServerSelection(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_BeginSearch(IUpdateSearcher* This,BSTR criteria,IUnknown *onCompleted,VARIANT state,ISearchJob **retval) { | 
|  | return This->lpVtbl->BeginSearch(This,criteria,onCompleted,state,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_EndSearch(IUpdateSearcher* This,ISearchJob *searchJob,ISearchResult **retval) { | 
|  | return This->lpVtbl->EndSearch(This,searchJob,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_EscapeString(IUpdateSearcher* This,BSTR unescaped,BSTR *retval) { | 
|  | return This->lpVtbl->EscapeString(This,unescaped,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_QueryHistory(IUpdateSearcher* This,LONG startIndex,LONG count,IUpdateHistoryEntryCollection **retval) { | 
|  | return This->lpVtbl->QueryHistory(This,startIndex,count,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_Search(IUpdateSearcher* This,BSTR criteria,ISearchResult **retval) { | 
|  | return This->lpVtbl->Search(This,criteria,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_get_Online(IUpdateSearcher* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_Online(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_put_Online(IUpdateSearcher* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_Online(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_GetTotalHistoryCount(IUpdateSearcher* This,LONG *retval) { | 
|  | return This->lpVtbl->GetTotalHistoryCount(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_get_ServiceID(IUpdateSearcher* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ServiceID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateSearcher_put_ServiceID(IUpdateSearcher* This,BSTR value) { | 
|  | return This->lpVtbl->put_ServiceID(This,value); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateSearcher_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateDownloadResult interface | 
|  | */ | 
|  | #ifndef __IUpdateDownloadResult_INTERFACE_DEFINED__ | 
|  | #define __IUpdateDownloadResult_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateDownloadResult, 0xbf99af76, 0xb575, 0x42ad, 0x8a,0xa4, 0x33,0xcb,0xb5,0x47,0x7a,0xf1); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("bf99af76-b575-42ad-8aa4-33cbb5477af1") | 
|  | IUpdateDownloadResult : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HResult( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ResultCode( | 
|  | OperationResultCode *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateDownloadResult, 0xbf99af76, 0xb575, 0x42ad, 0x8a,0xa4, 0x33,0xcb,0xb5,0x47,0x7a,0xf1) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateDownloadResultVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateDownloadResult *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateDownloadResult *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateDownloadResult *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateDownloadResult *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateDownloadResult *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateDownloadResult *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateDownloadResult *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateDownloadResult methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_HResult)( | 
|  | IUpdateDownloadResult *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ResultCode)( | 
|  | IUpdateDownloadResult *This, | 
|  | OperationResultCode *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateDownloadResultVtbl; | 
|  |  | 
|  | interface IUpdateDownloadResult { | 
|  | CONST_VTBL IUpdateDownloadResultVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateDownloadResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateDownloadResult_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateDownloadResult_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateDownloadResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateDownloadResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateDownloadResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateDownloadResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateDownloadResult methods ***/ | 
|  | #define IUpdateDownloadResult_get_HResult(This,retval) (This)->lpVtbl->get_HResult(This,retval) | 
|  | #define IUpdateDownloadResult_get_ResultCode(This,retval) (This)->lpVtbl->get_ResultCode(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_QueryInterface(IUpdateDownloadResult* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloadResult_AddRef(IUpdateDownloadResult* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloadResult_Release(IUpdateDownloadResult* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_GetTypeInfoCount(IUpdateDownloadResult* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_GetTypeInfo(IUpdateDownloadResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_GetIDsOfNames(IUpdateDownloadResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_Invoke(IUpdateDownloadResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateDownloadResult methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_get_HResult(IUpdateDownloadResult* This,LONG *retval) { | 
|  | return This->lpVtbl->get_HResult(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloadResult_get_ResultCode(IUpdateDownloadResult* This,OperationResultCode *retval) { | 
|  | return This->lpVtbl->get_ResultCode(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateDownloadResult_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IDownloadProgress interface | 
|  | */ | 
|  | #ifndef __IDownloadProgress_INTERFACE_DEFINED__ | 
|  | #define __IDownloadProgress_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IDownloadProgress, 0xd31a5bac, 0xf719, 0x4178, 0x9d,0xbb, 0x5e,0x2c,0xb4,0x7f,0xd1,0x8a); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("d31a5bac-f719-4178-9dbb-5e2cb47fd18a") | 
|  | IDownloadProgress : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdateBytesDownloaded( | 
|  | DECIMAL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdateBytesToDownload( | 
|  | DECIMAL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdateIndex( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_PercentComplete( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_TotalBytesDownloaded( | 
|  | DECIMAL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_TotalBytesToDownload( | 
|  | DECIMAL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetUpdateResult( | 
|  | LONG updateIndex, | 
|  | IUpdateDownloadResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdateDownloadPhase( | 
|  | DownloadPhase *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdatePercentComplete( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IDownloadProgress, 0xd31a5bac, 0xf719, 0x4178, 0x9d,0xbb, 0x5e,0x2c,0xb4,0x7f,0xd1,0x8a) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IDownloadProgressVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IDownloadProgress *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IDownloadProgress *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IDownloadProgress *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IDownloadProgress *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IDownloadProgress *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IDownloadProgress *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IDownloadProgress *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IDownloadProgress methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdateBytesDownloaded)( | 
|  | IDownloadProgress *This, | 
|  | DECIMAL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdateBytesToDownload)( | 
|  | IDownloadProgress *This, | 
|  | DECIMAL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdateIndex)( | 
|  | IDownloadProgress *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_PercentComplete)( | 
|  | IDownloadProgress *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_TotalBytesDownloaded)( | 
|  | IDownloadProgress *This, | 
|  | DECIMAL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_TotalBytesToDownload)( | 
|  | IDownloadProgress *This, | 
|  | DECIMAL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUpdateResult)( | 
|  | IDownloadProgress *This, | 
|  | LONG updateIndex, | 
|  | IUpdateDownloadResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdateDownloadPhase)( | 
|  | IDownloadProgress *This, | 
|  | DownloadPhase *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdatePercentComplete)( | 
|  | IDownloadProgress *This, | 
|  | LONG *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IDownloadProgressVtbl; | 
|  |  | 
|  | interface IDownloadProgress { | 
|  | CONST_VTBL IDownloadProgressVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IDownloadProgress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IDownloadProgress_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IDownloadProgress_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IDownloadProgress_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IDownloadProgress_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IDownloadProgress_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IDownloadProgress_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IDownloadProgress methods ***/ | 
|  | #define IDownloadProgress_get_CurrentUpdateBytesDownloaded(This,retval) (This)->lpVtbl->get_CurrentUpdateBytesDownloaded(This,retval) | 
|  | #define IDownloadProgress_get_CurrentUpdateBytesToDownload(This,retval) (This)->lpVtbl->get_CurrentUpdateBytesToDownload(This,retval) | 
|  | #define IDownloadProgress_get_CurrentUpdateIndex(This,retval) (This)->lpVtbl->get_CurrentUpdateIndex(This,retval) | 
|  | #define IDownloadProgress_get_PercentComplete(This,retval) (This)->lpVtbl->get_PercentComplete(This,retval) | 
|  | #define IDownloadProgress_get_TotalBytesDownloaded(This,retval) (This)->lpVtbl->get_TotalBytesDownloaded(This,retval) | 
|  | #define IDownloadProgress_get_TotalBytesToDownload(This,retval) (This)->lpVtbl->get_TotalBytesToDownload(This,retval) | 
|  | #define IDownloadProgress_GetUpdateResult(This,updateIndex,retval) (This)->lpVtbl->GetUpdateResult(This,updateIndex,retval) | 
|  | #define IDownloadProgress_get_CurrentUpdateDownloadPhase(This,retval) (This)->lpVtbl->get_CurrentUpdateDownloadPhase(This,retval) | 
|  | #define IDownloadProgress_get_CurrentUpdatePercentComplete(This,retval) (This)->lpVtbl->get_CurrentUpdatePercentComplete(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadProgress_QueryInterface(IDownloadProgress* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IDownloadProgress_AddRef(IDownloadProgress* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IDownloadProgress_Release(IDownloadProgress* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadProgress_GetTypeInfoCount(IDownloadProgress* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_GetTypeInfo(IDownloadProgress* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_GetIDsOfNames(IDownloadProgress* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_Invoke(IDownloadProgress* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IDownloadProgress methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_CurrentUpdateBytesDownloaded(IDownloadProgress* This,DECIMAL *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdateBytesDownloaded(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_CurrentUpdateBytesToDownload(IDownloadProgress* This,DECIMAL *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdateBytesToDownload(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_CurrentUpdateIndex(IDownloadProgress* This,LONG *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdateIndex(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_PercentComplete(IDownloadProgress* This,LONG *retval) { | 
|  | return This->lpVtbl->get_PercentComplete(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_TotalBytesDownloaded(IDownloadProgress* This,DECIMAL *retval) { | 
|  | return This->lpVtbl->get_TotalBytesDownloaded(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_TotalBytesToDownload(IDownloadProgress* This,DECIMAL *retval) { | 
|  | return This->lpVtbl->get_TotalBytesToDownload(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_GetUpdateResult(IDownloadProgress* This,LONG updateIndex,IUpdateDownloadResult **retval) { | 
|  | return This->lpVtbl->GetUpdateResult(This,updateIndex,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_CurrentUpdateDownloadPhase(IDownloadProgress* This,DownloadPhase *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdateDownloadPhase(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadProgress_get_CurrentUpdatePercentComplete(IDownloadProgress* This,LONG *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdatePercentComplete(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IDownloadProgress_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IDownloadJob interface | 
|  | */ | 
|  | #ifndef __IDownloadJob_INTERFACE_DEFINED__ | 
|  | #define __IDownloadJob_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IDownloadJob, 0xc574de85, 0x7358, 0x43f6, 0xaa,0xe8, 0x86,0x97,0xe6,0x2d,0x8b,0xa7); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("c574de85-7358-43f6-aae8-8697e62d8ba7") | 
|  | IDownloadJob : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AsyncState( | 
|  | VARIANT *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsCompleted( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Updates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CleanUp( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetProgress( | 
|  | IDownloadProgress **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RequestAbort( | 
|  | ) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IDownloadJob, 0xc574de85, 0x7358, 0x43f6, 0xaa,0xe8, 0x86,0x97,0xe6,0x2d,0x8b,0xa7) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IDownloadJobVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IDownloadJob *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IDownloadJob *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IDownloadJob *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IDownloadJob *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IDownloadJob *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IDownloadJob *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IDownloadJob *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IDownloadJob methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_AsyncState)( | 
|  | IDownloadJob *This, | 
|  | VARIANT *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsCompleted)( | 
|  | IDownloadJob *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Updates)( | 
|  | IDownloadJob *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CleanUp)( | 
|  | IDownloadJob *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetProgress)( | 
|  | IDownloadJob *This, | 
|  | IDownloadProgress **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RequestAbort)( | 
|  | IDownloadJob *This); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IDownloadJobVtbl; | 
|  |  | 
|  | interface IDownloadJob { | 
|  | CONST_VTBL IDownloadJobVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IDownloadJob_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IDownloadJob_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IDownloadJob_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IDownloadJob_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IDownloadJob_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IDownloadJob_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IDownloadJob_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IDownloadJob methods ***/ | 
|  | #define IDownloadJob_get_AsyncState(This,retval) (This)->lpVtbl->get_AsyncState(This,retval) | 
|  | #define IDownloadJob_get_IsCompleted(This,retval) (This)->lpVtbl->get_IsCompleted(This,retval) | 
|  | #define IDownloadJob_get_Updates(This,retval) (This)->lpVtbl->get_Updates(This,retval) | 
|  | #define IDownloadJob_CleanUp(This) (This)->lpVtbl->CleanUp(This) | 
|  | #define IDownloadJob_GetProgress(This,retval) (This)->lpVtbl->GetProgress(This,retval) | 
|  | #define IDownloadJob_RequestAbort(This) (This)->lpVtbl->RequestAbort(This) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadJob_QueryInterface(IDownloadJob* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IDownloadJob_AddRef(IDownloadJob* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IDownloadJob_Release(IDownloadJob* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadJob_GetTypeInfoCount(IDownloadJob* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_GetTypeInfo(IDownloadJob* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_GetIDsOfNames(IDownloadJob* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_Invoke(IDownloadJob* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IDownloadJob methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadJob_get_AsyncState(IDownloadJob* This,VARIANT *retval) { | 
|  | return This->lpVtbl->get_AsyncState(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_get_IsCompleted(IDownloadJob* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsCompleted(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_get_Updates(IDownloadJob* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_Updates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_CleanUp(IDownloadJob* This) { | 
|  | return This->lpVtbl->CleanUp(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_GetProgress(IDownloadJob* This,IDownloadProgress **retval) { | 
|  | return This->lpVtbl->GetProgress(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadJob_RequestAbort(IDownloadJob* This) { | 
|  | return This->lpVtbl->RequestAbort(This); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IDownloadJob_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IDownloadResult interface | 
|  | */ | 
|  | #ifndef __IDownloadResult_INTERFACE_DEFINED__ | 
|  | #define __IDownloadResult_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IDownloadResult, 0xdaa4fdd0, 0x4727, 0x4dbe, 0xa1,0xe7, 0x74,0x5d,0xca,0x31,0x71,0x44); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("daa4fdd0-4727-4dbe-a1e7-745dca317144") | 
|  | IDownloadResult : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HResult( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ResultCode( | 
|  | OperationResultCode *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetUpdateResult( | 
|  | LONG updateIndex, | 
|  | IUpdateDownloadResult **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IDownloadResult, 0xdaa4fdd0, 0x4727, 0x4dbe, 0xa1,0xe7, 0x74,0x5d,0xca,0x31,0x71,0x44) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IDownloadResultVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IDownloadResult *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IDownloadResult *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IDownloadResult *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IDownloadResult *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IDownloadResult *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IDownloadResult *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IDownloadResult *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IDownloadResult methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_HResult)( | 
|  | IDownloadResult *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ResultCode)( | 
|  | IDownloadResult *This, | 
|  | OperationResultCode *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUpdateResult)( | 
|  | IDownloadResult *This, | 
|  | LONG updateIndex, | 
|  | IUpdateDownloadResult **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IDownloadResultVtbl; | 
|  |  | 
|  | interface IDownloadResult { | 
|  | CONST_VTBL IDownloadResultVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IDownloadResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IDownloadResult_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IDownloadResult_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IDownloadResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IDownloadResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IDownloadResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IDownloadResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IDownloadResult methods ***/ | 
|  | #define IDownloadResult_get_HResult(This,retval) (This)->lpVtbl->get_HResult(This,retval) | 
|  | #define IDownloadResult_get_ResultCode(This,retval) (This)->lpVtbl->get_ResultCode(This,retval) | 
|  | #define IDownloadResult_GetUpdateResult(This,updateIndex,retval) (This)->lpVtbl->GetUpdateResult(This,updateIndex,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadResult_QueryInterface(IDownloadResult* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IDownloadResult_AddRef(IDownloadResult* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IDownloadResult_Release(IDownloadResult* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadResult_GetTypeInfoCount(IDownloadResult* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadResult_GetTypeInfo(IDownloadResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadResult_GetIDsOfNames(IDownloadResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadResult_Invoke(IDownloadResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IDownloadResult methods ***/ | 
|  | static FORCEINLINE HRESULT IDownloadResult_get_HResult(IDownloadResult* This,LONG *retval) { | 
|  | return This->lpVtbl->get_HResult(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadResult_get_ResultCode(IDownloadResult* This,OperationResultCode *retval) { | 
|  | return This->lpVtbl->get_ResultCode(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IDownloadResult_GetUpdateResult(IDownloadResult* This,LONG updateIndex,IUpdateDownloadResult **retval) { | 
|  | return This->lpVtbl->GetUpdateResult(This,updateIndex,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IDownloadResult_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateDownloader interface | 
|  | */ | 
|  | #ifndef __IUpdateDownloader_INTERFACE_DEFINED__ | 
|  | #define __IUpdateDownloader_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateDownloader, 0x68f1c6f9, 0x7ecc, 0x4666, 0xa4,0x64, 0x24,0x7f,0xe1,0x24,0x96,0xc3); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("68f1c6f9-7ecc-4666-a464-247fe12496c3") | 
|  | IUpdateDownloader : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ClientApplicationID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ClientApplicationID( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsForced( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_IsForced( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Priority( | 
|  | DownloadPriority *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Priority( | 
|  | DownloadPriority value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Updates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Updates( | 
|  | IUpdateCollection *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE BeginDownload( | 
|  | IUnknown *onProgressChanged, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | IDownloadJob **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Download( | 
|  | IDownloadResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE EndDownload( | 
|  | IDownloadJob *value, | 
|  | IDownloadResult **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateDownloader, 0x68f1c6f9, 0x7ecc, 0x4666, 0xa4,0x64, 0x24,0x7f,0xe1,0x24,0x96,0xc3) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateDownloaderVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateDownloader *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateDownloader *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateDownloader *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateDownloader *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateDownloader *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateDownloader *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateDownloader *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateDownloader methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_ClientApplicationID)( | 
|  | IUpdateDownloader *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ClientApplicationID)( | 
|  | IUpdateDownloader *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsForced)( | 
|  | IUpdateDownloader *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_IsForced)( | 
|  | IUpdateDownloader *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Priority)( | 
|  | IUpdateDownloader *This, | 
|  | DownloadPriority *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Priority)( | 
|  | IUpdateDownloader *This, | 
|  | DownloadPriority value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Updates)( | 
|  | IUpdateDownloader *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Updates)( | 
|  | IUpdateDownloader *This, | 
|  | IUpdateCollection *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *BeginDownload)( | 
|  | IUpdateDownloader *This, | 
|  | IUnknown *onProgressChanged, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | IDownloadJob **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Download)( | 
|  | IUpdateDownloader *This, | 
|  | IDownloadResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *EndDownload)( | 
|  | IUpdateDownloader *This, | 
|  | IDownloadJob *value, | 
|  | IDownloadResult **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateDownloaderVtbl; | 
|  |  | 
|  | interface IUpdateDownloader { | 
|  | CONST_VTBL IUpdateDownloaderVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateDownloader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateDownloader_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateDownloader_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateDownloader_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateDownloader_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateDownloader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateDownloader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateDownloader methods ***/ | 
|  | #define IUpdateDownloader_get_ClientApplicationID(This,retval) (This)->lpVtbl->get_ClientApplicationID(This,retval) | 
|  | #define IUpdateDownloader_put_ClientApplicationID(This,value) (This)->lpVtbl->put_ClientApplicationID(This,value) | 
|  | #define IUpdateDownloader_get_IsForced(This,retval) (This)->lpVtbl->get_IsForced(This,retval) | 
|  | #define IUpdateDownloader_put_IsForced(This,value) (This)->lpVtbl->put_IsForced(This,value) | 
|  | #define IUpdateDownloader_get_Priority(This,retval) (This)->lpVtbl->get_Priority(This,retval) | 
|  | #define IUpdateDownloader_put_Priority(This,value) (This)->lpVtbl->put_Priority(This,value) | 
|  | #define IUpdateDownloader_get_Updates(This,retval) (This)->lpVtbl->get_Updates(This,retval) | 
|  | #define IUpdateDownloader_put_Updates(This,value) (This)->lpVtbl->put_Updates(This,value) | 
|  | #define IUpdateDownloader_BeginDownload(This,onProgressChanged,onCompleted,state,retval) (This)->lpVtbl->BeginDownload(This,onProgressChanged,onCompleted,state,retval) | 
|  | #define IUpdateDownloader_Download(This,retval) (This)->lpVtbl->Download(This,retval) | 
|  | #define IUpdateDownloader_EndDownload(This,value,retval) (This)->lpVtbl->EndDownload(This,value,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_QueryInterface(IUpdateDownloader* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloader_AddRef(IUpdateDownloader* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateDownloader_Release(IUpdateDownloader* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_GetTypeInfoCount(IUpdateDownloader* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_GetTypeInfo(IUpdateDownloader* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_GetIDsOfNames(IUpdateDownloader* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_Invoke(IUpdateDownloader* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateDownloader methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_get_ClientApplicationID(IUpdateDownloader* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ClientApplicationID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_put_ClientApplicationID(IUpdateDownloader* This,BSTR value) { | 
|  | return This->lpVtbl->put_ClientApplicationID(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_get_IsForced(IUpdateDownloader* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsForced(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_put_IsForced(IUpdateDownloader* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_IsForced(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_get_Priority(IUpdateDownloader* This,DownloadPriority *retval) { | 
|  | return This->lpVtbl->get_Priority(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_put_Priority(IUpdateDownloader* This,DownloadPriority value) { | 
|  | return This->lpVtbl->put_Priority(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_get_Updates(IUpdateDownloader* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_Updates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_put_Updates(IUpdateDownloader* This,IUpdateCollection *value) { | 
|  | return This->lpVtbl->put_Updates(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_BeginDownload(IUpdateDownloader* This,IUnknown *onProgressChanged,IUnknown *onCompleted,VARIANT state,IDownloadJob **retval) { | 
|  | return This->lpVtbl->BeginDownload(This,onProgressChanged,onCompleted,state,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_Download(IUpdateDownloader* This,IDownloadResult **retval) { | 
|  | return This->lpVtbl->Download(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateDownloader_EndDownload(IUpdateDownloader* This,IDownloadJob *value,IDownloadResult **retval) { | 
|  | return This->lpVtbl->EndDownload(This,value,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateDownloader_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateInstallationResult interface | 
|  | */ | 
|  | #ifndef __IUpdateInstallationResult_INTERFACE_DEFINED__ | 
|  | #define __IUpdateInstallationResult_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateInstallationResult, 0xd940f0f8, 0x3cbb, 0x4fd0, 0x99,0x3f, 0x47,0x1e,0x7f,0x23,0x28,0xad); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("d940f0f8-3cbb-4fd0-993f-471e7f2328ad") | 
|  | IUpdateInstallationResult : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HResult( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RebootRequired( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ResultCode( | 
|  | OperationResultCode *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateInstallationResult, 0xd940f0f8, 0x3cbb, 0x4fd0, 0x99,0x3f, 0x47,0x1e,0x7f,0x23,0x28,0xad) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateInstallationResultVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateInstallationResult *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateInstallationResult *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateInstallationResult *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateInstallationResult *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateInstallationResult *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateInstallationResult *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateInstallationResult *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateInstallationResult methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_HResult)( | 
|  | IUpdateInstallationResult *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RebootRequired)( | 
|  | IUpdateInstallationResult *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ResultCode)( | 
|  | IUpdateInstallationResult *This, | 
|  | OperationResultCode *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateInstallationResultVtbl; | 
|  |  | 
|  | interface IUpdateInstallationResult { | 
|  | CONST_VTBL IUpdateInstallationResultVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateInstallationResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateInstallationResult_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateInstallationResult_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateInstallationResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateInstallationResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateInstallationResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateInstallationResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateInstallationResult methods ***/ | 
|  | #define IUpdateInstallationResult_get_HResult(This,retval) (This)->lpVtbl->get_HResult(This,retval) | 
|  | #define IUpdateInstallationResult_get_RebootRequired(This,retval) (This)->lpVtbl->get_RebootRequired(This,retval) | 
|  | #define IUpdateInstallationResult_get_ResultCode(This,retval) (This)->lpVtbl->get_ResultCode(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_QueryInterface(IUpdateInstallationResult* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateInstallationResult_AddRef(IUpdateInstallationResult* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateInstallationResult_Release(IUpdateInstallationResult* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_GetTypeInfoCount(IUpdateInstallationResult* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_GetTypeInfo(IUpdateInstallationResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_GetIDsOfNames(IUpdateInstallationResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_Invoke(IUpdateInstallationResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateInstallationResult methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_get_HResult(IUpdateInstallationResult* This,LONG *retval) { | 
|  | return This->lpVtbl->get_HResult(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_get_RebootRequired(IUpdateInstallationResult* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_RebootRequired(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstallationResult_get_ResultCode(IUpdateInstallationResult* This,OperationResultCode *retval) { | 
|  | return This->lpVtbl->get_ResultCode(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateInstallationResult_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IInstallationProgress interface | 
|  | */ | 
|  | #ifndef __IInstallationProgress_INTERFACE_DEFINED__ | 
|  | #define __IInstallationProgress_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IInstallationProgress, 0x345c8244, 0x43a3, 0x4e32, 0xa3,0x68, 0x65,0xf0,0x73,0xb7,0x6f,0x36); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("345c8244-43a3-4e32-a368-65f073b76f36") | 
|  | IInstallationProgress : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdateIndex( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_CurrentUpdatePercentComplete( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_PercentComplete( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetUpdateResult( | 
|  | LONG updateIndex, | 
|  | IUpdateInstallationResult **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IInstallationProgress, 0x345c8244, 0x43a3, 0x4e32, 0xa3,0x68, 0x65,0xf0,0x73,0xb7,0x6f,0x36) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IInstallationProgressVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IInstallationProgress *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IInstallationProgress *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IInstallationProgress *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IInstallationProgress *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IInstallationProgress *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IInstallationProgress *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IInstallationProgress *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IInstallationProgress methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdateIndex)( | 
|  | IInstallationProgress *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_CurrentUpdatePercentComplete)( | 
|  | IInstallationProgress *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_PercentComplete)( | 
|  | IInstallationProgress *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUpdateResult)( | 
|  | IInstallationProgress *This, | 
|  | LONG updateIndex, | 
|  | IUpdateInstallationResult **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IInstallationProgressVtbl; | 
|  |  | 
|  | interface IInstallationProgress { | 
|  | CONST_VTBL IInstallationProgressVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IInstallationProgress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IInstallationProgress_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IInstallationProgress_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IInstallationProgress_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IInstallationProgress_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IInstallationProgress_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IInstallationProgress_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IInstallationProgress methods ***/ | 
|  | #define IInstallationProgress_get_CurrentUpdateIndex(This,retval) (This)->lpVtbl->get_CurrentUpdateIndex(This,retval) | 
|  | #define IInstallationProgress_get_CurrentUpdatePercentComplete(This,retval) (This)->lpVtbl->get_CurrentUpdatePercentComplete(This,retval) | 
|  | #define IInstallationProgress_get_PercentComplete(This,retval) (This)->lpVtbl->get_PercentComplete(This,retval) | 
|  | #define IInstallationProgress_GetUpdateResult(This,updateIndex,retval) (This)->lpVtbl->GetUpdateResult(This,updateIndex,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationProgress_QueryInterface(IInstallationProgress* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationProgress_AddRef(IInstallationProgress* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationProgress_Release(IInstallationProgress* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationProgress_GetTypeInfoCount(IInstallationProgress* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationProgress_GetTypeInfo(IInstallationProgress* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationProgress_GetIDsOfNames(IInstallationProgress* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationProgress_Invoke(IInstallationProgress* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IInstallationProgress methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationProgress_get_CurrentUpdateIndex(IInstallationProgress* This,LONG *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdateIndex(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationProgress_get_CurrentUpdatePercentComplete(IInstallationProgress* This,LONG *retval) { | 
|  | return This->lpVtbl->get_CurrentUpdatePercentComplete(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationProgress_get_PercentComplete(IInstallationProgress* This,LONG *retval) { | 
|  | return This->lpVtbl->get_PercentComplete(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationProgress_GetUpdateResult(IInstallationProgress* This,LONG updateIndex,IUpdateInstallationResult **retval) { | 
|  | return This->lpVtbl->GetUpdateResult(This,updateIndex,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IInstallationProgress_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IInstallationJob interface | 
|  | */ | 
|  | #ifndef __IInstallationJob_INTERFACE_DEFINED__ | 
|  | #define __IInstallationJob_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IInstallationJob, 0x5c209f0b, 0xbad5, 0x432a, 0x95,0x56, 0x46,0x99,0xbe,0xd2,0x63,0x8a); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("5c209f0b-bad5-432a-9556-4699bed2638a") | 
|  | IInstallationJob : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AsyncState( | 
|  | VARIANT *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsCompleted( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Updates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CleanUp( | 
|  | ) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetProgress( | 
|  | IInstallationProgress **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RequestAbort( | 
|  | ) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IInstallationJob, 0x5c209f0b, 0xbad5, 0x432a, 0x95,0x56, 0x46,0x99,0xbe,0xd2,0x63,0x8a) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IInstallationJobVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IInstallationJob *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IInstallationJob *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IInstallationJob *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IInstallationJob *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IInstallationJob *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IInstallationJob *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IInstallationJob *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IInstallationJob methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_AsyncState)( | 
|  | IInstallationJob *This, | 
|  | VARIANT *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsCompleted)( | 
|  | IInstallationJob *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Updates)( | 
|  | IInstallationJob *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CleanUp)( | 
|  | IInstallationJob *This); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetProgress)( | 
|  | IInstallationJob *This, | 
|  | IInstallationProgress **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RequestAbort)( | 
|  | IInstallationJob *This); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IInstallationJobVtbl; | 
|  |  | 
|  | interface IInstallationJob { | 
|  | CONST_VTBL IInstallationJobVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IInstallationJob_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IInstallationJob_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IInstallationJob_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IInstallationJob_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IInstallationJob_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IInstallationJob_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IInstallationJob_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IInstallationJob methods ***/ | 
|  | #define IInstallationJob_get_AsyncState(This,retval) (This)->lpVtbl->get_AsyncState(This,retval) | 
|  | #define IInstallationJob_get_IsCompleted(This,retval) (This)->lpVtbl->get_IsCompleted(This,retval) | 
|  | #define IInstallationJob_get_Updates(This,retval) (This)->lpVtbl->get_Updates(This,retval) | 
|  | #define IInstallationJob_CleanUp(This) (This)->lpVtbl->CleanUp(This) | 
|  | #define IInstallationJob_GetProgress(This,retval) (This)->lpVtbl->GetProgress(This,retval) | 
|  | #define IInstallationJob_RequestAbort(This) (This)->lpVtbl->RequestAbort(This) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationJob_QueryInterface(IInstallationJob* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationJob_AddRef(IInstallationJob* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationJob_Release(IInstallationJob* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationJob_GetTypeInfoCount(IInstallationJob* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_GetTypeInfo(IInstallationJob* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_GetIDsOfNames(IInstallationJob* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_Invoke(IInstallationJob* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IInstallationJob methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationJob_get_AsyncState(IInstallationJob* This,VARIANT *retval) { | 
|  | return This->lpVtbl->get_AsyncState(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_get_IsCompleted(IInstallationJob* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsCompleted(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_get_Updates(IInstallationJob* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_Updates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_CleanUp(IInstallationJob* This) { | 
|  | return This->lpVtbl->CleanUp(This); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_GetProgress(IInstallationJob* This,IInstallationProgress **retval) { | 
|  | return This->lpVtbl->GetProgress(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationJob_RequestAbort(IInstallationJob* This) { | 
|  | return This->lpVtbl->RequestAbort(This); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IInstallationJob_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IInstallationResult interface | 
|  | */ | 
|  | #ifndef __IInstallationResult_INTERFACE_DEFINED__ | 
|  | #define __IInstallationResult_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IInstallationResult, 0xa43c56d6, 0x7451, 0x48d4, 0xaf,0x96, 0xb6,0xcd,0x2d,0x0d,0x9b,0x7a); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("a43c56d6-7451-48d4-af96-b6cd2d0d9b7a") | 
|  | IInstallationResult : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_HResult( | 
|  | LONG *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RebootRequired( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ResultCode( | 
|  | OperationResultCode *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetUpdateResult( | 
|  | LONG updateIndex, | 
|  | IUpdateInstallationResult **retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IInstallationResult, 0xa43c56d6, 0x7451, 0x48d4, 0xaf,0x96, 0xb6,0xcd,0x2d,0x0d,0x9b,0x7a) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IInstallationResultVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IInstallationResult *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IInstallationResult *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IInstallationResult *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IInstallationResult *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IInstallationResult *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IInstallationResult *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IInstallationResult *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IInstallationResult methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_HResult)( | 
|  | IInstallationResult *This, | 
|  | LONG *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RebootRequired)( | 
|  | IInstallationResult *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ResultCode)( | 
|  | IInstallationResult *This, | 
|  | OperationResultCode *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUpdateResult)( | 
|  | IInstallationResult *This, | 
|  | LONG updateIndex, | 
|  | IUpdateInstallationResult **retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IInstallationResultVtbl; | 
|  |  | 
|  | interface IInstallationResult { | 
|  | CONST_VTBL IInstallationResultVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IInstallationResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IInstallationResult_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IInstallationResult_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IInstallationResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IInstallationResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IInstallationResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IInstallationResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IInstallationResult methods ***/ | 
|  | #define IInstallationResult_get_HResult(This,retval) (This)->lpVtbl->get_HResult(This,retval) | 
|  | #define IInstallationResult_get_RebootRequired(This,retval) (This)->lpVtbl->get_RebootRequired(This,retval) | 
|  | #define IInstallationResult_get_ResultCode(This,retval) (This)->lpVtbl->get_ResultCode(This,retval) | 
|  | #define IInstallationResult_GetUpdateResult(This,updateIndex,retval) (This)->lpVtbl->GetUpdateResult(This,updateIndex,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationResult_QueryInterface(IInstallationResult* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationResult_AddRef(IInstallationResult* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IInstallationResult_Release(IInstallationResult* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationResult_GetTypeInfoCount(IInstallationResult* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationResult_GetTypeInfo(IInstallationResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationResult_GetIDsOfNames(IInstallationResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationResult_Invoke(IInstallationResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IInstallationResult methods ***/ | 
|  | static FORCEINLINE HRESULT IInstallationResult_get_HResult(IInstallationResult* This,LONG *retval) { | 
|  | return This->lpVtbl->get_HResult(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationResult_get_RebootRequired(IInstallationResult* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_RebootRequired(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationResult_get_ResultCode(IInstallationResult* This,OperationResultCode *retval) { | 
|  | return This->lpVtbl->get_ResultCode(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IInstallationResult_GetUpdateResult(IInstallationResult* This,LONG updateIndex,IUpdateInstallationResult **retval) { | 
|  | return This->lpVtbl->GetUpdateResult(This,updateIndex,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IInstallationResult_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IUpdateInstaller interface | 
|  | */ | 
|  | #ifndef __IUpdateInstaller_INTERFACE_DEFINED__ | 
|  | #define __IUpdateInstaller_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IUpdateInstaller, 0x7b929c68, 0xccdc, 0x4226, 0x96,0xb1, 0x87,0x24,0x60,0x0b,0x54,0xc2); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("7b929c68-ccdc-4226-96b1-8724600b54c2") | 
|  | IUpdateInstaller : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ClientApplicationID( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ClientApplicationID( | 
|  | BSTR value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsForced( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_IsForced( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ParentHwnd( | 
|  | HWND *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ParentHwnd( | 
|  | HWND value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_ParentWindow( | 
|  | IUnknown *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_ParentWindow( | 
|  | IUnknown **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_Updates( | 
|  | IUpdateCollection **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_Updates( | 
|  | IUpdateCollection *value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE BeginInstall( | 
|  | IUnknown *onProgressChanged, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | IInstallationJob **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE BeginUninstall( | 
|  | IUnknown *onProgressChanged, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | IInstallationJob **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE EndInstall( | 
|  | IInstallationJob *value, | 
|  | IInstallationResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE EndUninstall( | 
|  | IInstallationJob *value, | 
|  | IInstallationResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Install( | 
|  | IInstallationResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RunWizard( | 
|  | BSTR dialogTitle, | 
|  | IInstallationResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_IsBusy( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Uninstall( | 
|  | IInstallationResult **retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_AllowSourcePrompts( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE put_AllowSourcePrompts( | 
|  | VARIANT_BOOL value) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RebootRequiredBeforeInstallation( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IUpdateInstaller, 0x7b929c68, 0xccdc, 0x4226, 0x96,0xb1, 0x87,0x24,0x60,0x0b,0x54,0xc2) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IUpdateInstallerVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IUpdateInstaller *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IUpdateInstaller *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IUpdateInstaller *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | IUpdateInstaller *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | IUpdateInstaller *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | IUpdateInstaller *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | IUpdateInstaller *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** IUpdateInstaller methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_ClientApplicationID)( | 
|  | IUpdateInstaller *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ClientApplicationID)( | 
|  | IUpdateInstaller *This, | 
|  | BSTR value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsForced)( | 
|  | IUpdateInstaller *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_IsForced)( | 
|  | IUpdateInstaller *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ParentHwnd)( | 
|  | IUpdateInstaller *This, | 
|  | HWND *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ParentHwnd)( | 
|  | IUpdateInstaller *This, | 
|  | HWND value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_ParentWindow)( | 
|  | IUpdateInstaller *This, | 
|  | IUnknown *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_ParentWindow)( | 
|  | IUpdateInstaller *This, | 
|  | IUnknown **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_Updates)( | 
|  | IUpdateInstaller *This, | 
|  | IUpdateCollection **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_Updates)( | 
|  | IUpdateInstaller *This, | 
|  | IUpdateCollection *value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *BeginInstall)( | 
|  | IUpdateInstaller *This, | 
|  | IUnknown *onProgressChanged, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | IInstallationJob **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *BeginUninstall)( | 
|  | IUpdateInstaller *This, | 
|  | IUnknown *onProgressChanged, | 
|  | IUnknown *onCompleted, | 
|  | VARIANT state, | 
|  | IInstallationJob **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *EndInstall)( | 
|  | IUpdateInstaller *This, | 
|  | IInstallationJob *value, | 
|  | IInstallationResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *EndUninstall)( | 
|  | IUpdateInstaller *This, | 
|  | IInstallationJob *value, | 
|  | IInstallationResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Install)( | 
|  | IUpdateInstaller *This, | 
|  | IInstallationResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RunWizard)( | 
|  | IUpdateInstaller *This, | 
|  | BSTR dialogTitle, | 
|  | IInstallationResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_IsBusy)( | 
|  | IUpdateInstaller *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Uninstall)( | 
|  | IUpdateInstaller *This, | 
|  | IInstallationResult **retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_AllowSourcePrompts)( | 
|  | IUpdateInstaller *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *put_AllowSourcePrompts)( | 
|  | IUpdateInstaller *This, | 
|  | VARIANT_BOOL value); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RebootRequiredBeforeInstallation)( | 
|  | IUpdateInstaller *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IUpdateInstallerVtbl; | 
|  |  | 
|  | interface IUpdateInstaller { | 
|  | CONST_VTBL IUpdateInstallerVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IUpdateInstaller_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IUpdateInstaller_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IUpdateInstaller_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define IUpdateInstaller_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define IUpdateInstaller_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define IUpdateInstaller_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define IUpdateInstaller_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** IUpdateInstaller methods ***/ | 
|  | #define IUpdateInstaller_get_ClientApplicationID(This,retval) (This)->lpVtbl->get_ClientApplicationID(This,retval) | 
|  | #define IUpdateInstaller_put_ClientApplicationID(This,value) (This)->lpVtbl->put_ClientApplicationID(This,value) | 
|  | #define IUpdateInstaller_get_IsForced(This,retval) (This)->lpVtbl->get_IsForced(This,retval) | 
|  | #define IUpdateInstaller_put_IsForced(This,value) (This)->lpVtbl->put_IsForced(This,value) | 
|  | #define IUpdateInstaller_get_ParentHwnd(This,retval) (This)->lpVtbl->get_ParentHwnd(This,retval) | 
|  | #define IUpdateInstaller_put_ParentHwnd(This,value) (This)->lpVtbl->put_ParentHwnd(This,value) | 
|  | #define IUpdateInstaller_put_ParentWindow(This,value) (This)->lpVtbl->put_ParentWindow(This,value) | 
|  | #define IUpdateInstaller_get_ParentWindow(This,retval) (This)->lpVtbl->get_ParentWindow(This,retval) | 
|  | #define IUpdateInstaller_get_Updates(This,retval) (This)->lpVtbl->get_Updates(This,retval) | 
|  | #define IUpdateInstaller_put_Updates(This,value) (This)->lpVtbl->put_Updates(This,value) | 
|  | #define IUpdateInstaller_BeginInstall(This,onProgressChanged,onCompleted,state,retval) (This)->lpVtbl->BeginInstall(This,onProgressChanged,onCompleted,state,retval) | 
|  | #define IUpdateInstaller_BeginUninstall(This,onProgressChanged,onCompleted,state,retval) (This)->lpVtbl->BeginUninstall(This,onProgressChanged,onCompleted,state,retval) | 
|  | #define IUpdateInstaller_EndInstall(This,value,retval) (This)->lpVtbl->EndInstall(This,value,retval) | 
|  | #define IUpdateInstaller_EndUninstall(This,value,retval) (This)->lpVtbl->EndUninstall(This,value,retval) | 
|  | #define IUpdateInstaller_Install(This,retval) (This)->lpVtbl->Install(This,retval) | 
|  | #define IUpdateInstaller_RunWizard(This,dialogTitle,retval) (This)->lpVtbl->RunWizard(This,dialogTitle,retval) | 
|  | #define IUpdateInstaller_get_IsBusy(This,retval) (This)->lpVtbl->get_IsBusy(This,retval) | 
|  | #define IUpdateInstaller_Uninstall(This,retval) (This)->lpVtbl->Uninstall(This,retval) | 
|  | #define IUpdateInstaller_get_AllowSourcePrompts(This,retval) (This)->lpVtbl->get_AllowSourcePrompts(This,retval) | 
|  | #define IUpdateInstaller_put_AllowSourcePrompts(This,value) (This)->lpVtbl->put_AllowSourcePrompts(This,value) | 
|  | #define IUpdateInstaller_get_RebootRequiredBeforeInstallation(This,retval) (This)->lpVtbl->get_RebootRequiredBeforeInstallation(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_QueryInterface(IUpdateInstaller* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateInstaller_AddRef(IUpdateInstaller* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG IUpdateInstaller_Release(IUpdateInstaller* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_GetTypeInfoCount(IUpdateInstaller* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_GetTypeInfo(IUpdateInstaller* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_GetIDsOfNames(IUpdateInstaller* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_Invoke(IUpdateInstaller* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** IUpdateInstaller methods ***/ | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_ClientApplicationID(IUpdateInstaller* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_ClientApplicationID(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_put_ClientApplicationID(IUpdateInstaller* This,BSTR value) { | 
|  | return This->lpVtbl->put_ClientApplicationID(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_IsForced(IUpdateInstaller* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsForced(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_put_IsForced(IUpdateInstaller* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_IsForced(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_ParentHwnd(IUpdateInstaller* This,HWND *retval) { | 
|  | return This->lpVtbl->get_ParentHwnd(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_put_ParentHwnd(IUpdateInstaller* This,HWND value) { | 
|  | return This->lpVtbl->put_ParentHwnd(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_put_ParentWindow(IUpdateInstaller* This,IUnknown *value) { | 
|  | return This->lpVtbl->put_ParentWindow(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_ParentWindow(IUpdateInstaller* This,IUnknown **retval) { | 
|  | return This->lpVtbl->get_ParentWindow(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_Updates(IUpdateInstaller* This,IUpdateCollection **retval) { | 
|  | return This->lpVtbl->get_Updates(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_put_Updates(IUpdateInstaller* This,IUpdateCollection *value) { | 
|  | return This->lpVtbl->put_Updates(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_BeginInstall(IUpdateInstaller* This,IUnknown *onProgressChanged,IUnknown *onCompleted,VARIANT state,IInstallationJob **retval) { | 
|  | return This->lpVtbl->BeginInstall(This,onProgressChanged,onCompleted,state,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_BeginUninstall(IUpdateInstaller* This,IUnknown *onProgressChanged,IUnknown *onCompleted,VARIANT state,IInstallationJob **retval) { | 
|  | return This->lpVtbl->BeginUninstall(This,onProgressChanged,onCompleted,state,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_EndInstall(IUpdateInstaller* This,IInstallationJob *value,IInstallationResult **retval) { | 
|  | return This->lpVtbl->EndInstall(This,value,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_EndUninstall(IUpdateInstaller* This,IInstallationJob *value,IInstallationResult **retval) { | 
|  | return This->lpVtbl->EndUninstall(This,value,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_Install(IUpdateInstaller* This,IInstallationResult **retval) { | 
|  | return This->lpVtbl->Install(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_RunWizard(IUpdateInstaller* This,BSTR dialogTitle,IInstallationResult **retval) { | 
|  | return This->lpVtbl->RunWizard(This,dialogTitle,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_IsBusy(IUpdateInstaller* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_IsBusy(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_Uninstall(IUpdateInstaller* This,IInstallationResult **retval) { | 
|  | return This->lpVtbl->Uninstall(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_AllowSourcePrompts(IUpdateInstaller* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_AllowSourcePrompts(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_put_AllowSourcePrompts(IUpdateInstaller* This,VARIANT_BOOL value) { | 
|  | return This->lpVtbl->put_AllowSourcePrompts(This,value); | 
|  | } | 
|  | static FORCEINLINE HRESULT IUpdateInstaller_get_RebootRequiredBeforeInstallation(IUpdateInstaller* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_RebootRequiredBeforeInstallation(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IUpdateInstaller_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * ISystemInformation interface | 
|  | */ | 
|  | #ifndef __ISystemInformation_INTERFACE_DEFINED__ | 
|  | #define __ISystemInformation_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_ISystemInformation, 0xade87bf7, 0x7b56, 0x4275, 0x8f,0xab, 0xb9,0xb0,0xe5,0x91,0x84,0x4b); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("ade87bf7-7b56-4275-8fab-b9b0e591844b") | 
|  | ISystemInformation : public IDispatch | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE get_OemHardwareSupportLink( | 
|  | BSTR *retval) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE get_RebootRequired( | 
|  | VARIANT_BOOL *retval) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(ISystemInformation, 0xade87bf7, 0x7b56, 0x4275, 0x8f,0xab, 0xb9,0xb0,0xe5,0x91,0x84,0x4b) | 
|  | #endif | 
|  | #else | 
|  | typedef struct ISystemInformationVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | ISystemInformation *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | ISystemInformation *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | ISystemInformation *This); | 
|  |  | 
|  | /*** IDispatch methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( | 
|  | ISystemInformation *This, | 
|  | UINT *pctinfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( | 
|  | ISystemInformation *This, | 
|  | UINT iTInfo, | 
|  | LCID lcid, | 
|  | ITypeInfo **ppTInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( | 
|  | ISystemInformation *This, | 
|  | REFIID riid, | 
|  | LPOLESTR *rgszNames, | 
|  | UINT cNames, | 
|  | LCID lcid, | 
|  | DISPID *rgDispId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Invoke)( | 
|  | ISystemInformation *This, | 
|  | DISPID dispIdMember, | 
|  | REFIID riid, | 
|  | LCID lcid, | 
|  | WORD wFlags, | 
|  | DISPPARAMS *pDispParams, | 
|  | VARIANT *pVarResult, | 
|  | EXCEPINFO *pExcepInfo, | 
|  | UINT *puArgErr); | 
|  |  | 
|  | /*** ISystemInformation methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *get_OemHardwareSupportLink)( | 
|  | ISystemInformation *This, | 
|  | BSTR *retval); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *get_RebootRequired)( | 
|  | ISystemInformation *This, | 
|  | VARIANT_BOOL *retval); | 
|  |  | 
|  | END_INTERFACE | 
|  | } ISystemInformationVtbl; | 
|  |  | 
|  | interface ISystemInformation { | 
|  | CONST_VTBL ISystemInformationVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define ISystemInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define ISystemInformation_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define ISystemInformation_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IDispatch methods ***/ | 
|  | #define ISystemInformation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) | 
|  | #define ISystemInformation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) | 
|  | #define ISystemInformation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) | 
|  | #define ISystemInformation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) | 
|  | /*** ISystemInformation methods ***/ | 
|  | #define ISystemInformation_get_OemHardwareSupportLink(This,retval) (This)->lpVtbl->get_OemHardwareSupportLink(This,retval) | 
|  | #define ISystemInformation_get_RebootRequired(This,retval) (This)->lpVtbl->get_RebootRequired(This,retval) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static FORCEINLINE HRESULT ISystemInformation_QueryInterface(ISystemInformation* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static FORCEINLINE ULONG ISystemInformation_AddRef(ISystemInformation* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static FORCEINLINE ULONG ISystemInformation_Release(ISystemInformation* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IDispatch methods ***/ | 
|  | static FORCEINLINE HRESULT ISystemInformation_GetTypeInfoCount(ISystemInformation* This,UINT *pctinfo) { | 
|  | return This->lpVtbl->GetTypeInfoCount(This,pctinfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISystemInformation_GetTypeInfo(ISystemInformation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { | 
|  | return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISystemInformation_GetIDsOfNames(ISystemInformation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { | 
|  | return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISystemInformation_Invoke(ISystemInformation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { | 
|  | return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); | 
|  | } | 
|  | /*** ISystemInformation methods ***/ | 
|  | static FORCEINLINE HRESULT ISystemInformation_get_OemHardwareSupportLink(ISystemInformation* This,BSTR *retval) { | 
|  | return This->lpVtbl->get_OemHardwareSupportLink(This,retval); | 
|  | } | 
|  | static FORCEINLINE HRESULT ISystemInformation_get_RebootRequired(ISystemInformation* This,VARIANT_BOOL *retval) { | 
|  | return This->lpVtbl->get_RebootRequired(This,retval); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __ISystemInformation_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * AutomaticUpdates coclass | 
|  | */ | 
|  |  | 
|  | DEFINE_GUID(CLSID_AutomaticUpdates, 0xbfe18e9c, 0x6d87, 0x4450, 0xb3,0x7c, 0xe0,0x2f,0x0b,0x37,0x38,0x03); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | class DECLSPEC_UUID("bfe18e9c-6d87-4450-b37c-e02f0b373803") AutomaticUpdates; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(AutomaticUpdates, 0xbfe18e9c, 0x6d87, 0x4450, 0xb3,0x7c, 0xe0,0x2f,0x0b,0x37,0x38,0x03) | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | /***************************************************************************** | 
|  | * UpdateInstaller coclass | 
|  | */ | 
|  |  | 
|  | DEFINE_GUID(CLSID_UpdateInstaller, 0xd2e0fe7f, 0xd23e, 0x48e1, 0x93,0xc0, 0x6f,0xa8,0xcc,0x34,0x64,0x74); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | class DECLSPEC_UUID("d2e0fe7f-d23e-48e1-93c0-6fa8cc346474") UpdateInstaller; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(UpdateInstaller, 0xd2e0fe7f, 0xd23e, 0x48e1, 0x93,0xc0, 0x6f,0xa8,0xcc,0x34,0x64,0x74) | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | /***************************************************************************** | 
|  | * UpdateSession coclass | 
|  | */ | 
|  |  | 
|  | DEFINE_GUID(CLSID_UpdateSession, 0x4cb43d7f, 0x7eee, 0x4906, 0x86,0x98, 0x60,0xda,0x1c,0x38,0xf2,0xfe); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | class DECLSPEC_UUID("4cb43d7f-7eee-4906-8698-60da1c38f2fe") UpdateSession; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(UpdateSession, 0x4cb43d7f, 0x7eee, 0x4906, 0x86,0x98, 0x60,0xda,0x1c,0x38,0xf2,0xfe) | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | /***************************************************************************** | 
|  | * SystemInformation coclass | 
|  | */ | 
|  |  | 
|  | DEFINE_GUID(CLSID_SystemInformation, 0xc01b9ba0, 0xbea7, 0x41ba, 0xb6,0x04, 0xd0,0xa3,0x6f,0x46,0x91,0x33); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | class DECLSPEC_UUID("c01b9ba0-bea7-41ba-b604-d0a36f469133") SystemInformation; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(SystemInformation, 0xc01b9ba0, 0xbea7, 0x41ba, 0xb6,0x04, 0xd0,0xa3,0x6f,0x46,0x91,0x33) | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif /* __WUApiLib_LIBRARY_DEFINED__ */ | 
|  | /* Begin additional prototypes for all interfaces */ | 
|  |  | 
|  | ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *); | 
|  | unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *); | 
|  | unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); | 
|  | void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *); | 
|  | ULONG           __RPC_USER HWND_UserSize     (ULONG *, ULONG, HWND *); | 
|  | unsigned char * __RPC_USER HWND_UserMarshal  (ULONG *, unsigned char *, HWND *); | 
|  | unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *); | 
|  | void            __RPC_USER HWND_UserFree     (ULONG *, HWND *); | 
|  | ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *); | 
|  | unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *); | 
|  | unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); | 
|  | void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *); | 
|  |  | 
|  | /* End additional prototypes */ | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif /* __wuapi_h__ */ |