/*** Autogenerated by WIDL 6.4 from include/shobjidl.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __shobjidl_h__ #define __shobjidl_h__ /* Forward declarations */ #ifndef __IContextMenu_FWD_DEFINED__ #define __IContextMenu_FWD_DEFINED__ typedef interface IContextMenu IContextMenu; #ifdef __cplusplus interface IContextMenu; #endif /* __cplusplus */ #endif #ifndef __IContextMenu2_FWD_DEFINED__ #define __IContextMenu2_FWD_DEFINED__ typedef interface IContextMenu2 IContextMenu2; #ifdef __cplusplus interface IContextMenu2; #endif /* __cplusplus */ #endif #ifndef __IContextMenu3_FWD_DEFINED__ #define __IContextMenu3_FWD_DEFINED__ typedef interface IContextMenu3 IContextMenu3; #ifdef __cplusplus interface IContextMenu3; #endif /* __cplusplus */ #endif #ifndef __IExecuteCommand_FWD_DEFINED__ #define __IExecuteCommand_FWD_DEFINED__ typedef interface IExecuteCommand IExecuteCommand; #ifdef __cplusplus interface IExecuteCommand; #endif /* __cplusplus */ #endif #ifndef __IPersistFolder_FWD_DEFINED__ #define __IPersistFolder_FWD_DEFINED__ typedef interface IPersistFolder IPersistFolder; #ifdef __cplusplus interface IPersistFolder; #endif /* __cplusplus */ #endif #ifndef __IRunnableTask_FWD_DEFINED__ #define __IRunnableTask_FWD_DEFINED__ typedef interface IRunnableTask IRunnableTask; #ifdef __cplusplus interface IRunnableTask; #endif /* __cplusplus */ #endif #ifndef __IShellTaskScheduler_FWD_DEFINED__ #define __IShellTaskScheduler_FWD_DEFINED__ typedef interface IShellTaskScheduler IShellTaskScheduler; #ifdef __cplusplus interface IShellTaskScheduler; #endif /* __cplusplus */ #endif #ifndef __IQueryCodePage_FWD_DEFINED__ #define __IQueryCodePage_FWD_DEFINED__ typedef interface IQueryCodePage IQueryCodePage; #ifdef __cplusplus interface IQueryCodePage; #endif /* __cplusplus */ #endif #ifndef __IPersistFolder2_FWD_DEFINED__ #define __IPersistFolder2_FWD_DEFINED__ typedef interface IPersistFolder2 IPersistFolder2; #ifdef __cplusplus interface IPersistFolder2; #endif /* __cplusplus */ #endif #ifndef __IPersistFolder3_FWD_DEFINED__ #define __IPersistFolder3_FWD_DEFINED__ typedef interface IPersistFolder3 IPersistFolder3; #ifdef __cplusplus interface IPersistFolder3; #endif /* __cplusplus */ #endif #ifndef __IPersistIDList_FWD_DEFINED__ #define __IPersistIDList_FWD_DEFINED__ typedef interface IPersistIDList IPersistIDList; #ifdef __cplusplus interface IPersistIDList; #endif /* __cplusplus */ #endif #ifndef __IEnumIDList_FWD_DEFINED__ #define __IEnumIDList_FWD_DEFINED__ typedef interface IEnumIDList IEnumIDList; #ifdef __cplusplus interface IEnumIDList; #endif /* __cplusplus */ #endif #ifndef __IEnumFullIDList_FWD_DEFINED__ #define __IEnumFullIDList_FWD_DEFINED__ typedef interface IEnumFullIDList IEnumFullIDList; #ifdef __cplusplus interface IEnumFullIDList; #endif /* __cplusplus */ #endif #ifndef __IObjectWithFolderEnumMode_FWD_DEFINED__ #define __IObjectWithFolderEnumMode_FWD_DEFINED__ typedef interface IObjectWithFolderEnumMode IObjectWithFolderEnumMode; #ifdef __cplusplus interface IObjectWithFolderEnumMode; #endif /* __cplusplus */ #endif #ifndef __IParseAndCreateItem_FWD_DEFINED__ #define __IParseAndCreateItem_FWD_DEFINED__ typedef interface IParseAndCreateItem IParseAndCreateItem; #ifdef __cplusplus interface IParseAndCreateItem; #endif /* __cplusplus */ #endif #ifndef __IShellFolder_FWD_DEFINED__ #define __IShellFolder_FWD_DEFINED__ typedef interface IShellFolder IShellFolder; #ifdef __cplusplus interface IShellFolder; #endif /* __cplusplus */ #endif #ifndef __IEnumExtraSearch_FWD_DEFINED__ #define __IEnumExtraSearch_FWD_DEFINED__ typedef interface IEnumExtraSearch IEnumExtraSearch; #ifdef __cplusplus interface IEnumExtraSearch; #endif /* __cplusplus */ #endif #ifndef __IShellFolder2_FWD_DEFINED__ #define __IShellFolder2_FWD_DEFINED__ typedef interface IShellFolder2 IShellFolder2; #ifdef __cplusplus interface IShellFolder2; #endif /* __cplusplus */ #endif #ifndef __IFolderViewOptions_FWD_DEFINED__ #define __IFolderViewOptions_FWD_DEFINED__ typedef interface IFolderViewOptions IFolderViewOptions; #ifdef __cplusplus interface IFolderViewOptions; #endif /* __cplusplus */ #endif #ifndef __IShellView_FWD_DEFINED__ #define __IShellView_FWD_DEFINED__ typedef interface IShellView IShellView; #ifdef __cplusplus interface IShellView; #endif /* __cplusplus */ #endif #ifndef __IShellView2_FWD_DEFINED__ #define __IShellView2_FWD_DEFINED__ typedef interface IShellView2 IShellView2; #ifdef __cplusplus interface IShellView2; #endif /* __cplusplus */ #endif #ifndef __IShellView3_FWD_DEFINED__ #define __IShellView3_FWD_DEFINED__ typedef interface IShellView3 IShellView3; #ifdef __cplusplus interface IShellView3; #endif /* __cplusplus */ #endif #ifndef __IFolderView_FWD_DEFINED__ #define __IFolderView_FWD_DEFINED__ typedef interface IFolderView IFolderView; #ifdef __cplusplus interface IFolderView; #endif /* __cplusplus */ #endif #ifndef __ISearchBoxInfo_FWD_DEFINED__ #define __ISearchBoxInfo_FWD_DEFINED__ typedef interface ISearchBoxInfo ISearchBoxInfo; #ifdef __cplusplus interface ISearchBoxInfo; #endif /* __cplusplus */ #endif #ifndef __IFolderView2_FWD_DEFINED__ #define __IFolderView2_FWD_DEFINED__ typedef interface IFolderView2 IFolderView2; #ifdef __cplusplus interface IFolderView2; #endif /* __cplusplus */ #endif #ifndef __IFolderViewSettings_FWD_DEFINED__ #define __IFolderViewSettings_FWD_DEFINED__ typedef interface IFolderViewSettings IFolderViewSettings; #ifdef __cplusplus interface IFolderViewSettings; #endif /* __cplusplus */ #endif #ifndef __IPreviewHandlerVisuals_FWD_DEFINED__ #define __IPreviewHandlerVisuals_FWD_DEFINED__ typedef interface IPreviewHandlerVisuals IPreviewHandlerVisuals; #ifdef __cplusplus interface IPreviewHandlerVisuals; #endif /* __cplusplus */ #endif #ifndef __IVisualProperties_FWD_DEFINED__ #define __IVisualProperties_FWD_DEFINED__ typedef interface IVisualProperties IVisualProperties; #ifdef __cplusplus interface IVisualProperties; #endif /* __cplusplus */ #endif #ifndef __ICommDlgBrowser_FWD_DEFINED__ #define __ICommDlgBrowser_FWD_DEFINED__ typedef interface ICommDlgBrowser ICommDlgBrowser; #ifdef __cplusplus interface ICommDlgBrowser; #endif /* __cplusplus */ #endif #ifndef __ICommDlgBrowser2_FWD_DEFINED__ #define __ICommDlgBrowser2_FWD_DEFINED__ typedef interface ICommDlgBrowser2 ICommDlgBrowser2; #ifdef __cplusplus interface ICommDlgBrowser2; #endif /* __cplusplus */ #endif #ifndef __ICommDlgBrowser3_FWD_DEFINED__ #define __ICommDlgBrowser3_FWD_DEFINED__ typedef interface ICommDlgBrowser3 ICommDlgBrowser3; #ifdef __cplusplus interface ICommDlgBrowser3; #endif /* __cplusplus */ #endif #ifndef __IColumnManager_FWD_DEFINED__ #define __IColumnManager_FWD_DEFINED__ typedef interface IColumnManager IColumnManager; #ifdef __cplusplus interface IColumnManager; #endif /* __cplusplus */ #endif #ifndef __IFolderFilterSite_FWD_DEFINED__ #define __IFolderFilterSite_FWD_DEFINED__ typedef interface IFolderFilterSite IFolderFilterSite; #ifdef __cplusplus interface IFolderFilterSite; #endif /* __cplusplus */ #endif #ifndef __IFolderFilter_FWD_DEFINED__ #define __IFolderFilter_FWD_DEFINED__ typedef interface IFolderFilter IFolderFilter; #ifdef __cplusplus interface IFolderFilter; #endif /* __cplusplus */ #endif #ifndef __IInputObjectSite_FWD_DEFINED__ #define __IInputObjectSite_FWD_DEFINED__ typedef interface IInputObjectSite IInputObjectSite; #ifdef __cplusplus interface IInputObjectSite; #endif /* __cplusplus */ #endif #ifndef __IInputObject_FWD_DEFINED__ #define __IInputObject_FWD_DEFINED__ typedef interface IInputObject IInputObject; #ifdef __cplusplus interface IInputObject; #endif /* __cplusplus */ #endif #ifndef __IInputObject2_FWD_DEFINED__ #define __IInputObject2_FWD_DEFINED__ typedef interface IInputObject2 IInputObject2; #ifdef __cplusplus interface IInputObject2; #endif /* __cplusplus */ #endif #ifndef __IShellIcon_FWD_DEFINED__ #define __IShellIcon_FWD_DEFINED__ typedef interface IShellIcon IShellIcon; #ifdef __cplusplus interface IShellIcon; #endif /* __cplusplus */ #endif #ifndef __IShellBrowser_FWD_DEFINED__ #define __IShellBrowser_FWD_DEFINED__ typedef interface IShellBrowser IShellBrowser; #ifdef __cplusplus interface IShellBrowser; #endif /* __cplusplus */ #endif #ifndef __IProfferService_FWD_DEFINED__ #define __IProfferService_FWD_DEFINED__ typedef interface IProfferService IProfferService; #ifdef __cplusplus interface IProfferService; #endif /* __cplusplus */ #endif #ifndef __IShellItem_FWD_DEFINED__ #define __IShellItem_FWD_DEFINED__ typedef interface IShellItem IShellItem; #ifdef __cplusplus interface IShellItem; #endif /* __cplusplus */ #endif #ifndef __IShellItem2_FWD_DEFINED__ #define __IShellItem2_FWD_DEFINED__ typedef interface IShellItem2 IShellItem2; #ifdef __cplusplus interface IShellItem2; #endif /* __cplusplus */ #endif #ifndef __IShellItemImageFactory_FWD_DEFINED__ #define __IShellItemImageFactory_FWD_DEFINED__ typedef interface IShellItemImageFactory IShellItemImageFactory; #ifdef __cplusplus interface IShellItemImageFactory; #endif /* __cplusplus */ #endif #ifndef __IUserAccountChangeCallback_FWD_DEFINED__ #define __IUserAccountChangeCallback_FWD_DEFINED__ typedef interface IUserAccountChangeCallback IUserAccountChangeCallback; #ifdef __cplusplus interface IUserAccountChangeCallback; #endif /* __cplusplus */ #endif #ifndef __IEnumShellItems_FWD_DEFINED__ #define __IEnumShellItems_FWD_DEFINED__ typedef interface IEnumShellItems IEnumShellItems; #ifdef __cplusplus interface IEnumShellItems; #endif /* __cplusplus */ #endif #ifndef __ITransferAdviseSink_FWD_DEFINED__ #define __ITransferAdviseSink_FWD_DEFINED__ typedef interface ITransferAdviseSink ITransferAdviseSink; #ifdef __cplusplus interface ITransferAdviseSink; #endif /* __cplusplus */ #endif #ifndef __ITransferSource_FWD_DEFINED__ #define __ITransferSource_FWD_DEFINED__ typedef interface ITransferSource ITransferSource; #ifdef __cplusplus interface ITransferSource; #endif /* __cplusplus */ #endif #ifndef __IEnumResources_FWD_DEFINED__ #define __IEnumResources_FWD_DEFINED__ typedef interface IEnumResources IEnumResources; #ifdef __cplusplus interface IEnumResources; #endif /* __cplusplus */ #endif #ifndef __IShellItemResources_FWD_DEFINED__ #define __IShellItemResources_FWD_DEFINED__ typedef interface IShellItemResources IShellItemResources; #ifdef __cplusplus interface IShellItemResources; #endif /* __cplusplus */ #endif #ifndef __ITransferDestination_FWD_DEFINED__ #define __ITransferDestination_FWD_DEFINED__ typedef interface ITransferDestination ITransferDestination; #ifdef __cplusplus interface ITransferDestination; #endif /* __cplusplus */ #endif #ifndef __IStreamAsync_FWD_DEFINED__ #define __IStreamAsync_FWD_DEFINED__ typedef interface IStreamAsync IStreamAsync; #ifdef __cplusplus interface IStreamAsync; #endif /* __cplusplus */ #endif #ifndef __IStreamUnbufferedInfo_FWD_DEFINED__ #define __IStreamUnbufferedInfo_FWD_DEFINED__ typedef interface IStreamUnbufferedInfo IStreamUnbufferedInfo; #ifdef __cplusplus interface IStreamUnbufferedInfo; #endif /* __cplusplus */ #endif #ifndef __IFileOperationProgressSink_FWD_DEFINED__ #define __IFileOperationProgressSink_FWD_DEFINED__ typedef interface IFileOperationProgressSink IFileOperationProgressSink; #ifdef __cplusplus interface IFileOperationProgressSink; #endif /* __cplusplus */ #endif #ifndef __IShellItemArray_FWD_DEFINED__ #define __IShellItemArray_FWD_DEFINED__ typedef interface IShellItemArray IShellItemArray; #ifdef __cplusplus interface IShellItemArray; #endif /* __cplusplus */ #endif #ifndef __IInitializeWithItem_FWD_DEFINED__ #define __IInitializeWithItem_FWD_DEFINED__ typedef interface IInitializeWithItem IInitializeWithItem; #ifdef __cplusplus interface IInitializeWithItem; #endif /* __cplusplus */ #endif #ifndef __IObjectWithSelection_FWD_DEFINED__ #define __IObjectWithSelection_FWD_DEFINED__ typedef interface IObjectWithSelection IObjectWithSelection; #ifdef __cplusplus interface IObjectWithSelection; #endif /* __cplusplus */ #endif #ifndef __IObjectWithBackReferences_FWD_DEFINED__ #define __IObjectWithBackReferences_FWD_DEFINED__ typedef interface IObjectWithBackReferences IObjectWithBackReferences; #ifdef __cplusplus interface IObjectWithBackReferences; #endif /* __cplusplus */ #endif #ifndef __IPropertyUI_FWD_DEFINED__ #define __IPropertyUI_FWD_DEFINED__ typedef interface IPropertyUI IPropertyUI; #ifdef __cplusplus interface IPropertyUI; #endif /* __cplusplus */ #endif #ifndef __ICategoryProvider_FWD_DEFINED__ #define __ICategoryProvider_FWD_DEFINED__ typedef interface ICategoryProvider ICategoryProvider; #ifdef __cplusplus interface ICategoryProvider; #endif /* __cplusplus */ #endif #ifndef __ICategorizer_FWD_DEFINED__ #define __ICategorizer_FWD_DEFINED__ typedef interface ICategorizer ICategorizer; #ifdef __cplusplus interface ICategorizer; #endif /* __cplusplus */ #endif #ifndef __IDropTargetHelper_FWD_DEFINED__ #define __IDropTargetHelper_FWD_DEFINED__ typedef interface IDropTargetHelper IDropTargetHelper; #ifdef __cplusplus interface IDropTargetHelper; #endif /* __cplusplus */ #endif #ifndef __IDragSourceHelper_FWD_DEFINED__ #define __IDragSourceHelper_FWD_DEFINED__ typedef interface IDragSourceHelper IDragSourceHelper; #ifdef __cplusplus interface IDragSourceHelper; #endif /* __cplusplus */ #endif #ifndef __IDragSourceHelper2_FWD_DEFINED__ #define __IDragSourceHelper2_FWD_DEFINED__ typedef interface IDragSourceHelper2 IDragSourceHelper2; #ifdef __cplusplus interface IDragSourceHelper2; #endif /* __cplusplus */ #endif #ifndef __IShellLinkA_FWD_DEFINED__ #define __IShellLinkA_FWD_DEFINED__ typedef interface IShellLinkA IShellLinkA; #ifdef __cplusplus interface IShellLinkA; #endif /* __cplusplus */ #endif #ifndef __IShellLinkW_FWD_DEFINED__ #define __IShellLinkW_FWD_DEFINED__ typedef interface IShellLinkW IShellLinkW; #ifdef __cplusplus interface IShellLinkW; #endif /* __cplusplus */ #endif #ifndef __IShellLinkDataList_FWD_DEFINED__ #define __IShellLinkDataList_FWD_DEFINED__ typedef interface IShellLinkDataList IShellLinkDataList; #ifdef __cplusplus interface IShellLinkDataList; #endif /* __cplusplus */ #endif #ifndef __IResolveShellLink_FWD_DEFINED__ #define __IResolveShellLink_FWD_DEFINED__ typedef interface IResolveShellLink IResolveShellLink; #ifdef __cplusplus interface IResolveShellLink; #endif /* __cplusplus */ #endif #ifndef __IActionProgressDialog_FWD_DEFINED__ #define __IActionProgressDialog_FWD_DEFINED__ typedef interface IActionProgressDialog IActionProgressDialog; #ifdef __cplusplus interface IActionProgressDialog; #endif /* __cplusplus */ #endif #ifndef __IHWEventHandler_FWD_DEFINED__ #define __IHWEventHandler_FWD_DEFINED__ typedef interface IHWEventHandler IHWEventHandler; #ifdef __cplusplus interface IHWEventHandler; #endif /* __cplusplus */ #endif #ifndef __IHWEventHandler2_FWD_DEFINED__ #define __IHWEventHandler2_FWD_DEFINED__ typedef interface IHWEventHandler2 IHWEventHandler2; #ifdef __cplusplus interface IHWEventHandler2; #endif /* __cplusplus */ #endif #ifndef __IQueryCancelAutoPlay_FWD_DEFINED__ #define __IQueryCancelAutoPlay_FWD_DEFINED__ typedef interface IQueryCancelAutoPlay IQueryCancelAutoPlay; #ifdef __cplusplus interface IQueryCancelAutoPlay; #endif /* __cplusplus */ #endif #ifndef __IDynamicHWHandler_FWD_DEFINED__ #define __IDynamicHWHandler_FWD_DEFINED__ typedef interface IDynamicHWHandler IDynamicHWHandler; #ifdef __cplusplus interface IDynamicHWHandler; #endif /* __cplusplus */ #endif #ifndef __IActionProgress_FWD_DEFINED__ #define __IActionProgress_FWD_DEFINED__ typedef interface IActionProgress IActionProgress; #ifdef __cplusplus interface IActionProgress; #endif /* __cplusplus */ #endif #ifndef __IShellExtInit_FWD_DEFINED__ #define __IShellExtInit_FWD_DEFINED__ typedef interface IShellExtInit IShellExtInit; #ifdef __cplusplus interface IShellExtInit; #endif /* __cplusplus */ #endif #ifndef __IShellPropSheetExt_FWD_DEFINED__ #define __IShellPropSheetExt_FWD_DEFINED__ typedef interface IShellPropSheetExt IShellPropSheetExt; #ifdef __cplusplus interface IShellPropSheetExt; #endif /* __cplusplus */ #endif #ifndef __IRemoteComputer_FWD_DEFINED__ #define __IRemoteComputer_FWD_DEFINED__ typedef interface IRemoteComputer IRemoteComputer; #ifdef __cplusplus interface IRemoteComputer; #endif /* __cplusplus */ #endif #ifndef __IQueryContinue_FWD_DEFINED__ #define __IQueryContinue_FWD_DEFINED__ typedef interface IQueryContinue IQueryContinue; #ifdef __cplusplus interface IQueryContinue; #endif /* __cplusplus */ #endif #ifndef __IObjectWithCancelEvent_FWD_DEFINED__ #define __IObjectWithCancelEvent_FWD_DEFINED__ typedef interface IObjectWithCancelEvent IObjectWithCancelEvent; #ifdef __cplusplus interface IObjectWithCancelEvent; #endif /* __cplusplus */ #endif #ifndef __IUserNotification_FWD_DEFINED__ #define __IUserNotification_FWD_DEFINED__ typedef interface IUserNotification IUserNotification; #ifdef __cplusplus interface IUserNotification; #endif /* __cplusplus */ #endif #ifndef __IUserNotificationCallback_FWD_DEFINED__ #define __IUserNotificationCallback_FWD_DEFINED__ typedef interface IUserNotificationCallback IUserNotificationCallback; #ifdef __cplusplus interface IUserNotificationCallback; #endif /* __cplusplus */ #endif #ifndef __IUserNotification2_FWD_DEFINED__ #define __IUserNotification2_FWD_DEFINED__ typedef interface IUserNotification2 IUserNotification2; #ifdef __cplusplus interface IUserNotification2; #endif /* __cplusplus */ #endif #ifndef __IItemNameLimits_FWD_DEFINED__ #define __IItemNameLimits_FWD_DEFINED__ typedef interface IItemNameLimits IItemNameLimits; #ifdef __cplusplus interface IItemNameLimits; #endif /* __cplusplus */ #endif #ifndef __ISearchFolderItemFactory_FWD_DEFINED__ #define __ISearchFolderItemFactory_FWD_DEFINED__ typedef interface ISearchFolderItemFactory ISearchFolderItemFactory; #ifdef __cplusplus interface ISearchFolderItemFactory; #endif /* __cplusplus */ #endif #ifndef __IExtractImage_FWD_DEFINED__ #define __IExtractImage_FWD_DEFINED__ typedef interface IExtractImage IExtractImage; #ifdef __cplusplus interface IExtractImage; #endif /* __cplusplus */ #endif #ifndef __IExtractImage2_FWD_DEFINED__ #define __IExtractImage2_FWD_DEFINED__ typedef interface IExtractImage2 IExtractImage2; #ifdef __cplusplus interface IExtractImage2; #endif /* __cplusplus */ #endif #ifndef __IThumbnailHandlerFactory_FWD_DEFINED__ #define __IThumbnailHandlerFactory_FWD_DEFINED__ typedef interface IThumbnailHandlerFactory IThumbnailHandlerFactory; #ifdef __cplusplus interface IThumbnailHandlerFactory; #endif /* __cplusplus */ #endif #ifndef __IParentAndItem_FWD_DEFINED__ #define __IParentAndItem_FWD_DEFINED__ typedef interface IParentAndItem IParentAndItem; #ifdef __cplusplus interface IParentAndItem; #endif /* __cplusplus */ #endif #ifndef __IDockingWindow_FWD_DEFINED__ #define __IDockingWindow_FWD_DEFINED__ typedef interface IDockingWindow IDockingWindow; #ifdef __cplusplus interface IDockingWindow; #endif /* __cplusplus */ #endif #ifndef __IDeskBand_FWD_DEFINED__ #define __IDeskBand_FWD_DEFINED__ typedef interface IDeskBand IDeskBand; #ifdef __cplusplus interface IDeskBand; #endif /* __cplusplus */ #endif #ifndef __IDeskBandInfo_FWD_DEFINED__ #define __IDeskBandInfo_FWD_DEFINED__ typedef interface IDeskBandInfo IDeskBandInfo; #ifdef __cplusplus interface IDeskBandInfo; #endif /* __cplusplus */ #endif #ifndef __IDeskBand2_FWD_DEFINED__ #define __IDeskBand2_FWD_DEFINED__ typedef interface IDeskBand2 IDeskBand2; #ifdef __cplusplus interface IDeskBand2; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList_FWD_DEFINED__ #define __ITaskbarList_FWD_DEFINED__ typedef interface ITaskbarList ITaskbarList; #ifdef __cplusplus interface ITaskbarList; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList2_FWD_DEFINED__ #define __ITaskbarList2_FWD_DEFINED__ typedef interface ITaskbarList2 ITaskbarList2; #ifdef __cplusplus interface ITaskbarList2; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList3_FWD_DEFINED__ #define __ITaskbarList3_FWD_DEFINED__ typedef interface ITaskbarList3 ITaskbarList3; #ifdef __cplusplus interface ITaskbarList3; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList4_FWD_DEFINED__ #define __ITaskbarList4_FWD_DEFINED__ typedef interface ITaskbarList4 ITaskbarList4; #ifdef __cplusplus interface ITaskbarList4; #endif /* __cplusplus */ #endif #ifndef __IStartMenuPinnedList_FWD_DEFINED__ #define __IStartMenuPinnedList_FWD_DEFINED__ typedef interface IStartMenuPinnedList IStartMenuPinnedList; #ifdef __cplusplus interface IStartMenuPinnedList; #endif /* __cplusplus */ #endif #ifndef __ICDBurn_FWD_DEFINED__ #define __ICDBurn_FWD_DEFINED__ typedef interface ICDBurn ICDBurn; #ifdef __cplusplus interface ICDBurn; #endif /* __cplusplus */ #endif #ifndef __IWizardSite_FWD_DEFINED__ #define __IWizardSite_FWD_DEFINED__ typedef interface IWizardSite IWizardSite; #ifdef __cplusplus interface IWizardSite; #endif /* __cplusplus */ #endif #ifndef __IWizardExtension_FWD_DEFINED__ #define __IWizardExtension_FWD_DEFINED__ typedef interface IWizardExtension IWizardExtension; #ifdef __cplusplus interface IWizardExtension; #endif /* __cplusplus */ #endif #ifndef __IWebWizardExtension_FWD_DEFINED__ #define __IWebWizardExtension_FWD_DEFINED__ typedef interface IWebWizardExtension IWebWizardExtension; #ifdef __cplusplus interface IWebWizardExtension; #endif /* __cplusplus */ #endif #ifndef __IPublishingWizard_FWD_DEFINED__ #define __IPublishingWizard_FWD_DEFINED__ typedef interface IPublishingWizard IPublishingWizard; #ifdef __cplusplus interface IPublishingWizard; #endif /* __cplusplus */ #endif #ifndef __IFolderViewHost_FWD_DEFINED__ #define __IFolderViewHost_FWD_DEFINED__ typedef interface IFolderViewHost IFolderViewHost; #ifdef __cplusplus interface IFolderViewHost; #endif /* __cplusplus */ #endif #ifndef __IExplorerBrowserEvents_FWD_DEFINED__ #define __IExplorerBrowserEvents_FWD_DEFINED__ typedef interface IExplorerBrowserEvents IExplorerBrowserEvents; #ifdef __cplusplus interface IExplorerBrowserEvents; #endif /* __cplusplus */ #endif #ifndef __IExplorerBrowser_FWD_DEFINED__ #define __IExplorerBrowser_FWD_DEFINED__ typedef interface IExplorerBrowser IExplorerBrowser; #ifdef __cplusplus interface IExplorerBrowser; #endif /* __cplusplus */ #endif #ifndef __IAccessibleObject_FWD_DEFINED__ #define __IAccessibleObject_FWD_DEFINED__ typedef interface IAccessibleObject IAccessibleObject; #ifdef __cplusplus interface IAccessibleObject; #endif /* __cplusplus */ #endif #ifndef __IResultsFolder_FWD_DEFINED__ #define __IResultsFolder_FWD_DEFINED__ typedef interface IResultsFolder IResultsFolder; #ifdef __cplusplus interface IResultsFolder; #endif /* __cplusplus */ #endif #ifndef __IEnumObjects_FWD_DEFINED__ #define __IEnumObjects_FWD_DEFINED__ typedef interface IEnumObjects IEnumObjects; #ifdef __cplusplus interface IEnumObjects; #endif /* __cplusplus */ #endif #ifndef __IOperationsProgressDialog_FWD_DEFINED__ #define __IOperationsProgressDialog_FWD_DEFINED__ typedef interface IOperationsProgressDialog IOperationsProgressDialog; #ifdef __cplusplus interface IOperationsProgressDialog; #endif /* __cplusplus */ #endif #ifndef __IIOCancelInformation_FWD_DEFINED__ #define __IIOCancelInformation_FWD_DEFINED__ typedef interface IIOCancelInformation IIOCancelInformation; #ifdef __cplusplus interface IIOCancelInformation; #endif /* __cplusplus */ #endif #ifndef __IFileOperation_FWD_DEFINED__ #define __IFileOperation_FWD_DEFINED__ typedef interface IFileOperation IFileOperation; #ifdef __cplusplus interface IFileOperation; #endif /* __cplusplus */ #endif #ifndef __IObjectProvider_FWD_DEFINED__ #define __IObjectProvider_FWD_DEFINED__ typedef interface IObjectProvider IObjectProvider; #ifdef __cplusplus interface IObjectProvider; #endif /* __cplusplus */ #endif #ifndef __INamespaceWalkCB_FWD_DEFINED__ #define __INamespaceWalkCB_FWD_DEFINED__ typedef interface INamespaceWalkCB INamespaceWalkCB; #ifdef __cplusplus interface INamespaceWalkCB; #endif /* __cplusplus */ #endif #ifndef __INamespaceWalkCB2_FWD_DEFINED__ #define __INamespaceWalkCB2_FWD_DEFINED__ typedef interface INamespaceWalkCB2 INamespaceWalkCB2; #ifdef __cplusplus interface INamespaceWalkCB2; #endif /* __cplusplus */ #endif #ifndef __INamespaceWalk_FWD_DEFINED__ #define __INamespaceWalk_FWD_DEFINED__ typedef interface INamespaceWalk INamespaceWalk; #ifdef __cplusplus interface INamespaceWalk; #endif /* __cplusplus */ #endif #ifndef __IAutoCompleteDropDown_FWD_DEFINED__ #define __IAutoCompleteDropDown_FWD_DEFINED__ typedef interface IAutoCompleteDropDown IAutoCompleteDropDown; #ifdef __cplusplus interface IAutoCompleteDropDown; #endif /* __cplusplus */ #endif #ifndef __IBandSite_FWD_DEFINED__ #define __IBandSite_FWD_DEFINED__ typedef interface IBandSite IBandSite; #ifdef __cplusplus interface IBandSite; #endif /* __cplusplus */ #endif #ifndef __IModalWindow_FWD_DEFINED__ #define __IModalWindow_FWD_DEFINED__ typedef interface IModalWindow IModalWindow; #ifdef __cplusplus interface IModalWindow; #endif /* __cplusplus */ #endif #ifndef __ICDBurnExt_FWD_DEFINED__ #define __ICDBurnExt_FWD_DEFINED__ typedef interface ICDBurnExt ICDBurnExt; #ifdef __cplusplus interface ICDBurnExt; #endif /* __cplusplus */ #endif #ifndef __IContextMenuSite_FWD_DEFINED__ #define __IContextMenuSite_FWD_DEFINED__ typedef interface IContextMenuSite IContextMenuSite; #ifdef __cplusplus interface IContextMenuSite; #endif /* __cplusplus */ #endif #ifndef __IEnumReadyCallback_FWD_DEFINED__ #define __IEnumReadyCallback_FWD_DEFINED__ typedef interface IEnumReadyCallback IEnumReadyCallback; #ifdef __cplusplus interface IEnumReadyCallback; #endif /* __cplusplus */ #endif #ifndef __IEnumerableView_FWD_DEFINED__ #define __IEnumerableView_FWD_DEFINED__ typedef interface IEnumerableView IEnumerableView; #ifdef __cplusplus interface IEnumerableView; #endif /* __cplusplus */ #endif #ifndef __IInsertItem_FWD_DEFINED__ #define __IInsertItem_FWD_DEFINED__ typedef interface IInsertItem IInsertItem; #ifdef __cplusplus interface IInsertItem; #endif /* __cplusplus */ #endif #ifndef __IMenuBand_FWD_DEFINED__ #define __IMenuBand_FWD_DEFINED__ typedef interface IMenuBand IMenuBand; #ifdef __cplusplus interface IMenuBand; #endif /* __cplusplus */ #endif #ifndef __IFolderBandPriv_FWD_DEFINED__ #define __IFolderBandPriv_FWD_DEFINED__ typedef interface IFolderBandPriv IFolderBandPriv; #ifdef __cplusplus interface IFolderBandPriv; #endif /* __cplusplus */ #endif #ifndef __IRegTreeItem_FWD_DEFINED__ #define __IRegTreeItem_FWD_DEFINED__ typedef interface IRegTreeItem IRegTreeItem; #ifdef __cplusplus interface IRegTreeItem; #endif /* __cplusplus */ #endif #ifndef __IImageRecompress_FWD_DEFINED__ #define __IImageRecompress_FWD_DEFINED__ typedef interface IImageRecompress IImageRecompress; #ifdef __cplusplus interface IImageRecompress; #endif /* __cplusplus */ #endif #ifndef __IDeskBar_FWD_DEFINED__ #define __IDeskBar_FWD_DEFINED__ typedef interface IDeskBar IDeskBar; #ifdef __cplusplus interface IDeskBar; #endif /* __cplusplus */ #endif #ifndef __IMenuPopup_FWD_DEFINED__ #define __IMenuPopup_FWD_DEFINED__ typedef interface IMenuPopup IMenuPopup; #ifdef __cplusplus interface IMenuPopup; #endif /* __cplusplus */ #endif #ifndef __IFileIsInUse_FWD_DEFINED__ #define __IFileIsInUse_FWD_DEFINED__ typedef interface IFileIsInUse IFileIsInUse; #ifdef __cplusplus interface IFileIsInUse; #endif /* __cplusplus */ #endif #ifndef __IFileDialogEvents_FWD_DEFINED__ #define __IFileDialogEvents_FWD_DEFINED__ typedef interface IFileDialogEvents IFileDialogEvents; #ifdef __cplusplus interface IFileDialogEvents; #endif /* __cplusplus */ #endif #ifndef __IFileDialog_FWD_DEFINED__ #define __IFileDialog_FWD_DEFINED__ typedef interface IFileDialog IFileDialog; #ifdef __cplusplus interface IFileDialog; #endif /* __cplusplus */ #endif #ifndef __IFileSaveDialog_FWD_DEFINED__ #define __IFileSaveDialog_FWD_DEFINED__ typedef interface IFileSaveDialog IFileSaveDialog; #ifdef __cplusplus interface IFileSaveDialog; #endif /* __cplusplus */ #endif #ifndef __IFileOpenDialog_FWD_DEFINED__ #define __IFileOpenDialog_FWD_DEFINED__ typedef interface IFileOpenDialog IFileOpenDialog; #ifdef __cplusplus interface IFileOpenDialog; #endif /* __cplusplus */ #endif #ifndef __IFileDialogCustomize_FWD_DEFINED__ #define __IFileDialogCustomize_FWD_DEFINED__ typedef interface IFileDialogCustomize IFileDialogCustomize; #ifdef __cplusplus interface IFileDialogCustomize; #endif /* __cplusplus */ #endif #ifndef __IFileDialogControlEvents_FWD_DEFINED__ #define __IFileDialogControlEvents_FWD_DEFINED__ typedef interface IFileDialogControlEvents IFileDialogControlEvents; #ifdef __cplusplus interface IFileDialogControlEvents; #endif /* __cplusplus */ #endif #ifndef __IFileDialog2_FWD_DEFINED__ #define __IFileDialog2_FWD_DEFINED__ typedef interface IFileDialog2 IFileDialog2; #ifdef __cplusplus interface IFileDialog2; #endif /* __cplusplus */ #endif #ifndef __IApplicationAssociationRegistration_FWD_DEFINED__ #define __IApplicationAssociationRegistration_FWD_DEFINED__ typedef interface IApplicationAssociationRegistration IApplicationAssociationRegistration; #ifdef __cplusplus interface IApplicationAssociationRegistration; #endif /* __cplusplus */ #endif #ifndef __IApplicationAssociationRegistrationUI_FWD_DEFINED__ #define __IApplicationAssociationRegistrationUI_FWD_DEFINED__ typedef interface IApplicationAssociationRegistrationUI IApplicationAssociationRegistrationUI; #ifdef __cplusplus interface IApplicationAssociationRegistrationUI; #endif /* __cplusplus */ #endif #ifndef __IDelegateFolder_FWD_DEFINED__ #define __IDelegateFolder_FWD_DEFINED__ typedef interface IDelegateFolder IDelegateFolder; #ifdef __cplusplus interface IDelegateFolder; #endif /* __cplusplus */ #endif #ifndef __IBrowserFrameOptions_FWD_DEFINED__ #define __IBrowserFrameOptions_FWD_DEFINED__ typedef interface IBrowserFrameOptions IBrowserFrameOptions; #ifdef __cplusplus interface IBrowserFrameOptions; #endif /* __cplusplus */ #endif #ifndef __INewWindowManager_FWD_DEFINED__ #define __INewWindowManager_FWD_DEFINED__ typedef interface INewWindowManager INewWindowManager; #ifdef __cplusplus interface INewWindowManager; #endif /* __cplusplus */ #endif #ifndef __IAttachmentExecute_FWD_DEFINED__ #define __IAttachmentExecute_FWD_DEFINED__ typedef interface IAttachmentExecute IAttachmentExecute; #ifdef __cplusplus interface IAttachmentExecute; #endif /* __cplusplus */ #endif #ifndef __IShellMenuCallback_FWD_DEFINED__ #define __IShellMenuCallback_FWD_DEFINED__ typedef interface IShellMenuCallback IShellMenuCallback; #ifdef __cplusplus interface IShellMenuCallback; #endif /* __cplusplus */ #endif #ifndef __IShellMenu_FWD_DEFINED__ #define __IShellMenu_FWD_DEFINED__ typedef interface IShellMenu IShellMenu; #ifdef __cplusplus interface IShellMenu; #endif /* __cplusplus */ #endif #ifndef __IShellRunDll_FWD_DEFINED__ #define __IShellRunDll_FWD_DEFINED__ typedef interface IShellRunDll IShellRunDll; #ifdef __cplusplus interface IShellRunDll; #endif /* __cplusplus */ #endif #ifndef __IKnownFolder_FWD_DEFINED__ #define __IKnownFolder_FWD_DEFINED__ typedef interface IKnownFolder IKnownFolder; #ifdef __cplusplus interface IKnownFolder; #endif /* __cplusplus */ #endif #ifndef __IKnownFolderManager_FWD_DEFINED__ #define __IKnownFolderManager_FWD_DEFINED__ typedef interface IKnownFolderManager IKnownFolderManager; #ifdef __cplusplus interface IKnownFolderManager; #endif /* __cplusplus */ #endif #ifndef __ISharingConfigurationManager_FWD_DEFINED__ #define __ISharingConfigurationManager_FWD_DEFINED__ typedef interface ISharingConfigurationManager ISharingConfigurationManager; #ifdef __cplusplus interface ISharingConfigurationManager; #endif /* __cplusplus */ #endif #ifndef __IPreviousVersionsInfo_FWD_DEFINED__ #define __IPreviousVersionsInfo_FWD_DEFINED__ typedef interface IPreviousVersionsInfo IPreviousVersionsInfo; #ifdef __cplusplus interface IPreviousVersionsInfo; #endif /* __cplusplus */ #endif #ifndef __IRelatedItem_FWD_DEFINED__ #define __IRelatedItem_FWD_DEFINED__ typedef interface IRelatedItem IRelatedItem; #ifdef __cplusplus interface IRelatedItem; #endif /* __cplusplus */ #endif #ifndef __IIdentityName_FWD_DEFINED__ #define __IIdentityName_FWD_DEFINED__ typedef interface IIdentityName IIdentityName; #ifdef __cplusplus interface IIdentityName; #endif /* __cplusplus */ #endif #ifndef __IDelegateItem_FWD_DEFINED__ #define __IDelegateItem_FWD_DEFINED__ typedef interface IDelegateItem IDelegateItem; #ifdef __cplusplus interface IDelegateItem; #endif /* __cplusplus */ #endif #ifndef __ICurrentItem_FWD_DEFINED__ #define __ICurrentItem_FWD_DEFINED__ typedef interface ICurrentItem ICurrentItem; #ifdef __cplusplus interface ICurrentItem; #endif /* __cplusplus */ #endif #ifndef __ITransferMediumItem_FWD_DEFINED__ #define __ITransferMediumItem_FWD_DEFINED__ typedef interface ITransferMediumItem ITransferMediumItem; #ifdef __cplusplus interface ITransferMediumItem; #endif /* __cplusplus */ #endif #ifndef __IUseToBrowseItem_FWD_DEFINED__ #define __IUseToBrowseItem_FWD_DEFINED__ typedef interface IUseToBrowseItem IUseToBrowseItem; #ifdef __cplusplus interface IUseToBrowseItem; #endif /* __cplusplus */ #endif #ifndef __IDisplayItem_FWD_DEFINED__ #define __IDisplayItem_FWD_DEFINED__ typedef interface IDisplayItem IDisplayItem; #ifdef __cplusplus interface IDisplayItem; #endif /* __cplusplus */ #endif #ifndef __IViewStateIdentityItem_FWD_DEFINED__ #define __IViewStateIdentityItem_FWD_DEFINED__ typedef interface IViewStateIdentityItem IViewStateIdentityItem; #ifdef __cplusplus interface IViewStateIdentityItem; #endif /* __cplusplus */ #endif #ifndef __IPreviewItem_FWD_DEFINED__ #define __IPreviewItem_FWD_DEFINED__ typedef interface IPreviewItem IPreviewItem; #ifdef __cplusplus interface IPreviewItem; #endif /* __cplusplus */ #endif #ifndef __IDestinationStreamFactory_FWD_DEFINED__ #define __IDestinationStreamFactory_FWD_DEFINED__ typedef interface IDestinationStreamFactory IDestinationStreamFactory; #ifdef __cplusplus interface IDestinationStreamFactory; #endif /* __cplusplus */ #endif #ifndef __INewMenuClient_FWD_DEFINED__ #define __INewMenuClient_FWD_DEFINED__ typedef interface INewMenuClient INewMenuClient; #ifdef __cplusplus interface INewMenuClient; #endif /* __cplusplus */ #endif #ifndef __IInitializeWithBindCtx_FWD_DEFINED__ #define __IInitializeWithBindCtx_FWD_DEFINED__ typedef interface IInitializeWithBindCtx IInitializeWithBindCtx; #ifdef __cplusplus interface IInitializeWithBindCtx; #endif /* __cplusplus */ #endif #ifndef __IShellItemFilter_FWD_DEFINED__ #define __IShellItemFilter_FWD_DEFINED__ typedef interface IShellItemFilter IShellItemFilter; #ifdef __cplusplus interface IShellItemFilter; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControl_FWD_DEFINED__ #define __INameSpaceTreeControl_FWD_DEFINED__ typedef interface INameSpaceTreeControl INameSpaceTreeControl; #ifdef __cplusplus interface INameSpaceTreeControl; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControl2_FWD_DEFINED__ #define __INameSpaceTreeControl2_FWD_DEFINED__ typedef interface INameSpaceTreeControl2 INameSpaceTreeControl2; #ifdef __cplusplus interface INameSpaceTreeControl2; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlEvents_FWD_DEFINED__ #define __INameSpaceTreeControlEvents_FWD_DEFINED__ typedef interface INameSpaceTreeControlEvents INameSpaceTreeControlEvents; #ifdef __cplusplus interface INameSpaceTreeControlEvents; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlDropHandler_FWD_DEFINED__ #define __INameSpaceTreeControlDropHandler_FWD_DEFINED__ typedef interface INameSpaceTreeControlDropHandler INameSpaceTreeControlDropHandler; #ifdef __cplusplus interface INameSpaceTreeControlDropHandler; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeAccessible_FWD_DEFINED__ #define __INameSpaceTreeAccessible_FWD_DEFINED__ typedef interface INameSpaceTreeAccessible INameSpaceTreeAccessible; #ifdef __cplusplus interface INameSpaceTreeAccessible; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlCustomDraw_FWD_DEFINED__ #define __INameSpaceTreeControlCustomDraw_FWD_DEFINED__ typedef interface INameSpaceTreeControlCustomDraw INameSpaceTreeControlCustomDraw; #ifdef __cplusplus interface INameSpaceTreeControlCustomDraw; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlFolderCapabilities_FWD_DEFINED__ #define __INameSpaceTreeControlFolderCapabilities_FWD_DEFINED__ typedef interface INameSpaceTreeControlFolderCapabilities INameSpaceTreeControlFolderCapabilities; #ifdef __cplusplus interface INameSpaceTreeControlFolderCapabilities; #endif /* __cplusplus */ #endif #ifndef __IPreviewHandler_FWD_DEFINED__ #define __IPreviewHandler_FWD_DEFINED__ typedef interface IPreviewHandler IPreviewHandler; #ifdef __cplusplus interface IPreviewHandler; #endif /* __cplusplus */ #endif #ifndef __IPreviewHandlerFrame_FWD_DEFINED__ #define __IPreviewHandlerFrame_FWD_DEFINED__ typedef interface IPreviewHandlerFrame IPreviewHandlerFrame; #ifdef __cplusplus interface IPreviewHandlerFrame; #endif /* __cplusplus */ #endif #ifndef __ITrayDeskBand_FWD_DEFINED__ #define __ITrayDeskBand_FWD_DEFINED__ typedef interface ITrayDeskBand ITrayDeskBand; #ifdef __cplusplus interface ITrayDeskBand; #endif /* __cplusplus */ #endif #ifndef __IBandHost_FWD_DEFINED__ #define __IBandHost_FWD_DEFINED__ typedef interface IBandHost IBandHost; #ifdef __cplusplus interface IBandHost; #endif /* __cplusplus */ #endif #ifndef __IExplorerPaneVisibility_FWD_DEFINED__ #define __IExplorerPaneVisibility_FWD_DEFINED__ typedef interface IExplorerPaneVisibility IExplorerPaneVisibility; #ifdef __cplusplus interface IExplorerPaneVisibility; #endif /* __cplusplus */ #endif #ifndef __IContextMenuCB_FWD_DEFINED__ #define __IContextMenuCB_FWD_DEFINED__ typedef interface IContextMenuCB IContextMenuCB; #ifdef __cplusplus interface IContextMenuCB; #endif /* __cplusplus */ #endif #ifndef __IDefaultExtractIconInit_FWD_DEFINED__ #define __IDefaultExtractIconInit_FWD_DEFINED__ typedef interface IDefaultExtractIconInit IDefaultExtractIconInit; #ifdef __cplusplus interface IDefaultExtractIconInit; #endif /* __cplusplus */ #endif #ifndef __IExplorerCommand_FWD_DEFINED__ #define __IExplorerCommand_FWD_DEFINED__ typedef interface IExplorerCommand IExplorerCommand; #ifdef __cplusplus interface IExplorerCommand; #endif /* __cplusplus */ #endif #ifndef __IExplorerCommandState_FWD_DEFINED__ #define __IExplorerCommandState_FWD_DEFINED__ typedef interface IExplorerCommandState IExplorerCommandState; #ifdef __cplusplus interface IExplorerCommandState; #endif /* __cplusplus */ #endif #ifndef __IInitializeCommand_FWD_DEFINED__ #define __IInitializeCommand_FWD_DEFINED__ typedef interface IInitializeCommand IInitializeCommand; #ifdef __cplusplus interface IInitializeCommand; #endif /* __cplusplus */ #endif #ifndef __IEnumExplorerCommand_FWD_DEFINED__ #define __IEnumExplorerCommand_FWD_DEFINED__ typedef interface IEnumExplorerCommand IEnumExplorerCommand; #ifdef __cplusplus interface IEnumExplorerCommand; #endif /* __cplusplus */ #endif #ifndef __IExplorerCommandProvider_FWD_DEFINED__ #define __IExplorerCommandProvider_FWD_DEFINED__ typedef interface IExplorerCommandProvider IExplorerCommandProvider; #ifdef __cplusplus interface IExplorerCommandProvider; #endif /* __cplusplus */ #endif #ifndef __IInitializeNetworkFolder_FWD_DEFINED__ #define __IInitializeNetworkFolder_FWD_DEFINED__ typedef interface IInitializeNetworkFolder IInitializeNetworkFolder; #ifdef __cplusplus interface IInitializeNetworkFolder; #endif /* __cplusplus */ #endif #ifndef __IOpenControlPanel_FWD_DEFINED__ #define __IOpenControlPanel_FWD_DEFINED__ typedef interface IOpenControlPanel IOpenControlPanel; #ifdef __cplusplus interface IOpenControlPanel; #endif /* __cplusplus */ #endif #ifndef __IComputerInfoChangeNotify_FWD_DEFINED__ #define __IComputerInfoChangeNotify_FWD_DEFINED__ typedef interface IComputerInfoChangeNotify IComputerInfoChangeNotify; #ifdef __cplusplus interface IComputerInfoChangeNotify; #endif /* __cplusplus */ #endif #ifndef __IFileSystemBindData_FWD_DEFINED__ #define __IFileSystemBindData_FWD_DEFINED__ typedef interface IFileSystemBindData IFileSystemBindData; #ifdef __cplusplus interface IFileSystemBindData; #endif /* __cplusplus */ #endif #ifndef __IFileSystemBindData2_FWD_DEFINED__ #define __IFileSystemBindData2_FWD_DEFINED__ typedef interface IFileSystemBindData2 IFileSystemBindData2; #ifdef __cplusplus interface IFileSystemBindData2; #endif /* __cplusplus */ #endif #ifndef __ICustomDestinationList_FWD_DEFINED__ #define __ICustomDestinationList_FWD_DEFINED__ typedef interface ICustomDestinationList ICustomDestinationList; #ifdef __cplusplus interface ICustomDestinationList; #endif /* __cplusplus */ #endif #ifndef __IApplicationDestinations_FWD_DEFINED__ #define __IApplicationDestinations_FWD_DEFINED__ typedef interface IApplicationDestinations IApplicationDestinations; #ifdef __cplusplus interface IApplicationDestinations; #endif /* __cplusplus */ #endif #ifndef __IApplicationDocumentLists_FWD_DEFINED__ #define __IApplicationDocumentLists_FWD_DEFINED__ typedef interface IApplicationDocumentLists IApplicationDocumentLists; #ifdef __cplusplus interface IApplicationDocumentLists; #endif /* __cplusplus */ #endif #ifndef __IObjectWithAppUserModelID_FWD_DEFINED__ #define __IObjectWithAppUserModelID_FWD_DEFINED__ typedef interface IObjectWithAppUserModelID IObjectWithAppUserModelID; #ifdef __cplusplus interface IObjectWithAppUserModelID; #endif /* __cplusplus */ #endif #ifndef __IObjectWithProgID_FWD_DEFINED__ #define __IObjectWithProgID_FWD_DEFINED__ typedef interface IObjectWithProgID IObjectWithProgID; #ifdef __cplusplus interface IObjectWithProgID; #endif /* __cplusplus */ #endif #ifndef __IUpdateIDList_FWD_DEFINED__ #define __IUpdateIDList_FWD_DEFINED__ typedef interface IUpdateIDList IUpdateIDList; #ifdef __cplusplus interface IUpdateIDList; #endif /* __cplusplus */ #endif #ifndef __IDesktopGadget_FWD_DEFINED__ #define __IDesktopGadget_FWD_DEFINED__ typedef interface IDesktopGadget IDesktopGadget; #ifdef __cplusplus interface IDesktopGadget; #endif /* __cplusplus */ #endif #ifndef __IDesktopWallpaper_FWD_DEFINED__ #define __IDesktopWallpaper_FWD_DEFINED__ typedef interface IDesktopWallpaper IDesktopWallpaper; #ifdef __cplusplus interface IDesktopWallpaper; #endif /* __cplusplus */ #endif #ifndef __IHomeGroup_FWD_DEFINED__ #define __IHomeGroup_FWD_DEFINED__ typedef interface IHomeGroup IHomeGroup; #ifdef __cplusplus interface IHomeGroup; #endif /* __cplusplus */ #endif #ifndef __IInitializeWithPropertyStore_FWD_DEFINED__ #define __IInitializeWithPropertyStore_FWD_DEFINED__ typedef interface IInitializeWithPropertyStore IInitializeWithPropertyStore; #ifdef __cplusplus interface IInitializeWithPropertyStore; #endif /* __cplusplus */ #endif #ifndef __IOpenSearchSource_FWD_DEFINED__ #define __IOpenSearchSource_FWD_DEFINED__ typedef interface IOpenSearchSource IOpenSearchSource; #ifdef __cplusplus interface IOpenSearchSource; #endif /* __cplusplus */ #endif #ifndef __IShellLibrary_FWD_DEFINED__ #define __IShellLibrary_FWD_DEFINED__ typedef interface IShellLibrary IShellLibrary; #ifdef __cplusplus interface IShellLibrary; #endif /* __cplusplus */ #endif #ifndef __IPlaybackManagerEvents_FWD_DEFINED__ #define __IPlaybackManagerEvents_FWD_DEFINED__ typedef interface IPlaybackManagerEvents IPlaybackManagerEvents; #ifdef __cplusplus interface IPlaybackManagerEvents; #endif /* __cplusplus */ #endif #ifndef __IPlaybackManager_FWD_DEFINED__ #define __IPlaybackManager_FWD_DEFINED__ typedef interface IPlaybackManager IPlaybackManager; #ifdef __cplusplus interface IPlaybackManager; #endif /* __cplusplus */ #endif #ifndef __IDefaultFolderMenuInitialize_FWD_DEFINED__ #define __IDefaultFolderMenuInitialize_FWD_DEFINED__ typedef interface IDefaultFolderMenuInitialize IDefaultFolderMenuInitialize; #ifdef __cplusplus interface IDefaultFolderMenuInitialize; #endif /* __cplusplus */ #endif #ifndef __IApplicationActivationManager_FWD_DEFINED__ #define __IApplicationActivationManager_FWD_DEFINED__ typedef interface IApplicationActivationManager IApplicationActivationManager; #ifdef __cplusplus interface IApplicationActivationManager; #endif /* __cplusplus */ #endif #ifndef __DesktopWallpaper_FWD_DEFINED__ #define __DesktopWallpaper_FWD_DEFINED__ #ifdef __cplusplus typedef class DesktopWallpaper DesktopWallpaper; #else typedef struct DesktopWallpaper DesktopWallpaper; #endif /* defined __cplusplus */ #endif /* defined __DesktopWallpaper_FWD_DEFINED__ */ #ifndef __ShellDesktop_FWD_DEFINED__ #define __ShellDesktop_FWD_DEFINED__ #ifdef __cplusplus typedef class ShellDesktop ShellDesktop; #else typedef struct ShellDesktop ShellDesktop; #endif /* defined __cplusplus */ #endif /* defined __ShellDesktop_FWD_DEFINED__ */ #ifndef __ShellFSFolder_FWD_DEFINED__ #define __ShellFSFolder_FWD_DEFINED__ #ifdef __cplusplus typedef class ShellFSFolder ShellFSFolder; #else typedef struct ShellFSFolder ShellFSFolder; #endif /* defined __cplusplus */ #endif /* defined __ShellFSFolder_FWD_DEFINED__ */ #ifndef __NetworkPlaces_FWD_DEFINED__ #define __NetworkPlaces_FWD_DEFINED__ #ifdef __cplusplus typedef class NetworkPlaces NetworkPlaces; #else typedef struct NetworkPlaces NetworkPlaces; #endif /* defined __cplusplus */ #endif /* defined __NetworkPlaces_FWD_DEFINED__ */ #ifndef __ShellLink_FWD_DEFINED__ #define __ShellLink_FWD_DEFINED__ #ifdef __cplusplus typedef class ShellLink ShellLink; #else typedef struct ShellLink ShellLink; #endif /* defined __cplusplus */ #endif /* defined __ShellLink_FWD_DEFINED__ */ #ifndef __QueryCancelAutoPlay_FWD_DEFINED__ #define __QueryCancelAutoPlay_FWD_DEFINED__ #ifdef __cplusplus typedef class QueryCancelAutoPlay QueryCancelAutoPlay; #else typedef struct QueryCancelAutoPlay QueryCancelAutoPlay; #endif /* defined __cplusplus */ #endif /* defined __QueryCancelAutoPlay_FWD_DEFINED__ */ #ifndef __DriveSizeCategorizer_FWD_DEFINED__ #define __DriveSizeCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class DriveSizeCategorizer DriveSizeCategorizer; #else typedef struct DriveSizeCategorizer DriveSizeCategorizer; #endif /* defined __cplusplus */ #endif /* defined __DriveSizeCategorizer_FWD_DEFINED__ */ #ifndef __DriveTypeCategorizer_FWD_DEFINED__ #define __DriveTypeCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class DriveTypeCategorizer DriveTypeCategorizer; #else typedef struct DriveTypeCategorizer DriveTypeCategorizer; #endif /* defined __cplusplus */ #endif /* defined __DriveTypeCategorizer_FWD_DEFINED__ */ #ifndef __FreeSpaceCategorizer_FWD_DEFINED__ #define __FreeSpaceCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class FreeSpaceCategorizer FreeSpaceCategorizer; #else typedef struct FreeSpaceCategorizer FreeSpaceCategorizer; #endif /* defined __cplusplus */ #endif /* defined __FreeSpaceCategorizer_FWD_DEFINED__ */ #ifndef __TimeCategorizer_FWD_DEFINED__ #define __TimeCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class TimeCategorizer TimeCategorizer; #else typedef struct TimeCategorizer TimeCategorizer; #endif /* defined __cplusplus */ #endif /* defined __TimeCategorizer_FWD_DEFINED__ */ #ifndef __SizeCategorizer_FWD_DEFINED__ #define __SizeCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class SizeCategorizer SizeCategorizer; #else typedef struct SizeCategorizer SizeCategorizer; #endif /* defined __cplusplus */ #endif /* defined __SizeCategorizer_FWD_DEFINED__ */ #ifndef __AlphabeticalCategorizer_FWD_DEFINED__ #define __AlphabeticalCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class AlphabeticalCategorizer AlphabeticalCategorizer; #else typedef struct AlphabeticalCategorizer AlphabeticalCategorizer; #endif /* defined __cplusplus */ #endif /* defined __AlphabeticalCategorizer_FWD_DEFINED__ */ #ifndef __MergedCategorizer_FWD_DEFINED__ #define __MergedCategorizer_FWD_DEFINED__ #ifdef __cplusplus typedef class MergedCategorizer MergedCategorizer; #else typedef struct MergedCategorizer MergedCategorizer; #endif /* defined __cplusplus */ #endif /* defined __MergedCategorizer_FWD_DEFINED__ */ #ifndef __ImageProperties_FWD_DEFINED__ #define __ImageProperties_FWD_DEFINED__ #ifdef __cplusplus typedef class ImageProperties ImageProperties; #else typedef struct ImageProperties ImageProperties; #endif /* defined __cplusplus */ #endif /* defined __ImageProperties_FWD_DEFINED__ */ #ifndef __PropertiesUI_FWD_DEFINED__ #define __PropertiesUI_FWD_DEFINED__ #ifdef __cplusplus typedef class PropertiesUI PropertiesUI; #else typedef struct PropertiesUI PropertiesUI; #endif /* defined __cplusplus */ #endif /* defined __PropertiesUI_FWD_DEFINED__ */ #ifndef __UserNotification_FWD_DEFINED__ #define __UserNotification_FWD_DEFINED__ #ifdef __cplusplus typedef class UserNotification UserNotification; #else typedef struct UserNotification UserNotification; #endif /* defined __cplusplus */ #endif /* defined __UserNotification_FWD_DEFINED__ */ #ifndef __CDBurn_FWD_DEFINED__ #define __CDBurn_FWD_DEFINED__ #ifdef __cplusplus typedef class CDBurn CDBurn; #else typedef struct CDBurn CDBurn; #endif /* defined __cplusplus */ #endif /* defined __CDBurn_FWD_DEFINED__ */ #ifndef __TaskbarList_FWD_DEFINED__ #define __TaskbarList_FWD_DEFINED__ #ifdef __cplusplus typedef class TaskbarList TaskbarList; #else typedef struct TaskbarList TaskbarList; #endif /* defined __cplusplus */ #endif /* defined __TaskbarList_FWD_DEFINED__ */ #ifndef __StartMenuPin_FWD_DEFINED__ #define __StartMenuPin_FWD_DEFINED__ #ifdef __cplusplus typedef class StartMenuPin StartMenuPin; #else typedef struct StartMenuPin StartMenuPin; #endif /* defined __cplusplus */ #endif /* defined __StartMenuPin_FWD_DEFINED__ */ #ifndef __WebWizardHost_FWD_DEFINED__ #define __WebWizardHost_FWD_DEFINED__ #ifdef __cplusplus typedef class WebWizardHost WebWizardHost; #else typedef struct WebWizardHost WebWizardHost; #endif /* defined __cplusplus */ #endif /* defined __WebWizardHost_FWD_DEFINED__ */ #ifndef __PublishDropTarget_FWD_DEFINED__ #define __PublishDropTarget_FWD_DEFINED__ #ifdef __cplusplus typedef class PublishDropTarget PublishDropTarget; #else typedef struct PublishDropTarget PublishDropTarget; #endif /* defined __cplusplus */ #endif /* defined __PublishDropTarget_FWD_DEFINED__ */ #ifndef __PublishingWizard_FWD_DEFINED__ #define __PublishingWizard_FWD_DEFINED__ #ifdef __cplusplus typedef class PublishingWizard PublishingWizard; #else typedef struct PublishingWizard PublishingWizard; #endif /* defined __cplusplus */ #endif /* defined __PublishingWizard_FWD_DEFINED__ */ #ifndef __InternetPrintOrdering_FWD_DEFINED__ #define __InternetPrintOrdering_FWD_DEFINED__ #ifdef __cplusplus typedef class InternetPrintOrdering InternetPrintOrdering; #else typedef struct InternetPrintOrdering InternetPrintOrdering; #endif /* defined __cplusplus */ #endif /* defined __InternetPrintOrdering_FWD_DEFINED__ */ #ifndef __FolderViewHost_FWD_DEFINED__ #define __FolderViewHost_FWD_DEFINED__ #ifdef __cplusplus typedef class FolderViewHost FolderViewHost; #else typedef struct FolderViewHost FolderViewHost; #endif /* defined __cplusplus */ #endif /* defined __FolderViewHost_FWD_DEFINED__ */ #ifndef __ExplorerBrowser_FWD_DEFINED__ #define __ExplorerBrowser_FWD_DEFINED__ #ifdef __cplusplus typedef class ExplorerBrowser ExplorerBrowser; #else typedef struct ExplorerBrowser ExplorerBrowser; #endif /* defined __cplusplus */ #endif /* defined __ExplorerBrowser_FWD_DEFINED__ */ #ifndef __ImageRecompress_FWD_DEFINED__ #define __ImageRecompress_FWD_DEFINED__ #ifdef __cplusplus typedef class ImageRecompress ImageRecompress; #else typedef struct ImageRecompress ImageRecompress; #endif /* defined __cplusplus */ #endif /* defined __ImageRecompress_FWD_DEFINED__ */ #ifndef __TrayBandSiteService_FWD_DEFINED__ #define __TrayBandSiteService_FWD_DEFINED__ #ifdef __cplusplus typedef class TrayBandSiteService TrayBandSiteService; #else typedef struct TrayBandSiteService TrayBandSiteService; #endif /* defined __cplusplus */ #endif /* defined __TrayBandSiteService_FWD_DEFINED__ */ #ifndef __TrayDeskBand_FWD_DEFINED__ #define __TrayDeskBand_FWD_DEFINED__ #ifdef __cplusplus typedef class TrayDeskBand TrayDeskBand; #else typedef struct TrayDeskBand TrayDeskBand; #endif /* defined __cplusplus */ #endif /* defined __TrayDeskBand_FWD_DEFINED__ */ #ifndef __AttachmentServices_FWD_DEFINED__ #define __AttachmentServices_FWD_DEFINED__ #ifdef __cplusplus typedef class AttachmentServices AttachmentServices; #else typedef struct AttachmentServices AttachmentServices; #endif /* defined __cplusplus */ #endif /* defined __AttachmentServices_FWD_DEFINED__ */ #ifndef __DocPropShellExtension_FWD_DEFINED__ #define __DocPropShellExtension_FWD_DEFINED__ #ifdef __cplusplus typedef class DocPropShellExtension DocPropShellExtension; #else typedef struct DocPropShellExtension DocPropShellExtension; #endif /* defined __cplusplus */ #endif /* defined __DocPropShellExtension_FWD_DEFINED__ */ #ifndef __ShellItem_FWD_DEFINED__ #define __ShellItem_FWD_DEFINED__ #ifdef __cplusplus typedef class ShellItem ShellItem; #else typedef struct ShellItem ShellItem; #endif /* defined __cplusplus */ #endif /* defined __ShellItem_FWD_DEFINED__ */ #ifndef __NamespaceWalker_FWD_DEFINED__ #define __NamespaceWalker_FWD_DEFINED__ #ifdef __cplusplus typedef class NamespaceWalker NamespaceWalker; #else typedef struct NamespaceWalker NamespaceWalker; #endif /* defined __cplusplus */ #endif /* defined __NamespaceWalker_FWD_DEFINED__ */ #ifndef __FileOperation_FWD_DEFINED__ #define __FileOperation_FWD_DEFINED__ #ifdef __cplusplus typedef class FileOperation FileOperation; #else typedef struct FileOperation FileOperation; #endif /* defined __cplusplus */ #endif /* defined __FileOperation_FWD_DEFINED__ */ #ifndef __FileOpenDialog_FWD_DEFINED__ #define __FileOpenDialog_FWD_DEFINED__ #ifdef __cplusplus typedef class FileOpenDialog FileOpenDialog; #else typedef struct FileOpenDialog FileOpenDialog; #endif /* defined __cplusplus */ #endif /* defined __FileOpenDialog_FWD_DEFINED__ */ #ifndef __FileSaveDialog_FWD_DEFINED__ #define __FileSaveDialog_FWD_DEFINED__ #ifdef __cplusplus typedef class FileSaveDialog FileSaveDialog; #else typedef struct FileSaveDialog FileSaveDialog; #endif /* defined __cplusplus */ #endif /* defined __FileSaveDialog_FWD_DEFINED__ */ #ifndef __KnownFolderManager_FWD_DEFINED__ #define __KnownFolderManager_FWD_DEFINED__ #ifdef __cplusplus typedef class KnownFolderManager KnownFolderManager; #else typedef struct KnownFolderManager KnownFolderManager; #endif /* defined __cplusplus */ #endif /* defined __KnownFolderManager_FWD_DEFINED__ */ #ifndef __FSCopyHandler_FWD_DEFINED__ #define __FSCopyHandler_FWD_DEFINED__ #ifdef __cplusplus typedef class FSCopyHandler FSCopyHandler; #else typedef struct FSCopyHandler FSCopyHandler; #endif /* defined __cplusplus */ #endif /* defined __FSCopyHandler_FWD_DEFINED__ */ #ifndef __SharingConfigurationManager_FWD_DEFINED__ #define __SharingConfigurationManager_FWD_DEFINED__ #ifdef __cplusplus typedef class SharingConfigurationManager SharingConfigurationManager; #else typedef struct SharingConfigurationManager SharingConfigurationManager; #endif /* defined __cplusplus */ #endif /* defined __SharingConfigurationManager_FWD_DEFINED__ */ #ifndef __PreviousVersions_FWD_DEFINED__ #define __PreviousVersions_FWD_DEFINED__ #ifdef __cplusplus typedef class PreviousVersions PreviousVersions; #else typedef struct PreviousVersions PreviousVersions; #endif /* defined __cplusplus */ #endif /* defined __PreviousVersions_FWD_DEFINED__ */ #ifndef __NetworkConnections_FWD_DEFINED__ #define __NetworkConnections_FWD_DEFINED__ #ifdef __cplusplus typedef class NetworkConnections NetworkConnections; #else typedef struct NetworkConnections NetworkConnections; #endif /* defined __cplusplus */ #endif /* defined __NetworkConnections_FWD_DEFINED__ */ #ifndef __NamespaceTreeControl_FWD_DEFINED__ #define __NamespaceTreeControl_FWD_DEFINED__ #ifdef __cplusplus typedef class NamespaceTreeControl NamespaceTreeControl; #else typedef struct NamespaceTreeControl NamespaceTreeControl; #endif /* defined __cplusplus */ #endif /* defined __NamespaceTreeControl_FWD_DEFINED__ */ #ifndef __IENamespaceTreeControl_FWD_DEFINED__ #define __IENamespaceTreeControl_FWD_DEFINED__ #ifdef __cplusplus typedef class IENamespaceTreeControl IENamespaceTreeControl; #else typedef struct IENamespaceTreeControl IENamespaceTreeControl; #endif /* defined __cplusplus */ #endif /* defined __IENamespaceTreeControl_FWD_DEFINED__ */ #ifndef __ScheduledTasks_FWD_DEFINED__ #define __ScheduledTasks_FWD_DEFINED__ #ifdef __cplusplus typedef class ScheduledTasks ScheduledTasks; #else typedef struct ScheduledTasks ScheduledTasks; #endif /* defined __cplusplus */ #endif /* defined __ScheduledTasks_FWD_DEFINED__ */ #ifndef __ApplicationAssociationRegistration_FWD_DEFINED__ #define __ApplicationAssociationRegistration_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationAssociationRegistration ApplicationAssociationRegistration; #else typedef struct ApplicationAssociationRegistration ApplicationAssociationRegistration; #endif /* defined __cplusplus */ #endif /* defined __ApplicationAssociationRegistration_FWD_DEFINED__ */ #ifndef __ApplicationAssociationRegistrationUI_FWD_DEFINED__ #define __ApplicationAssociationRegistrationUI_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationAssociationRegistrationUI ApplicationAssociationRegistrationUI; #else typedef struct ApplicationAssociationRegistrationUI ApplicationAssociationRegistrationUI; #endif /* defined __cplusplus */ #endif /* defined __ApplicationAssociationRegistrationUI_FWD_DEFINED__ */ #ifndef __SearchFolderItemFactory_FWD_DEFINED__ #define __SearchFolderItemFactory_FWD_DEFINED__ #ifdef __cplusplus typedef class SearchFolderItemFactory SearchFolderItemFactory; #else typedef struct SearchFolderItemFactory SearchFolderItemFactory; #endif /* defined __cplusplus */ #endif /* defined __SearchFolderItemFactory_FWD_DEFINED__ */ #ifndef __OpenControlPanel_FWD_DEFINED__ #define __OpenControlPanel_FWD_DEFINED__ #ifdef __cplusplus typedef class OpenControlPanel OpenControlPanel; #else typedef struct OpenControlPanel OpenControlPanel; #endif /* defined __cplusplus */ #endif /* defined __OpenControlPanel_FWD_DEFINED__ */ #ifndef __MailRecipient_FWD_DEFINED__ #define __MailRecipient_FWD_DEFINED__ #ifdef __cplusplus typedef class MailRecipient MailRecipient; #else typedef struct MailRecipient MailRecipient; #endif /* defined __cplusplus */ #endif /* defined __MailRecipient_FWD_DEFINED__ */ #ifndef __NetworkExplorerFolder_FWD_DEFINED__ #define __NetworkExplorerFolder_FWD_DEFINED__ #ifdef __cplusplus typedef class NetworkExplorerFolder NetworkExplorerFolder; #else typedef struct NetworkExplorerFolder NetworkExplorerFolder; #endif /* defined __cplusplus */ #endif /* defined __NetworkExplorerFolder_FWD_DEFINED__ */ #ifndef __DestinationList_FWD_DEFINED__ #define __DestinationList_FWD_DEFINED__ #ifdef __cplusplus typedef class DestinationList DestinationList; #else typedef struct DestinationList DestinationList; #endif /* defined __cplusplus */ #endif /* defined __DestinationList_FWD_DEFINED__ */ #ifndef __ApplicationDestinations_FWD_DEFINED__ #define __ApplicationDestinations_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationDestinations ApplicationDestinations; #else typedef struct ApplicationDestinations ApplicationDestinations; #endif /* defined __cplusplus */ #endif /* defined __ApplicationDestinations_FWD_DEFINED__ */ #ifndef __ApplicationDocumentLists_FWD_DEFINED__ #define __ApplicationDocumentLists_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationDocumentLists ApplicationDocumentLists; #else typedef struct ApplicationDocumentLists ApplicationDocumentLists; #endif /* defined __cplusplus */ #endif /* defined __ApplicationDocumentLists_FWD_DEFINED__ */ #ifndef __HomeGroup_FWD_DEFINED__ #define __HomeGroup_FWD_DEFINED__ #ifdef __cplusplus typedef class HomeGroup HomeGroup; #else typedef struct HomeGroup HomeGroup; #endif /* defined __cplusplus */ #endif /* defined __HomeGroup_FWD_DEFINED__ */ #ifndef __ShellLibrary_FWD_DEFINED__ #define __ShellLibrary_FWD_DEFINED__ #ifdef __cplusplus typedef class ShellLibrary ShellLibrary; #else typedef struct ShellLibrary ShellLibrary; #endif /* defined __cplusplus */ #endif /* defined __ShellLibrary_FWD_DEFINED__ */ #ifndef __AppStartupLink_FWD_DEFINED__ #define __AppStartupLink_FWD_DEFINED__ #ifdef __cplusplus typedef class AppStartupLink AppStartupLink; #else typedef struct AppStartupLink AppStartupLink; #endif /* defined __cplusplus */ #endif /* defined __AppStartupLink_FWD_DEFINED__ */ #ifndef __EnumerableObjectCollection_FWD_DEFINED__ #define __EnumerableObjectCollection_FWD_DEFINED__ #ifdef __cplusplus typedef class EnumerableObjectCollection EnumerableObjectCollection; #else typedef struct EnumerableObjectCollection EnumerableObjectCollection; #endif /* defined __cplusplus */ #endif /* defined __EnumerableObjectCollection_FWD_DEFINED__ */ #ifndef __DesktopGadget_FWD_DEFINED__ #define __DesktopGadget_FWD_DEFINED__ #ifdef __cplusplus typedef class DesktopGadget DesktopGadget; #else typedef struct DesktopGadget DesktopGadget; #endif /* defined __cplusplus */ #endif /* defined __DesktopGadget_FWD_DEFINED__ */ #ifndef __PlaybackManager_FWD_DEFINED__ #define __PlaybackManager_FWD_DEFINED__ #ifdef __cplusplus typedef class PlaybackManager PlaybackManager; #else typedef struct PlaybackManager PlaybackManager; #endif /* defined __cplusplus */ #endif /* defined __PlaybackManager_FWD_DEFINED__ */ #ifndef __AccessibilityDockingService_FWD_DEFINED__ #define __AccessibilityDockingService_FWD_DEFINED__ #ifdef __cplusplus typedef class AccessibilityDockingService AccessibilityDockingService; #else typedef struct AccessibilityDockingService AccessibilityDockingService; #endif /* defined __cplusplus */ #endif /* defined __AccessibilityDockingService_FWD_DEFINED__ */ #ifndef __FrameworkInputPane_FWD_DEFINED__ #define __FrameworkInputPane_FWD_DEFINED__ #ifdef __cplusplus typedef class FrameworkInputPane FrameworkInputPane; #else typedef struct FrameworkInputPane FrameworkInputPane; #endif /* defined __cplusplus */ #endif /* defined __FrameworkInputPane_FWD_DEFINED__ */ #ifndef __DefFolderMenu_FWD_DEFINED__ #define __DefFolderMenu_FWD_DEFINED__ #ifdef __cplusplus typedef class DefFolderMenu DefFolderMenu; #else typedef struct DefFolderMenu DefFolderMenu; #endif /* defined __cplusplus */ #endif /* defined __DefFolderMenu_FWD_DEFINED__ */ #ifndef __AppVisibility_FWD_DEFINED__ #define __AppVisibility_FWD_DEFINED__ #ifdef __cplusplus typedef class AppVisibility AppVisibility; #else typedef struct AppVisibility AppVisibility; #endif /* defined __cplusplus */ #endif /* defined __AppVisibility_FWD_DEFINED__ */ #ifndef __AppShellVerbHandler_FWD_DEFINED__ #define __AppShellVerbHandler_FWD_DEFINED__ #ifdef __cplusplus typedef class AppShellVerbHandler AppShellVerbHandler; #else typedef struct AppShellVerbHandler AppShellVerbHandler; #endif /* defined __cplusplus */ #endif /* defined __AppShellVerbHandler_FWD_DEFINED__ */ #ifndef __ExecuteUnknown_FWD_DEFINED__ #define __ExecuteUnknown_FWD_DEFINED__ #ifdef __cplusplus typedef class ExecuteUnknown ExecuteUnknown; #else typedef struct ExecuteUnknown ExecuteUnknown; #endif /* defined __cplusplus */ #endif /* defined __ExecuteUnknown_FWD_DEFINED__ */ #ifndef __PackageDebugSettings_FWD_DEFINED__ #define __PackageDebugSettings_FWD_DEFINED__ #ifdef __cplusplus typedef class PackageDebugSettings PackageDebugSettings; #else typedef struct PackageDebugSettings PackageDebugSettings; #endif /* defined __cplusplus */ #endif /* defined __PackageDebugSettings_FWD_DEFINED__ */ #ifndef __ApplicationActivationManager_FWD_DEFINED__ #define __ApplicationActivationManager_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationActivationManager ApplicationActivationManager; #else typedef struct ApplicationActivationManager ApplicationActivationManager; #endif /* defined __cplusplus */ #endif /* defined __ApplicationActivationManager_FWD_DEFINED__ */ #ifndef __ApplicationDesignModeSettings_FWD_DEFINED__ #define __ApplicationDesignModeSettings_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationDesignModeSettings ApplicationDesignModeSettings; #else typedef struct ApplicationDesignModeSettings ApplicationDesignModeSettings; #endif /* defined __cplusplus */ #endif /* defined __ApplicationDesignModeSettings_FWD_DEFINED__ */ #ifndef __ExecuteFolder_FWD_DEFINED__ #define __ExecuteFolder_FWD_DEFINED__ #ifdef __cplusplus typedef class ExecuteFolder ExecuteFolder; #else typedef struct ExecuteFolder ExecuteFolder; #endif /* defined __cplusplus */ #endif /* defined __ExecuteFolder_FWD_DEFINED__ */ #ifndef __IAssocHandlerInvoker_FWD_DEFINED__ #define __IAssocHandlerInvoker_FWD_DEFINED__ typedef interface IAssocHandlerInvoker IAssocHandlerInvoker; #ifdef __cplusplus interface IAssocHandlerInvoker; #endif /* __cplusplus */ #endif #ifndef __IAssocHandler_FWD_DEFINED__ #define __IAssocHandler_FWD_DEFINED__ typedef interface IAssocHandler IAssocHandler; #ifdef __cplusplus interface IAssocHandler; #endif /* __cplusplus */ #endif #ifndef __IEnumAssocHandlers_FWD_DEFINED__ #define __IEnumAssocHandlers_FWD_DEFINED__ typedef interface IEnumAssocHandlers IEnumAssocHandlers; #ifdef __cplusplus interface IEnumAssocHandlers; #endif /* __cplusplus */ #endif #ifndef __IDataObjectProvider_FWD_DEFINED__ #define __IDataObjectProvider_FWD_DEFINED__ typedef interface IDataObjectProvider IDataObjectProvider; #ifdef __cplusplus interface IDataObjectProvider; #endif /* __cplusplus */ #endif #ifndef __IDataTransferManagerInterop_FWD_DEFINED__ #define __IDataTransferManagerInterop_FWD_DEFINED__ typedef interface IDataTransferManagerInterop IDataTransferManagerInterop; #ifdef __cplusplus interface IDataTransferManagerInterop; #endif /* __cplusplus */ #endif #ifndef __IFrameworkInputPaneHandler_FWD_DEFINED__ #define __IFrameworkInputPaneHandler_FWD_DEFINED__ typedef interface IFrameworkInputPaneHandler IFrameworkInputPaneHandler; #ifdef __cplusplus interface IFrameworkInputPaneHandler; #endif /* __cplusplus */ #endif #ifndef __IFrameworkInputPane_FWD_DEFINED__ #define __IFrameworkInputPane_FWD_DEFINED__ typedef interface IFrameworkInputPane IFrameworkInputPane; #ifdef __cplusplus interface IFrameworkInputPane; #endif /* __cplusplus */ #endif #ifndef __ISearchableApplication_FWD_DEFINED__ #define __ISearchableApplication_FWD_DEFINED__ typedef interface ISearchableApplication ISearchableApplication; #ifdef __cplusplus interface ISearchableApplication; #endif /* __cplusplus */ #endif #ifndef __IAccessibilityDockingServiceCallback_FWD_DEFINED__ #define __IAccessibilityDockingServiceCallback_FWD_DEFINED__ typedef interface IAccessibilityDockingServiceCallback IAccessibilityDockingServiceCallback; #ifdef __cplusplus interface IAccessibilityDockingServiceCallback; #endif /* __cplusplus */ #endif #ifndef __IAccessibilityDockingService_FWD_DEFINED__ #define __IAccessibilityDockingService_FWD_DEFINED__ typedef interface IAccessibilityDockingService IAccessibilityDockingService; #ifdef __cplusplus interface IAccessibilityDockingService; #endif /* __cplusplus */ #endif #ifndef __IAppVisibilityEvents_FWD_DEFINED__ #define __IAppVisibilityEvents_FWD_DEFINED__ typedef interface IAppVisibilityEvents IAppVisibilityEvents; #ifdef __cplusplus interface IAppVisibilityEvents; #endif /* __cplusplus */ #endif #ifndef __IAppVisibility_FWD_DEFINED__ #define __IAppVisibility_FWD_DEFINED__ typedef interface IAppVisibility IAppVisibility; #ifdef __cplusplus interface IAppVisibility; #endif /* __cplusplus */ #endif #ifndef __IPackageExecutionStateChangeNotification_FWD_DEFINED__ #define __IPackageExecutionStateChangeNotification_FWD_DEFINED__ typedef interface IPackageExecutionStateChangeNotification IPackageExecutionStateChangeNotification; #ifdef __cplusplus interface IPackageExecutionStateChangeNotification; #endif /* __cplusplus */ #endif #ifndef __IPackageDebugSettings_FWD_DEFINED__ #define __IPackageDebugSettings_FWD_DEFINED__ typedef interface IPackageDebugSettings IPackageDebugSettings; #ifdef __cplusplus interface IPackageDebugSettings; #endif /* __cplusplus */ #endif #ifndef __IExecuteCommandApplicationHostEnvironment_FWD_DEFINED__ #define __IExecuteCommandApplicationHostEnvironment_FWD_DEFINED__ typedef interface IExecuteCommandApplicationHostEnvironment IExecuteCommandApplicationHostEnvironment; #ifdef __cplusplus interface IExecuteCommandApplicationHostEnvironment; #endif /* __cplusplus */ #endif #ifndef __IExecuteCommandHost_FWD_DEFINED__ #define __IExecuteCommandHost_FWD_DEFINED__ typedef interface IExecuteCommandHost IExecuteCommandHost; #ifdef __cplusplus interface IExecuteCommandHost; #endif /* __cplusplus */ #endif #ifndef __IApplicationDesignModeSettings_FWD_DEFINED__ #define __IApplicationDesignModeSettings_FWD_DEFINED__ typedef interface IApplicationDesignModeSettings IApplicationDesignModeSettings; #ifdef __cplusplus interface IApplicationDesignModeSettings; #endif /* __cplusplus */ #endif #ifndef __IInitializeWithWindow_FWD_DEFINED__ #define __IInitializeWithWindow_FWD_DEFINED__ typedef interface IInitializeWithWindow IInitializeWithWindow; #ifdef __cplusplus interface IInitializeWithWindow; #endif /* __cplusplus */ #endif #ifndef __IHandlerInfo_FWD_DEFINED__ #define __IHandlerInfo_FWD_DEFINED__ typedef interface IHandlerInfo IHandlerInfo; #ifdef __cplusplus interface IHandlerInfo; #endif /* __cplusplus */ #endif #ifndef __IHandlerActivationHost_FWD_DEFINED__ #define __IHandlerActivationHost_FWD_DEFINED__ typedef interface IHandlerActivationHost IHandlerActivationHost; #ifdef __cplusplus interface IHandlerActivationHost; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif /** * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */ #include #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #include <_mingw_unicode.h> #include #ifndef SHSTDAPI #ifdef _SHELL32_ #define SHSTDAPI STDAPI #define SHSTDAPI_(type) STDAPI_(type) #else #define SHSTDAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE #define SHSTDAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE #endif #endif #define CMF_NORMAL 0x0 #define CMF_DEFAULTONLY 0x1 #define CMF_VERBSONLY 0x2 #define CMF_EXPLORE 0x4 #define CMF_NOVERBS 0x8 #define CMF_CANRENAME 0x10 #define CMF_NODEFAULT 0x20 #if NTDDI_VERSION < NTDDI_VISTA #define CMF_INCLUDESTATIC 0x40 #endif #if NTDDI_VERSION >= NTDDI_VISTA #define CMF_ITEMMENU 0x80 #endif #define CMF_EXTENDEDVERBS 0x100 #if NTDDI_VERSION >= NTDDI_VISTA #define CMF_DISABLEDVERBS 0x200 #endif #define CMF_ASYNCVERBSTATE 0x400 #define CMF_OPTIMIZEFORINVOKE 0x800 #define CMF_SYNCCASCADEMENU 0x1000 #define CMF_DONOTPICKDEFAULT 0x2000 #define CMF_RESERVED 0xffff0000 #define GCS_VERBA 0x0 #define GCS_HELPTEXTA 0x1 #define GCS_VALIDATEA 0x2 #define GCS_VERBW 0x4 #define GCS_HELPTEXTW 0x5 #define GCS_VALIDATEW 0x6 #define GCS_VERBICONW 0x14 #define GCS_UNICODE 0x4 #define GCS_VERB __MINGW_NAME_AW(GCS_VERB) #define GCS_HELPTEXT __MINGW_NAME_AW(GCS_HELPTEXT) #define GCS_VALIDATE __MINGW_NAME_AW(GCS_VALIDATE) #define CMDSTR_NEWFOLDERA "NewFolder" #define CMDSTR_VIEWLISTA "ViewList" #define CMDSTR_VIEWDETAILSA "ViewDetails" #define CMDSTR_NEWFOLDERW L"NewFolder" #define CMDSTR_VIEWLISTW L"ViewList" #define CMDSTR_VIEWDETAILSW L"ViewDetails" #define CMDSTR_NEWFOLDER __MINGW_NAME_AW(CMDSTR_NEWFOLDER) #define CMDSTR_VIEWLIST __MINGW_NAME_AW(CMDSTR_VIEWLIST) #define CMDSTR_VIEWDETAILS __MINGW_NAME_AW(CMDSTR_VIEWDETAILS) #define CMIC_MASK_HOTKEY SEE_MASK_HOTKEY #define CMIC_MASK_ICON SEE_MASK_ICON #define CMIC_MASK_FLAG_NO_UI SEE_MASK_FLAG_NO_UI #define CMIC_MASK_UNICODE SEE_MASK_UNICODE #define CMIC_MASK_NO_CONSOLE SEE_MASK_NO_CONSOLE #if NTDDI_VERSION < NTDDI_VISTA #define CMIC_MASK_HASLINKNAME SEE_MASK_HASLINKNAME #define CMIC_MASK_HASTITLE SEE_MASK_HASTITLE #endif #define CMIC_MASK_FLAG_SEP_VDM SEE_MASK_FLAG_SEPVDM #define CMIC_MASK_ASYNCOK SEE_MASK_ASYNCOK #if NTDDI_VERSION >= NTDDI_VISTA #define CMIC_MASK_NOASYNC SEE_MASK_NOASYNC #endif #define CMIC_MASK_SHIFT_DOWN 0x10000000 #define CMIC_MASK_CONTROL_DOWN 0x40000000 #define CMIC_MASK_FLAG_LOG_USAGE SEE_MASK_FLAG_LOG_USAGE #define CMIC_MASK_NOZONECHECKS SEE_MASK_NOZONECHECKS #define CMIC_MASK_PTINVOKE 0x20000000 #include typedef struct _CMINVOKECOMMANDINFO { DWORD cbSize; DWORD fMask; HWND hwnd; LPCSTR lpVerb; LPCSTR lpParameters; LPCSTR lpDirectory; int nShow; DWORD dwHotKey; HANDLE hIcon; } CMINVOKECOMMANDINFO; typedef CMINVOKECOMMANDINFO *LPCMINVOKECOMMANDINFO; typedef const CMINVOKECOMMANDINFO *PCCMINVOKECOMMANDINFO; typedef struct _CMINVOKECOMMANDINFOEX { DWORD cbSize; DWORD fMask; HWND hwnd; LPCSTR lpVerb; LPCSTR lpParameters; LPCSTR lpDirectory; int nShow; DWORD dwHotKey; HANDLE hIcon; LPCSTR lpTitle; LPCWSTR lpVerbW; LPCWSTR lpParametersW; LPCWSTR lpDirectoryW; LPCWSTR lpTitleW; POINT ptInvoke; } CMINVOKECOMMANDINFOEX; typedef CMINVOKECOMMANDINFOEX *LPCMINVOKECOMMANDINFOEX; typedef const CMINVOKECOMMANDINFOEX *PCCMINVOKECOMMANDINFOEX; #include /***************************************************************************** * IContextMenu interface */ #ifndef __IContextMenu_INTERFACE_DEFINED__ #define __IContextMenu_INTERFACE_DEFINED__ DEFINE_GUID(IID_IContextMenu, 0x000214e4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e4-0000-0000-c000-000000000046") IContextMenu : public IUnknown { virtual HRESULT STDMETHODCALLTYPE QueryContextMenu( HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE InvokeCommand( CMINVOKECOMMANDINFO *pici) = 0; virtual HRESULT STDMETHODCALLTYPE GetCommandString( UINT_PTR idCmd, UINT uType, UINT *pReserved, CHAR *pszName, UINT cchMax) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenu, 0x000214e4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IContextMenuVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenu *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenu *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenu *This); /*** IContextMenu methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( IContextMenu *This, HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags); HRESULT (STDMETHODCALLTYPE *InvokeCommand)( IContextMenu *This, CMINVOKECOMMANDINFO *pici); HRESULT (STDMETHODCALLTYPE *GetCommandString)( IContextMenu *This, UINT_PTR idCmd, UINT uType, UINT *pReserved, CHAR *pszName, UINT cchMax); END_INTERFACE } IContextMenuVtbl; interface IContextMenu { CONST_VTBL IContextMenuVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenu_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenu_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenu_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenu methods ***/ #define IContextMenu_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) #define IContextMenu_InvokeCommand(This,pici) (This)->lpVtbl->InvokeCommand(This,pici) #define IContextMenu_GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IContextMenu_QueryInterface(IContextMenu* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IContextMenu_AddRef(IContextMenu* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IContextMenu_Release(IContextMenu* This) { return This->lpVtbl->Release(This); } /*** IContextMenu methods ***/ static FORCEINLINE HRESULT IContextMenu_QueryContextMenu(IContextMenu* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); } static FORCEINLINE HRESULT IContextMenu_InvokeCommand(IContextMenu* This,CMINVOKECOMMANDINFO *pici) { return This->lpVtbl->InvokeCommand(This,pici); } static FORCEINLINE HRESULT IContextMenu_GetCommandString(IContextMenu* This,UINT_PTR idCmd,UINT uType,UINT *pReserved,CHAR *pszName,UINT cchMax) { return This->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax); } #endif #endif #endif #endif /* __IContextMenu_INTERFACE_DEFINED__ */ typedef IContextMenu *LPCONTEXTMENU; /***************************************************************************** * IContextMenu2 interface */ #ifndef __IContextMenu2_INTERFACE_DEFINED__ #define __IContextMenu2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IContextMenu2, 0x000214f4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f4-0000-0000-c000-000000000046") IContextMenu2 : public IContextMenu { virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg( UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenu2, 0x000214f4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IContextMenu2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenu2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenu2 *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenu2 *This); /*** IContextMenu methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( IContextMenu2 *This, HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags); HRESULT (STDMETHODCALLTYPE *InvokeCommand)( IContextMenu2 *This, CMINVOKECOMMANDINFO *pici); HRESULT (STDMETHODCALLTYPE *GetCommandString)( IContextMenu2 *This, UINT_PTR idCmd, UINT uType, UINT *pReserved, CHAR *pszName, UINT cchMax); /*** IContextMenu2 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleMenuMsg)( IContextMenu2 *This, UINT uMsg, WPARAM wParam, LPARAM lParam); END_INTERFACE } IContextMenu2Vtbl; interface IContextMenu2 { CONST_VTBL IContextMenu2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenu2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenu2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenu2_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenu methods ***/ #define IContextMenu2_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) #define IContextMenu2_InvokeCommand(This,pici) (This)->lpVtbl->InvokeCommand(This,pici) #define IContextMenu2_GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) /*** IContextMenu2 methods ***/ #define IContextMenu2_HandleMenuMsg(This,uMsg,wParam,lParam) (This)->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IContextMenu2_QueryInterface(IContextMenu2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IContextMenu2_AddRef(IContextMenu2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IContextMenu2_Release(IContextMenu2* This) { return This->lpVtbl->Release(This); } /*** IContextMenu methods ***/ static FORCEINLINE HRESULT IContextMenu2_QueryContextMenu(IContextMenu2* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); } static FORCEINLINE HRESULT IContextMenu2_InvokeCommand(IContextMenu2* This,CMINVOKECOMMANDINFO *pici) { return This->lpVtbl->InvokeCommand(This,pici); } static FORCEINLINE HRESULT IContextMenu2_GetCommandString(IContextMenu2* This,UINT_PTR idCmd,UINT uType,UINT *pReserved,CHAR *pszName,UINT cchMax) { return This->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax); } /*** IContextMenu2 methods ***/ static FORCEINLINE HRESULT IContextMenu2_HandleMenuMsg(IContextMenu2* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam); } #endif #endif #endif #endif /* __IContextMenu2_INTERFACE_DEFINED__ */ typedef IContextMenu2 *LPCONTEXTMENU2; /***************************************************************************** * IContextMenu3 interface */ #ifndef __IContextMenu3_INTERFACE_DEFINED__ #define __IContextMenu3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IContextMenu3, 0xbcfce0a0, 0xec17, 0x11d0, 0x8d,0x10, 0x00,0xa0,0xc9,0x0f,0x27,0x19); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bcfce0a0-ec17-11d0-8d10-00a0c90f2719") IContextMenu3 : public IContextMenu2 { virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg2( UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *plResult) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenu3, 0xbcfce0a0, 0xec17, 0x11d0, 0x8d,0x10, 0x00,0xa0,0xc9,0x0f,0x27,0x19) #endif #else typedef struct IContextMenu3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenu3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenu3 *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenu3 *This); /*** IContextMenu methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( IContextMenu3 *This, HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags); HRESULT (STDMETHODCALLTYPE *InvokeCommand)( IContextMenu3 *This, CMINVOKECOMMANDINFO *pici); HRESULT (STDMETHODCALLTYPE *GetCommandString)( IContextMenu3 *This, UINT_PTR idCmd, UINT uType, UINT *pReserved, CHAR *pszName, UINT cchMax); /*** IContextMenu2 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleMenuMsg)( IContextMenu3 *This, UINT uMsg, WPARAM wParam, LPARAM lParam); /*** IContextMenu3 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleMenuMsg2)( IContextMenu3 *This, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *plResult); END_INTERFACE } IContextMenu3Vtbl; interface IContextMenu3 { CONST_VTBL IContextMenu3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenu3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenu3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenu3_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenu methods ***/ #define IContextMenu3_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) #define IContextMenu3_InvokeCommand(This,pici) (This)->lpVtbl->InvokeCommand(This,pici) #define IContextMenu3_GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) /*** IContextMenu2 methods ***/ #define IContextMenu3_HandleMenuMsg(This,uMsg,wParam,lParam) (This)->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam) /*** IContextMenu3 methods ***/ #define IContextMenu3_HandleMenuMsg2(This,uMsg,wParam,lParam,plResult) (This)->lpVtbl->HandleMenuMsg2(This,uMsg,wParam,lParam,plResult) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IContextMenu3_QueryInterface(IContextMenu3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IContextMenu3_AddRef(IContextMenu3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IContextMenu3_Release(IContextMenu3* This) { return This->lpVtbl->Release(This); } /*** IContextMenu methods ***/ static FORCEINLINE HRESULT IContextMenu3_QueryContextMenu(IContextMenu3* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); } static FORCEINLINE HRESULT IContextMenu3_InvokeCommand(IContextMenu3* This,CMINVOKECOMMANDINFO *pici) { return This->lpVtbl->InvokeCommand(This,pici); } static FORCEINLINE HRESULT IContextMenu3_GetCommandString(IContextMenu3* This,UINT_PTR idCmd,UINT uType,UINT *pReserved,CHAR *pszName,UINT cchMax) { return This->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax); } /*** IContextMenu2 methods ***/ static FORCEINLINE HRESULT IContextMenu3_HandleMenuMsg(IContextMenu3* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam); } /*** IContextMenu3 methods ***/ static FORCEINLINE HRESULT IContextMenu3_HandleMenuMsg2(IContextMenu3* This,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *plResult) { return This->lpVtbl->HandleMenuMsg2(This,uMsg,wParam,lParam,plResult); } #endif #endif #endif #endif /* __IContextMenu3_INTERFACE_DEFINED__ */ typedef IContextMenu3 *LPCONTEXTMENU3; /***************************************************************************** * IExecuteCommand interface */ #ifndef __IExecuteCommand_INTERFACE_DEFINED__ #define __IExecuteCommand_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExecuteCommand, 0x7f9185b0, 0xcb92, 0x43c5, 0x80,0xa9, 0x92,0x27,0x7a,0x4f,0x7b,0x54); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7f9185b0-cb92-43c5-80a9-92277a4f7b54") IExecuteCommand : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetKeyState( DWORD grfKeyState) = 0; virtual HRESULT STDMETHODCALLTYPE SetParameters( LPCWSTR pszParameters) = 0; virtual HRESULT STDMETHODCALLTYPE SetPosition( POINT pt) = 0; virtual HRESULT STDMETHODCALLTYPE SetShowWindow( int nShow) = 0; virtual HRESULT STDMETHODCALLTYPE SetNoShowUI( WINBOOL fNoShowUI) = 0; virtual HRESULT STDMETHODCALLTYPE SetDirectory( LPCWSTR pszDirectory) = 0; virtual HRESULT STDMETHODCALLTYPE Execute( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExecuteCommand, 0x7f9185b0, 0xcb92, 0x43c5, 0x80,0xa9, 0x92,0x27,0x7a,0x4f,0x7b,0x54) #endif #else typedef struct IExecuteCommandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExecuteCommand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExecuteCommand *This); ULONG (STDMETHODCALLTYPE *Release)( IExecuteCommand *This); /*** IExecuteCommand methods ***/ HRESULT (STDMETHODCALLTYPE *SetKeyState)( IExecuteCommand *This, DWORD grfKeyState); HRESULT (STDMETHODCALLTYPE *SetParameters)( IExecuteCommand *This, LPCWSTR pszParameters); HRESULT (STDMETHODCALLTYPE *SetPosition)( IExecuteCommand *This, POINT pt); HRESULT (STDMETHODCALLTYPE *SetShowWindow)( IExecuteCommand *This, int nShow); HRESULT (STDMETHODCALLTYPE *SetNoShowUI)( IExecuteCommand *This, WINBOOL fNoShowUI); HRESULT (STDMETHODCALLTYPE *SetDirectory)( IExecuteCommand *This, LPCWSTR pszDirectory); HRESULT (STDMETHODCALLTYPE *Execute)( IExecuteCommand *This); END_INTERFACE } IExecuteCommandVtbl; interface IExecuteCommand { CONST_VTBL IExecuteCommandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExecuteCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExecuteCommand_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExecuteCommand_Release(This) (This)->lpVtbl->Release(This) /*** IExecuteCommand methods ***/ #define IExecuteCommand_SetKeyState(This,grfKeyState) (This)->lpVtbl->SetKeyState(This,grfKeyState) #define IExecuteCommand_SetParameters(This,pszParameters) (This)->lpVtbl->SetParameters(This,pszParameters) #define IExecuteCommand_SetPosition(This,pt) (This)->lpVtbl->SetPosition(This,pt) #define IExecuteCommand_SetShowWindow(This,nShow) (This)->lpVtbl->SetShowWindow(This,nShow) #define IExecuteCommand_SetNoShowUI(This,fNoShowUI) (This)->lpVtbl->SetNoShowUI(This,fNoShowUI) #define IExecuteCommand_SetDirectory(This,pszDirectory) (This)->lpVtbl->SetDirectory(This,pszDirectory) #define IExecuteCommand_Execute(This) (This)->lpVtbl->Execute(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExecuteCommand_QueryInterface(IExecuteCommand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExecuteCommand_AddRef(IExecuteCommand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExecuteCommand_Release(IExecuteCommand* This) { return This->lpVtbl->Release(This); } /*** IExecuteCommand methods ***/ static FORCEINLINE HRESULT IExecuteCommand_SetKeyState(IExecuteCommand* This,DWORD grfKeyState) { return This->lpVtbl->SetKeyState(This,grfKeyState); } static FORCEINLINE HRESULT IExecuteCommand_SetParameters(IExecuteCommand* This,LPCWSTR pszParameters) { return This->lpVtbl->SetParameters(This,pszParameters); } static FORCEINLINE HRESULT IExecuteCommand_SetPosition(IExecuteCommand* This,POINT pt) { return This->lpVtbl->SetPosition(This,pt); } static FORCEINLINE HRESULT IExecuteCommand_SetShowWindow(IExecuteCommand* This,int nShow) { return This->lpVtbl->SetShowWindow(This,nShow); } static FORCEINLINE HRESULT IExecuteCommand_SetNoShowUI(IExecuteCommand* This,WINBOOL fNoShowUI) { return This->lpVtbl->SetNoShowUI(This,fNoShowUI); } static FORCEINLINE HRESULT IExecuteCommand_SetDirectory(IExecuteCommand* This,LPCWSTR pszDirectory) { return This->lpVtbl->SetDirectory(This,pszDirectory); } static FORCEINLINE HRESULT IExecuteCommand_Execute(IExecuteCommand* This) { return This->lpVtbl->Execute(This); } #endif #endif #endif #endif /* __IExecuteCommand_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistFolder interface */ #ifndef __IPersistFolder_INTERFACE_DEFINED__ #define __IPersistFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214ea-0000-0000-c000-000000000046") IPersistFolder : public IPersist { virtual HRESULT STDMETHODCALLTYPE Initialize( PCIDLIST_ABSOLUTE pidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IPersistFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistFolder *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistFolder *This, CLSID *pClassID); /*** IPersistFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPersistFolder *This, PCIDLIST_ABSOLUTE pidl); END_INTERFACE } IPersistFolderVtbl; interface IPersistFolder { CONST_VTBL IPersistFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistFolder_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistFolder_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistFolder methods ***/ #define IPersistFolder_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPersistFolder_QueryInterface(IPersistFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPersistFolder_AddRef(IPersistFolder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPersistFolder_Release(IPersistFolder* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static FORCEINLINE HRESULT IPersistFolder_GetClassID(IPersistFolder* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistFolder methods ***/ static FORCEINLINE HRESULT IPersistFolder_Initialize(IPersistFolder* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->Initialize(This,pidl); } #endif #endif #endif #endif /* __IPersistFolder_INTERFACE_DEFINED__ */ typedef IPersistFolder *LPPERSISTFOLDER; #define IRTIR_TASK_NOT_RUNNING 0 #define IRTIR_TASK_RUNNING 1 #define IRTIR_TASK_SUSPENDED 2 #define IRTIR_TASK_PENDING 3 #define IRTIR_TASK_FINISHED 4 /***************************************************************************** * IRunnableTask interface */ #ifndef __IRunnableTask_INTERFACE_DEFINED__ #define __IRunnableTask_INTERFACE_DEFINED__ DEFINE_GUID(IID_IRunnableTask, 0x85788d00, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("85788d00-6807-11d0-b810-00c04fd706ec") IRunnableTask : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Run( ) = 0; virtual HRESULT STDMETHODCALLTYPE Kill( WINBOOL bWait) = 0; virtual HRESULT STDMETHODCALLTYPE Suspend( ) = 0; virtual HRESULT STDMETHODCALLTYPE Resume( ) = 0; virtual ULONG STDMETHODCALLTYPE IsRunning( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IRunnableTask, 0x85788d00, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec) #endif #else typedef struct IRunnableTaskVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IRunnableTask *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IRunnableTask *This); ULONG (STDMETHODCALLTYPE *Release)( IRunnableTask *This); /*** IRunnableTask methods ***/ HRESULT (STDMETHODCALLTYPE *Run)( IRunnableTask *This); HRESULT (STDMETHODCALLTYPE *Kill)( IRunnableTask *This, WINBOOL bWait); HRESULT (STDMETHODCALLTYPE *Suspend)( IRunnableTask *This); HRESULT (STDMETHODCALLTYPE *Resume)( IRunnableTask *This); ULONG (STDMETHODCALLTYPE *IsRunning)( IRunnableTask *This); END_INTERFACE } IRunnableTaskVtbl; interface IRunnableTask { CONST_VTBL IRunnableTaskVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IRunnableTask_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IRunnableTask_AddRef(This) (This)->lpVtbl->AddRef(This) #define IRunnableTask_Release(This) (This)->lpVtbl->Release(This) /*** IRunnableTask methods ***/ #define IRunnableTask_Run(This) (This)->lpVtbl->Run(This) #define IRunnableTask_Kill(This,bWait) (This)->lpVtbl->Kill(This,bWait) #define IRunnableTask_Suspend(This) (This)->lpVtbl->Suspend(This) #define IRunnableTask_Resume(This) (This)->lpVtbl->Resume(This) #define IRunnableTask_IsRunning(This) (This)->lpVtbl->IsRunning(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IRunnableTask_QueryInterface(IRunnableTask* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IRunnableTask_AddRef(IRunnableTask* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IRunnableTask_Release(IRunnableTask* This) { return This->lpVtbl->Release(This); } /*** IRunnableTask methods ***/ static FORCEINLINE HRESULT IRunnableTask_Run(IRunnableTask* This) { return This->lpVtbl->Run(This); } static FORCEINLINE HRESULT IRunnableTask_Kill(IRunnableTask* This,WINBOOL bWait) { return This->lpVtbl->Kill(This,bWait); } static FORCEINLINE HRESULT IRunnableTask_Suspend(IRunnableTask* This) { return This->lpVtbl->Suspend(This); } static FORCEINLINE HRESULT IRunnableTask_Resume(IRunnableTask* This) { return This->lpVtbl->Resume(This); } static FORCEINLINE ULONG IRunnableTask_IsRunning(IRunnableTask* This) { return This->lpVtbl->IsRunning(This); } #endif #endif #endif #endif /* __IRunnableTask_INTERFACE_DEFINED__ */ #define TOID_NULL GUID_NULL #define ITSAT_DEFAULT_LPARAM ((DWORD_PTR)-1) #define ITSAT_DEFAULT_PRIORITY 0x10000000 #define ITSAT_MAX_PRIORITY 0x7fffffff #define ITSAT_MIN_PRIORITY 0x00000000 #define ITSSFLAG_COMPLETE_ON_DESTROY 0x0 #define ITSSFLAG_KILL_ON_DESTROY 0x1 #define ITSSFLAG_FLAGS_MASK 0x3 #define ITSS_THREAD_DESTROY_DEFAULT_TIMEOUT (10 * 1000) #define ITSS_THREAD_TERMINATE_TIMEOUT (INFINITE) #define ITSS_THREAD_TIMEOUT_NO_CHANGE (INFINITE - 1) /***************************************************************************** * IShellTaskScheduler interface */ #ifndef __IShellTaskScheduler_INTERFACE_DEFINED__ #define __IShellTaskScheduler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellTaskScheduler, 0x6ccb7be0, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6ccb7be0-6807-11d0-b810-00c04fd706ec") IShellTaskScheduler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddTask( IRunnableTask *prt, REFTASKOWNERID rtoid, DWORD_PTR lParam, DWORD dwPriority) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveTasks( REFTASKOWNERID rtoid, DWORD_PTR lParam, WINBOOL bWaitIfRunning) = 0; virtual UINT STDMETHODCALLTYPE CountTasks( REFTASKOWNERID rtoid) = 0; virtual HRESULT STDMETHODCALLTYPE Status( DWORD dwReleaseStatus, DWORD dwThreadTimeout) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellTaskScheduler, 0x6ccb7be0, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec) #endif #else typedef struct IShellTaskSchedulerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellTaskScheduler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellTaskScheduler *This); ULONG (STDMETHODCALLTYPE *Release)( IShellTaskScheduler *This); /*** IShellTaskScheduler methods ***/ HRESULT (STDMETHODCALLTYPE *AddTask)( IShellTaskScheduler *This, IRunnableTask *prt, REFTASKOWNERID rtoid, DWORD_PTR lParam, DWORD dwPriority); HRESULT (STDMETHODCALLTYPE *RemoveTasks)( IShellTaskScheduler *This, REFTASKOWNERID rtoid, DWORD_PTR lParam, WINBOOL bWaitIfRunning); UINT (STDMETHODCALLTYPE *CountTasks)( IShellTaskScheduler *This, REFTASKOWNERID rtoid); HRESULT (STDMETHODCALLTYPE *Status)( IShellTaskScheduler *This, DWORD dwReleaseStatus, DWORD dwThreadTimeout); END_INTERFACE } IShellTaskSchedulerVtbl; interface IShellTaskScheduler { CONST_VTBL IShellTaskSchedulerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellTaskScheduler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellTaskScheduler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellTaskScheduler_Release(This) (This)->lpVtbl->Release(This) /*** IShellTaskScheduler methods ***/ #define IShellTaskScheduler_AddTask(This,prt,rtoid,lParam,dwPriority) (This)->lpVtbl->AddTask(This,prt,rtoid,lParam,dwPriority) #define IShellTaskScheduler_RemoveTasks(This,rtoid,lParam,bWaitIfRunning) (This)->lpVtbl->RemoveTasks(This,rtoid,lParam,bWaitIfRunning) #define IShellTaskScheduler_CountTasks(This,rtoid) (This)->lpVtbl->CountTasks(This,rtoid) #define IShellTaskScheduler_Status(This,dwReleaseStatus,dwThreadTimeout) (This)->lpVtbl->Status(This,dwReleaseStatus,dwThreadTimeout) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellTaskScheduler_QueryInterface(IShellTaskScheduler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellTaskScheduler_AddRef(IShellTaskScheduler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellTaskScheduler_Release(IShellTaskScheduler* This) { return This->lpVtbl->Release(This); } /*** IShellTaskScheduler methods ***/ static FORCEINLINE HRESULT IShellTaskScheduler_AddTask(IShellTaskScheduler* This,IRunnableTask *prt,REFTASKOWNERID rtoid,DWORD_PTR lParam,DWORD dwPriority) { return This->lpVtbl->AddTask(This,prt,rtoid,lParam,dwPriority); } static FORCEINLINE HRESULT IShellTaskScheduler_RemoveTasks(IShellTaskScheduler* This,REFTASKOWNERID rtoid,DWORD_PTR lParam,WINBOOL bWaitIfRunning) { return This->lpVtbl->RemoveTasks(This,rtoid,lParam,bWaitIfRunning); } static FORCEINLINE UINT IShellTaskScheduler_CountTasks(IShellTaskScheduler* This,REFTASKOWNERID rtoid) { return This->lpVtbl->CountTasks(This,rtoid); } static FORCEINLINE HRESULT IShellTaskScheduler_Status(IShellTaskScheduler* This,DWORD dwReleaseStatus,DWORD dwThreadTimeout) { return This->lpVtbl->Status(This,dwReleaseStatus,dwThreadTimeout); } #endif #endif #endif #endif /* __IShellTaskScheduler_INTERFACE_DEFINED__ */ #define SID_ShellTaskScheduler IID_IShellTaskScheduler /***************************************************************************** * IQueryCodePage interface */ #ifndef __IQueryCodePage_INTERFACE_DEFINED__ #define __IQueryCodePage_INTERFACE_DEFINED__ DEFINE_GUID(IID_IQueryCodePage, 0xc7b236ce, 0xee80, 0x11d0, 0x98,0x5f, 0x00,0x60,0x08,0x05,0x93,0x82); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c7b236ce-ee80-11d0-985f-006008059382") IQueryCodePage : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCodePage( UINT *puiCodePage) = 0; virtual HRESULT STDMETHODCALLTYPE SetCodePage( UINT uiCodePage) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IQueryCodePage, 0xc7b236ce, 0xee80, 0x11d0, 0x98,0x5f, 0x00,0x60,0x08,0x05,0x93,0x82) #endif #else typedef struct IQueryCodePageVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IQueryCodePage *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IQueryCodePage *This); ULONG (STDMETHODCALLTYPE *Release)( IQueryCodePage *This); /*** IQueryCodePage methods ***/ HRESULT (STDMETHODCALLTYPE *GetCodePage)( IQueryCodePage *This, UINT *puiCodePage); HRESULT (STDMETHODCALLTYPE *SetCodePage)( IQueryCodePage *This, UINT uiCodePage); END_INTERFACE } IQueryCodePageVtbl; interface IQueryCodePage { CONST_VTBL IQueryCodePageVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IQueryCodePage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IQueryCodePage_AddRef(This) (This)->lpVtbl->AddRef(This) #define IQueryCodePage_Release(This) (This)->lpVtbl->Release(This) /*** IQueryCodePage methods ***/ #define IQueryCodePage_GetCodePage(This,puiCodePage) (This)->lpVtbl->GetCodePage(This,puiCodePage) #define IQueryCodePage_SetCodePage(This,uiCodePage) (This)->lpVtbl->SetCodePage(This,uiCodePage) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IQueryCodePage_QueryInterface(IQueryCodePage* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IQueryCodePage_AddRef(IQueryCodePage* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IQueryCodePage_Release(IQueryCodePage* This) { return This->lpVtbl->Release(This); } /*** IQueryCodePage methods ***/ static FORCEINLINE HRESULT IQueryCodePage_GetCodePage(IQueryCodePage* This,UINT *puiCodePage) { return This->lpVtbl->GetCodePage(This,puiCodePage); } static FORCEINLINE HRESULT IQueryCodePage_SetCodePage(IQueryCodePage* This,UINT uiCodePage) { return This->lpVtbl->SetCodePage(This,uiCodePage); } #endif #endif #endif #endif /* __IQueryCodePage_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistFolder2 interface */ #ifndef __IPersistFolder2_INTERFACE_DEFINED__ #define __IPersistFolder2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1ac3d9f0-175c-11d1-95be-00609797ea4f") IPersistFolder2 : public IPersistFolder { virtual HRESULT STDMETHODCALLTYPE GetCurFolder( PIDLIST_ABSOLUTE *ppidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f) #endif #else typedef struct IPersistFolder2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistFolder2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistFolder2 *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistFolder2 *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistFolder2 *This, CLSID *pClassID); /*** IPersistFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPersistFolder2 *This, PCIDLIST_ABSOLUTE pidl); /*** IPersistFolder2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurFolder)( IPersistFolder2 *This, PIDLIST_ABSOLUTE *ppidl); END_INTERFACE } IPersistFolder2Vtbl; interface IPersistFolder2 { CONST_VTBL IPersistFolder2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistFolder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistFolder2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistFolder2_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistFolder2_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistFolder methods ***/ #define IPersistFolder2_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) /*** IPersistFolder2 methods ***/ #define IPersistFolder2_GetCurFolder(This,ppidl) (This)->lpVtbl->GetCurFolder(This,ppidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPersistFolder2_QueryInterface(IPersistFolder2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPersistFolder2_AddRef(IPersistFolder2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPersistFolder2_Release(IPersistFolder2* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static FORCEINLINE HRESULT IPersistFolder2_GetClassID(IPersistFolder2* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistFolder methods ***/ static FORCEINLINE HRESULT IPersistFolder2_Initialize(IPersistFolder2* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->Initialize(This,pidl); } /*** IPersistFolder2 methods ***/ static FORCEINLINE HRESULT IPersistFolder2_GetCurFolder(IPersistFolder2* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetCurFolder(This,ppidl); } #endif #endif #endif #endif /* __IPersistFolder2_INTERFACE_DEFINED__ */ #define CSIDL_FLAG_PFTI_TRACKTARGET CSIDL_FLAG_DONT_VERIFY #include typedef struct _PERSIST_FOLDER_TARGET_INFO { PIDLIST_ABSOLUTE pidlTargetFolder; WCHAR szTargetParsingName[260]; WCHAR szNetworkProvider[260]; DWORD dwAttributes; int csidl; } PERSIST_FOLDER_TARGET_INFO; #include /***************************************************************************** * IPersistFolder3 interface */ #ifndef __IPersistFolder3_INTERFACE_DEFINED__ #define __IPersistFolder3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87,0xa5, 0x00,0xc0,0x4f,0x68,0x37,0xcf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cef04fdf-fe72-11d2-87a5-00c04f6837cf") IPersistFolder3 : public IPersistFolder2 { virtual HRESULT STDMETHODCALLTYPE InitializeEx( IBindCtx *pbc, PCIDLIST_ABSOLUTE pidlRoot, const PERSIST_FOLDER_TARGET_INFO *ppfti) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderTargetInfo( PERSIST_FOLDER_TARGET_INFO *ppfti) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87,0xa5, 0x00,0xc0,0x4f,0x68,0x37,0xcf) #endif #else typedef struct IPersistFolder3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistFolder3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistFolder3 *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistFolder3 *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistFolder3 *This, CLSID *pClassID); /*** IPersistFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPersistFolder3 *This, PCIDLIST_ABSOLUTE pidl); /*** IPersistFolder2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurFolder)( IPersistFolder3 *This, PIDLIST_ABSOLUTE *ppidl); /*** IPersistFolder3 methods ***/ HRESULT (STDMETHODCALLTYPE *InitializeEx)( IPersistFolder3 *This, IBindCtx *pbc, PCIDLIST_ABSOLUTE pidlRoot, const PERSIST_FOLDER_TARGET_INFO *ppfti); HRESULT (STDMETHODCALLTYPE *GetFolderTargetInfo)( IPersistFolder3 *This, PERSIST_FOLDER_TARGET_INFO *ppfti); END_INTERFACE } IPersistFolder3Vtbl; interface IPersistFolder3 { CONST_VTBL IPersistFolder3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistFolder3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistFolder3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistFolder3_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistFolder3_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistFolder methods ***/ #define IPersistFolder3_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) /*** IPersistFolder2 methods ***/ #define IPersistFolder3_GetCurFolder(This,ppidl) (This)->lpVtbl->GetCurFolder(This,ppidl) /*** IPersistFolder3 methods ***/ #define IPersistFolder3_InitializeEx(This,pbc,pidlRoot,ppfti) (This)->lpVtbl->InitializeEx(This,pbc,pidlRoot,ppfti) #define IPersistFolder3_GetFolderTargetInfo(This,ppfti) (This)->lpVtbl->GetFolderTargetInfo(This,ppfti) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPersistFolder3_QueryInterface(IPersistFolder3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPersistFolder3_AddRef(IPersistFolder3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPersistFolder3_Release(IPersistFolder3* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static FORCEINLINE HRESULT IPersistFolder3_GetClassID(IPersistFolder3* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistFolder methods ***/ static FORCEINLINE HRESULT IPersistFolder3_Initialize(IPersistFolder3* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->Initialize(This,pidl); } /*** IPersistFolder2 methods ***/ static FORCEINLINE HRESULT IPersistFolder3_GetCurFolder(IPersistFolder3* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetCurFolder(This,ppidl); } /*** IPersistFolder3 methods ***/ static FORCEINLINE HRESULT IPersistFolder3_InitializeEx(IPersistFolder3* This,IBindCtx *pbc,PCIDLIST_ABSOLUTE pidlRoot,const PERSIST_FOLDER_TARGET_INFO *ppfti) { return This->lpVtbl->InitializeEx(This,pbc,pidlRoot,ppfti); } static FORCEINLINE HRESULT IPersistFolder3_GetFolderTargetInfo(IPersistFolder3* This,PERSIST_FOLDER_TARGET_INFO *ppfti) { return This->lpVtbl->GetFolderTargetInfo(This,ppfti); } #endif #endif #endif #endif /* __IPersistFolder3_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistIDList interface */ #ifndef __IPersistIDList_INTERFACE_DEFINED__ #define __IPersistIDList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistIDList, 0x1079acfc, 0x29bd, 0x11d3, 0x8e,0x0d, 0x00,0xc0,0x4f,0x68,0x37,0xd5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1079acfc-29bd-11d3-8e0d-00c04f6837d5") IPersistIDList : public IPersist { virtual HRESULT STDMETHODCALLTYPE SetIDList( PCIDLIST_ABSOLUTE pidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( PIDLIST_ABSOLUTE *ppidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistIDList, 0x1079acfc, 0x29bd, 0x11d3, 0x8e,0x0d, 0x00,0xc0,0x4f,0x68,0x37,0xd5) #endif #else typedef struct IPersistIDListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistIDList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistIDList *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistIDList *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistIDList *This, CLSID *pClassID); /*** IPersistIDList methods ***/ HRESULT (STDMETHODCALLTYPE *SetIDList)( IPersistIDList *This, PCIDLIST_ABSOLUTE pidl); HRESULT (STDMETHODCALLTYPE *GetIDList)( IPersistIDList *This, PIDLIST_ABSOLUTE *ppidl); END_INTERFACE } IPersistIDListVtbl; interface IPersistIDList { CONST_VTBL IPersistIDListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistIDList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistIDList_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistIDList_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistIDList methods ***/ #define IPersistIDList_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) #define IPersistIDList_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPersistIDList_QueryInterface(IPersistIDList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPersistIDList_AddRef(IPersistIDList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPersistIDList_Release(IPersistIDList* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static FORCEINLINE HRESULT IPersistIDList_GetClassID(IPersistIDList* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistIDList methods ***/ static FORCEINLINE HRESULT IPersistIDList_SetIDList(IPersistIDList* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->SetIDList(This,pidl); } static FORCEINLINE HRESULT IPersistIDList_GetIDList(IPersistIDList* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } #endif #endif #endif #endif /* __IPersistIDList_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumIDList interface */ #ifndef __IEnumIDList_INTERFACE_DEFINED__ #define __IEnumIDList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f2-0000-0000-c000-000000000046") IEnumIDList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, PITEMID_CHILD *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumIDList **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IEnumIDListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumIDList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumIDList *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumIDList *This); /*** IEnumIDList methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumIDList *This, ULONG celt, PITEMID_CHILD *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumIDList *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumIDList *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumIDList *This, IEnumIDList **ppenum); END_INTERFACE } IEnumIDListVtbl; interface IEnumIDList { CONST_VTBL IEnumIDListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumIDList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumIDList_Release(This) (This)->lpVtbl->Release(This) /*** IEnumIDList methods ***/ #define IEnumIDList_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumIDList_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumIDList_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumIDList_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumIDList_QueryInterface(IEnumIDList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumIDList_AddRef(IEnumIDList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumIDList_Release(IEnumIDList* This) { return This->lpVtbl->Release(This); } /*** IEnumIDList methods ***/ static FORCEINLINE HRESULT IEnumIDList_Next(IEnumIDList* This,ULONG celt,PITEMID_CHILD *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumIDList_Skip(IEnumIDList* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumIDList_Reset(IEnumIDList* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumIDList_Clone(IEnumIDList* This,IEnumIDList **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumIDList_RemoteNext_Proxy( IEnumIDList* This, ULONG celt, PITEMID_CHILD *rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumIDList_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumIDList_Next_Proxy( IEnumIDList* This, ULONG celt, PITEMID_CHILD *rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumIDList_Next_Stub( IEnumIDList* This, ULONG celt, PITEMID_CHILD *rgelt, ULONG *pceltFetched); #endif /* __IEnumIDList_INTERFACE_DEFINED__ */ typedef IEnumIDList *LPENUMIDLIST; /***************************************************************************** * IEnumFullIDList interface */ #ifndef __IEnumFullIDList_INTERFACE_DEFINED__ #define __IEnumFullIDList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumFullIDList, 0xd0191542, 0x7954, 0x4908, 0xbc,0x06, 0xb2,0x36,0x0b,0xbe,0x45,0xba); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d0191542-7954-4908-bc06-b2360bbe45ba") IEnumFullIDList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, PIDLIST_ABSOLUTE *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumFullIDList **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumFullIDList, 0xd0191542, 0x7954, 0x4908, 0xbc,0x06, 0xb2,0x36,0x0b,0xbe,0x45,0xba) #endif #else typedef struct IEnumFullIDListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumFullIDList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumFullIDList *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumFullIDList *This); /*** IEnumFullIDList methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumFullIDList *This, ULONG celt, PIDLIST_ABSOLUTE *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumFullIDList *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumFullIDList *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumFullIDList *This, IEnumFullIDList **ppenum); END_INTERFACE } IEnumFullIDListVtbl; interface IEnumFullIDList { CONST_VTBL IEnumFullIDListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumFullIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumFullIDList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumFullIDList_Release(This) (This)->lpVtbl->Release(This) /*** IEnumFullIDList methods ***/ #define IEnumFullIDList_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumFullIDList_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumFullIDList_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumFullIDList_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumFullIDList_QueryInterface(IEnumFullIDList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumFullIDList_AddRef(IEnumFullIDList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumFullIDList_Release(IEnumFullIDList* This) { return This->lpVtbl->Release(This); } /*** IEnumFullIDList methods ***/ static FORCEINLINE HRESULT IEnumFullIDList_Next(IEnumFullIDList* This,ULONG celt,PIDLIST_ABSOLUTE *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumFullIDList_Skip(IEnumFullIDList* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumFullIDList_Reset(IEnumFullIDList* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumFullIDList_Clone(IEnumFullIDList* This,IEnumFullIDList **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumFullIDList_RemoteNext_Proxy( IEnumFullIDList* This, ULONG celt, PIDLIST_ABSOLUTE *rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumFullIDList_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumFullIDList_Next_Proxy( IEnumFullIDList* This, ULONG celt, PIDLIST_ABSOLUTE *rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumFullIDList_Next_Stub( IEnumFullIDList* This, ULONG celt, PIDLIST_ABSOLUTE *rgelt, ULONG *pceltFetched); #endif /* __IEnumFullIDList_INTERFACE_DEFINED__ */ enum _SHGDNF { SHGDN_NORMAL = 0x0, SHGDN_INFOLDER = 0x1, SHGDN_FOREDITING = 0x1000, SHGDN_FORADDRESSBAR = 0x4000, SHGDN_FORPARSING = 0x8000 }; typedef DWORD SHGDNF; enum _SHCONTF { SHCONTF_CHECKING_FOR_CHILDREN = 0x10, SHCONTF_FOLDERS = 0x20, SHCONTF_NONFOLDERS = 0x40, SHCONTF_INCLUDEHIDDEN = 0x80, SHCONTF_INIT_ON_FIRST_NEXT = 0x100, SHCONTF_NETPRINTERSRCH = 0x200, SHCONTF_SHAREABLE = 0x400, SHCONTF_STORAGE = 0x800, SHCONTF_NAVIGATION_ENUM = 0x1000, SHCONTF_FASTITEMS = 0x2000, SHCONTF_FLATLIST = 0x4000, SHCONTF_ENABLE_ASYNC = 0x8000, SHCONTF_INCLUDESUPERHIDDEN = 0x10000 }; typedef DWORD SHCONTF; #define SHCIDS_ALLFIELDS __MSABI_LONG(0x80000000) #define SHCIDS_CANONICALONLY __MSABI_LONG(0x10000000) #define SHCIDS_BITMASK __MSABI_LONG(0xffff0000) #define SHCIDS_COLUMNMASK __MSABI_LONG(0x0000ffff) #define SFGAO_CANCOPY DROPEFFECT_COPY #define SFGAO_CANMOVE DROPEFFECT_MOVE #define SFGAO_CANLINK DROPEFFECT_LINK #define SFGAO_STORAGE __MSABI_LONG(0x8) #define SFGAO_CANRENAME __MSABI_LONG(0x10) #define SFGAO_CANDELETE __MSABI_LONG(0x20) #define SFGAO_HASPROPSHEET __MSABI_LONG(0x40) #define SFGAO_DROPTARGET __MSABI_LONG(0x100) #define SFGAO_CAPABILITYMASK __MSABI_LONG(0x177) #define SFGAO_SYSTEM __MSABI_LONG(0x1000) #define SFGAO_ENCRYPTED __MSABI_LONG(0x2000) #define SFGAO_ISSLOW __MSABI_LONG(0x4000) #define SFGAO_GHOSTED __MSABI_LONG(0x8000) #define SFGAO_LINK __MSABI_LONG(0x10000) #define SFGAO_SHARE __MSABI_LONG(0x20000) #define SFGAO_READONLY __MSABI_LONG(0x40000) #define SFGAO_HIDDEN __MSABI_LONG(0x80000) #define SFGAO_DISPLAYATTRMASK __MSABI_LONG(0xfc000) #define SFGAO_FILESYSANCESTOR __MSABI_LONG(0x10000000) #define SFGAO_FOLDER __MSABI_LONG(0x20000000) #define SFGAO_FILESYSTEM __MSABI_LONG(0x40000000) #define SFGAO_HASSUBFOLDER __MSABI_LONG(0x80000000) #define SFGAO_CONTENTSMASK __MSABI_LONG(0x80000000) #define SFGAO_VALIDATE __MSABI_LONG(0x1000000) #define SFGAO_REMOVABLE __MSABI_LONG(0x2000000) #define SFGAO_COMPRESSED __MSABI_LONG(0x4000000) #define SFGAO_BROWSABLE __MSABI_LONG(0x8000000) #define SFGAO_NONENUMERATED __MSABI_LONG(0x100000) #define SFGAO_NEWCONTENT __MSABI_LONG(0x200000) #define SFGAO_CANMONIKER __MSABI_LONG(0x400000) #define SFGAO_HASSTORAGE __MSABI_LONG(0x400000) #define SFGAO_STREAM __MSABI_LONG(0x400000) #define SFGAO_STORAGEANCESTOR __MSABI_LONG(0x00800000) #define SFGAO_STORAGECAPMASK __MSABI_LONG(0x70c50008) #define SFGAO_PKEYSFGAOMASK __MSABI_LONG(0x81044000) typedef ULONG SFGAOF; #define STR_BIND_FORCE_FOLDER_SHORTCUT_RESOLVE L"Force Folder Shortcut Resolve" #define STR_AVOID_DRIVE_RESTRICTION_POLICY L"Avoid Drive Restriction Policy" #define STR_AVOID_DRIVE_RESTRICTION_POLICY L"Avoid Drive Restriction Policy" #define STR_SKIP_BINDING_CLSID L"Skip Binding CLSID" #define STR_PARSE_PREFER_FOLDER_BROWSING L"Parse Prefer Folder Browsing" #define STR_DONT_PARSE_RELATIVE L"Don't Parse Relative" #define STR_PARSE_TRANSLATE_ALIASES L"Parse Translate Aliases" #define STR_PARSE_SKIP_NET_CACHE L"Skip Net Resource Cache" #define STR_PARSE_SHELL_PROTOCOL_TO_FILE_OBJECTS L"Parse Shell Protocol To File Objects" #if _WIN32_IE >= 0x0700 #define STR_TRACK_CLSID L"Track the CLSID" #define STR_INTERNAL_NAVIGATE L"Internal Navigation" #define STR_PARSE_PROPERTYSTORE L"DelegateNamedProperties" #define STR_NO_VALIDATE_FILENAME_CHARS L"NoValidateFilenameChars" #define STR_BIND_DELEGATE_CREATE_OBJECT L"Delegate Object Creation" #define STR_PARSE_ALLOW_INTERNET_SHELL_FOLDERS L"Allow binding to Internet shell folder handlers and negate STR_PARSE_PREFER_WEB_BROWSING" #define STR_PARSE_PREFER_WEB_BROWSING L"Do not bind to Internet shell folder handlers" #define STR_PARSE_SHOW_NET_DIAGNOSTICS_UI L"Show network diagnostics UI" #define STR_PARSE_DONT_REQUIRE_VALIDATED_URLS L"Do not require validated URLs" #define STR_INTERNETFOLDER_PARSE_ONLY_URLMON_BINDABLE L"Validate URL" #endif #if NTDDI_VERSION >= NTDDI_WIN8 #define BIND_INTERRUPTABLE 0xffffffff #endif #if NTDDI_VERSION >= NTDDI_WIN7 #define STR_BIND_FOLDERS_READ_ONLY L"Folders As Read Only" #define STR_BIND_FOLDER_ENUM_MODE L"Folder Enum Mode" typedef enum FOLDER_ENUM_MODE { FEM_VIEWRESULT = 0, FEM_NAVIGATION = 1 } FOLDER_ENUM_MODE; /***************************************************************************** * IObjectWithFolderEnumMode interface */ #ifndef __IObjectWithFolderEnumMode_INTERFACE_DEFINED__ #define __IObjectWithFolderEnumMode_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithFolderEnumMode, 0x6a9d9026, 0x0e6e, 0x464c, 0xb0,0x00, 0x42,0xec,0xc0,0x7d,0xe6,0x73); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6a9d9026-0e6e-464c-b000-42ecc07de673") IObjectWithFolderEnumMode : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetMode( FOLDER_ENUM_MODE feMode) = 0; virtual HRESULT STDMETHODCALLTYPE GetMode( FOLDER_ENUM_MODE *pfeMode) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithFolderEnumMode, 0x6a9d9026, 0x0e6e, 0x464c, 0xb0,0x00, 0x42,0xec,0xc0,0x7d,0xe6,0x73) #endif #else typedef struct IObjectWithFolderEnumModeVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithFolderEnumMode *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithFolderEnumMode *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithFolderEnumMode *This); /*** IObjectWithFolderEnumMode methods ***/ HRESULT (STDMETHODCALLTYPE *SetMode)( IObjectWithFolderEnumMode *This, FOLDER_ENUM_MODE feMode); HRESULT (STDMETHODCALLTYPE *GetMode)( IObjectWithFolderEnumMode *This, FOLDER_ENUM_MODE *pfeMode); END_INTERFACE } IObjectWithFolderEnumModeVtbl; interface IObjectWithFolderEnumMode { CONST_VTBL IObjectWithFolderEnumModeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithFolderEnumMode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithFolderEnumMode_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithFolderEnumMode_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithFolderEnumMode methods ***/ #define IObjectWithFolderEnumMode_SetMode(This,feMode) (This)->lpVtbl->SetMode(This,feMode) #define IObjectWithFolderEnumMode_GetMode(This,pfeMode) (This)->lpVtbl->GetMode(This,pfeMode) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithFolderEnumMode_QueryInterface(IObjectWithFolderEnumMode* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithFolderEnumMode_AddRef(IObjectWithFolderEnumMode* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithFolderEnumMode_Release(IObjectWithFolderEnumMode* This) { return This->lpVtbl->Release(This); } /*** IObjectWithFolderEnumMode methods ***/ static FORCEINLINE HRESULT IObjectWithFolderEnumMode_SetMode(IObjectWithFolderEnumMode* This,FOLDER_ENUM_MODE feMode) { return This->lpVtbl->SetMode(This,feMode); } static FORCEINLINE HRESULT IObjectWithFolderEnumMode_GetMode(IObjectWithFolderEnumMode* This,FOLDER_ENUM_MODE *pfeMode) { return This->lpVtbl->GetMode(This,pfeMode); } #endif #endif #endif #endif /* __IObjectWithFolderEnumMode_INTERFACE_DEFINED__ */ #define STR_PARSE_WITH_EXPLICIT_PROGID L"ExplicitProgid" #define STR_PARSE_WITH_EXPLICIT_ASSOCAPP L"ExplicitAssociationApp" #define STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFUL L"ExplicitAssociationSuccessful" #define STR_PARSE_AND_CREATE_ITEM L"ParseAndCreateItem" #define STR_PROPERTYBAG_PARAM L"SHBindCtxPropertyBag" #define STR_ENUM_ITEMS_FLAGS L"SHCONTF" #ifndef __IShellItem_FWD_DEFINED__ #define __IShellItem_FWD_DEFINED__ typedef interface IShellItem IShellItem; #ifdef __cplusplus interface IShellItem; #endif /* __cplusplus */ #endif /***************************************************************************** * IParseAndCreateItem interface */ #ifndef __IParseAndCreateItem_INTERFACE_DEFINED__ #define __IParseAndCreateItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IParseAndCreateItem, 0x67efed0e, 0xe827, 0x4408, 0xb4,0x93, 0x78,0xf3,0x98,0x2b,0x68,0x5c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("67efed0e-e827-4408-b493-78f3982b685c") IParseAndCreateItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE GetItem( REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IParseAndCreateItem, 0x67efed0e, 0xe827, 0x4408, 0xb4,0x93, 0x78,0xf3,0x98,0x2b,0x68,0x5c) #endif #else typedef struct IParseAndCreateItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IParseAndCreateItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IParseAndCreateItem *This); ULONG (STDMETHODCALLTYPE *Release)( IParseAndCreateItem *This); /*** IParseAndCreateItem methods ***/ HRESULT (STDMETHODCALLTYPE *SetItem)( IParseAndCreateItem *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetItem)( IParseAndCreateItem *This, REFIID riid, void **ppv); END_INTERFACE } IParseAndCreateItemVtbl; interface IParseAndCreateItem { CONST_VTBL IParseAndCreateItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IParseAndCreateItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IParseAndCreateItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IParseAndCreateItem_Release(This) (This)->lpVtbl->Release(This) /*** IParseAndCreateItem methods ***/ #define IParseAndCreateItem_SetItem(This,psi) (This)->lpVtbl->SetItem(This,psi) #define IParseAndCreateItem_GetItem(This,riid,ppv) (This)->lpVtbl->GetItem(This,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IParseAndCreateItem_QueryInterface(IParseAndCreateItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IParseAndCreateItem_AddRef(IParseAndCreateItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IParseAndCreateItem_Release(IParseAndCreateItem* This) { return This->lpVtbl->Release(This); } /*** IParseAndCreateItem methods ***/ static FORCEINLINE HRESULT IParseAndCreateItem_SetItem(IParseAndCreateItem* This,IShellItem *psi) { return This->lpVtbl->SetItem(This,psi); } static FORCEINLINE HRESULT IParseAndCreateItem_GetItem(IParseAndCreateItem* This,REFIID riid,void **ppv) { return This->lpVtbl->GetItem(This,riid,ppv); } #endif #endif #endif #endif /* __IParseAndCreateItem_INTERFACE_DEFINED__ */ #define STR_ITEM_CACHE_CONTEXT L"ItemCacheContext" #endif #ifndef __IShellFolder_FWD_DEFINED__ #define __IShellFolder_FWD_DEFINED__ typedef interface IShellFolder IShellFolder; #ifdef __cplusplus interface IShellFolder; #endif /* __cplusplus */ #endif /***************************************************************************** * IShellFolder interface */ #ifndef __IShellFolder_INTERFACE_DEFINED__ #define __IShellFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e6-0000-0000-c000-000000000046") IShellFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ParseDisplayName( HWND hwnd, IBindCtx *pbc, LPWSTR pszDisplayName, ULONG *pchEaten, PIDLIST_RELATIVE *ppidl, ULONG *pdwAttributes) = 0; virtual HRESULT STDMETHODCALLTYPE EnumObjects( HWND hwnd, SHCONTF grfFlags, IEnumIDList **ppenumIDList) = 0; virtual HRESULT STDMETHODCALLTYPE BindToObject( PCUIDLIST_RELATIVE pidl, IBindCtx *pbc, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE BindToStorage( PCUIDLIST_RELATIVE pidl, IBindCtx *pbc, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE CompareIDs( LPARAM lParam, PCUIDLIST_RELATIVE pidl1, PCUIDLIST_RELATIVE pidl2) = 0; virtual HRESULT STDMETHODCALLTYPE CreateViewObject( HWND hwndOwner, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetAttributesOf( UINT cidl, PCUITEMID_CHILD_ARRAY apidl, SFGAOF *rgfInOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetUIObjectOf( HWND hwndOwner, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, REFIID riid, UINT *rgfReserved, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayNameOf( PCUITEMID_CHILD pidl, SHGDNF uFlags, STRRET *pName) = 0; virtual HRESULT STDMETHODCALLTYPE SetNameOf( HWND hwnd, PCUITEMID_CHILD pidl, LPCWSTR pszName, SHGDNF uFlags, PITEMID_CHILD *ppidlOut) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IShellFolder *This); /*** IShellFolder methods ***/ HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( IShellFolder *This, HWND hwnd, IBindCtx *pbc, LPWSTR pszDisplayName, ULONG *pchEaten, PIDLIST_RELATIVE *ppidl, ULONG *pdwAttributes); HRESULT (STDMETHODCALLTYPE *EnumObjects)( IShellFolder *This, HWND hwnd, SHCONTF grfFlags, IEnumIDList **ppenumIDList); HRESULT (STDMETHODCALLTYPE *BindToObject)( IShellFolder *This, PCUIDLIST_RELATIVE pidl, IBindCtx *pbc, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *BindToStorage)( IShellFolder *This, PCUIDLIST_RELATIVE pidl, IBindCtx *pbc, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CompareIDs)( IShellFolder *This, LPARAM lParam, PCUIDLIST_RELATIVE pidl1, PCUIDLIST_RELATIVE pidl2); HRESULT (STDMETHODCALLTYPE *CreateViewObject)( IShellFolder *This, HWND hwndOwner, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetAttributesOf)( IShellFolder *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, SFGAOF *rgfInOut); HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)( IShellFolder *This, HWND hwndOwner, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, REFIID riid, UINT *rgfReserved, void **ppv); HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)( IShellFolder *This, PCUITEMID_CHILD pidl, SHGDNF uFlags, STRRET *pName); HRESULT (STDMETHODCALLTYPE *SetNameOf)( IShellFolder *This, HWND hwnd, PCUITEMID_CHILD pidl, LPCWSTR pszName, SHGDNF uFlags, PITEMID_CHILD *ppidlOut); END_INTERFACE } IShellFolderVtbl; interface IShellFolder { CONST_VTBL IShellFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellFolder_Release(This) (This)->lpVtbl->Release(This) /*** IShellFolder methods ***/ #define IShellFolder_ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) (This)->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) #define IShellFolder_EnumObjects(This,hwnd,grfFlags,ppenumIDList) (This)->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList) #define IShellFolder_BindToObject(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv) #define IShellFolder_BindToStorage(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv) #define IShellFolder_CompareIDs(This,lParam,pidl1,pidl2) (This)->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2) #define IShellFolder_CreateViewObject(This,hwndOwner,riid,ppv) (This)->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv) #define IShellFolder_GetAttributesOf(This,cidl,apidl,rgfInOut) (This)->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut) #define IShellFolder_GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) (This)->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) #define IShellFolder_GetDisplayNameOf(This,pidl,uFlags,pName) (This)->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName) #define IShellFolder_SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) (This)->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellFolder_QueryInterface(IShellFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellFolder_AddRef(IShellFolder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellFolder_Release(IShellFolder* This) { return This->lpVtbl->Release(This); } /*** IShellFolder methods ***/ static FORCEINLINE HRESULT IShellFolder_ParseDisplayName(IShellFolder* This,HWND hwnd,IBindCtx *pbc,LPWSTR pszDisplayName,ULONG *pchEaten,PIDLIST_RELATIVE *ppidl,ULONG *pdwAttributes) { return This->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes); } static FORCEINLINE HRESULT IShellFolder_EnumObjects(IShellFolder* This,HWND hwnd,SHCONTF grfFlags,IEnumIDList **ppenumIDList) { return This->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList); } static FORCEINLINE HRESULT IShellFolder_BindToObject(IShellFolder* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { return This->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv); } static FORCEINLINE HRESULT IShellFolder_BindToStorage(IShellFolder* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { return This->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv); } static FORCEINLINE HRESULT IShellFolder_CompareIDs(IShellFolder* This,LPARAM lParam,PCUIDLIST_RELATIVE pidl1,PCUIDLIST_RELATIVE pidl2) { return This->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2); } static FORCEINLINE HRESULT IShellFolder_CreateViewObject(IShellFolder* This,HWND hwndOwner,REFIID riid,void **ppv) { return This->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv); } static FORCEINLINE HRESULT IShellFolder_GetAttributesOf(IShellFolder* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,SFGAOF *rgfInOut) { return This->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut); } static FORCEINLINE HRESULT IShellFolder_GetUIObjectOf(IShellFolder* This,HWND hwndOwner,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,REFIID riid,UINT *rgfReserved,void **ppv) { return This->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv); } static FORCEINLINE HRESULT IShellFolder_GetDisplayNameOf(IShellFolder* This,PCUITEMID_CHILD pidl,SHGDNF uFlags,STRRET *pName) { return This->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName); } static FORCEINLINE HRESULT IShellFolder_SetNameOf(IShellFolder* This,HWND hwnd,PCUITEMID_CHILD pidl,LPCWSTR pszName,SHGDNF uFlags,PITEMID_CHILD *ppidlOut) { return This->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IShellFolder_RemoteSetNameOf_Proxy( IShellFolder* This, HWND hwnd, PCUITEMID_CHILD pidl, LPCWSTR pszName, SHGDNF uFlags, PITEMID_CHILD *ppidlOut); void __RPC_STUB IShellFolder_RemoteSetNameOf_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IShellFolder_SetNameOf_Proxy( IShellFolder* This, HWND hwnd, PCUITEMID_CHILD pidl, LPCWSTR pszName, SHGDNF uFlags, PITEMID_CHILD *ppidlOut); HRESULT __RPC_STUB IShellFolder_SetNameOf_Stub( IShellFolder* This, HWND hwnd, PCUITEMID_CHILD pidl, LPCWSTR pszName, SHGDNF uFlags, PITEMID_CHILD *ppidlOut); #endif /* __IShellFolder_INTERFACE_DEFINED__ */ typedef IShellFolder *LPSHELLFOLDER; typedef struct EXTRASEARCH { GUID guidSearch; WCHAR wszFriendlyName[80]; WCHAR wszUrl[2084]; } EXTRASEARCH; typedef struct EXTRASEARCH *LPEXTRASEARCH; /***************************************************************************** * IEnumExtraSearch interface */ #ifndef __IEnumExtraSearch_INTERFACE_DEFINED__ #define __IEnumExtraSearch_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0e700be1-9db6-11d1-a1ce-00c04fd75d13") IEnumExtraSearch : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, EXTRASEARCH *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumExtraSearch **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13) #endif #else typedef struct IEnumExtraSearchVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumExtraSearch *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumExtraSearch *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumExtraSearch *This); /*** IEnumExtraSearch methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumExtraSearch *This, ULONG celt, EXTRASEARCH *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumExtraSearch *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumExtraSearch *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumExtraSearch *This, IEnumExtraSearch **ppenum); END_INTERFACE } IEnumExtraSearchVtbl; interface IEnumExtraSearch { CONST_VTBL IEnumExtraSearchVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumExtraSearch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumExtraSearch_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumExtraSearch_Release(This) (This)->lpVtbl->Release(This) /*** IEnumExtraSearch methods ***/ #define IEnumExtraSearch_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumExtraSearch_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumExtraSearch_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumExtraSearch_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumExtraSearch_QueryInterface(IEnumExtraSearch* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumExtraSearch_AddRef(IEnumExtraSearch* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumExtraSearch_Release(IEnumExtraSearch* This) { return This->lpVtbl->Release(This); } /*** IEnumExtraSearch methods ***/ static FORCEINLINE HRESULT IEnumExtraSearch_Next(IEnumExtraSearch* This,ULONG celt,EXTRASEARCH *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumExtraSearch_Skip(IEnumExtraSearch* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumExtraSearch_Reset(IEnumExtraSearch* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumExtraSearch_Clone(IEnumExtraSearch* This,IEnumExtraSearch **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif #endif /* __IEnumExtraSearch_INTERFACE_DEFINED__ */ typedef IEnumExtraSearch *LPENUMEXTRASEARCH; /***************************************************************************** * IShellFolder2 interface */ #ifndef __IShellFolder2_INTERFACE_DEFINED__ #define __IShellFolder2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("93f2f68c-1d1b-11d3-a30e-00c04f79abd1") IShellFolder2 : public IShellFolder { virtual HRESULT STDMETHODCALLTYPE GetDefaultSearchGUID( GUID *pguid) = 0; virtual HRESULT STDMETHODCALLTYPE EnumSearches( IEnumExtraSearch **ppenum) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultColumn( DWORD dwRes, ULONG *pSort, ULONG *pDisplay) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnState( UINT iColumn, SHCOLSTATEF *pcsFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetDetailsEx( PCUITEMID_CHILD pidl, const SHCOLUMNID *pscid, VARIANT *pv) = 0; virtual HRESULT STDMETHODCALLTYPE GetDetailsOf( PCUITEMID_CHILD pidl, UINT iColumn, SHELLDETAILS *psd) = 0; virtual HRESULT STDMETHODCALLTYPE MapColumnToSCID( UINT iColumn, SHCOLUMNID *pscid) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1) #endif #else typedef struct IShellFolder2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellFolder2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellFolder2 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellFolder2 *This); /*** IShellFolder methods ***/ HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( IShellFolder2 *This, HWND hwnd, IBindCtx *pbc, LPWSTR pszDisplayName, ULONG *pchEaten, PIDLIST_RELATIVE *ppidl, ULONG *pdwAttributes); HRESULT (STDMETHODCALLTYPE *EnumObjects)( IShellFolder2 *This, HWND hwnd, SHCONTF grfFlags, IEnumIDList **ppenumIDList); HRESULT (STDMETHODCALLTYPE *BindToObject)( IShellFolder2 *This, PCUIDLIST_RELATIVE pidl, IBindCtx *pbc, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *BindToStorage)( IShellFolder2 *This, PCUIDLIST_RELATIVE pidl, IBindCtx *pbc, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CompareIDs)( IShellFolder2 *This, LPARAM lParam, PCUIDLIST_RELATIVE pidl1, PCUIDLIST_RELATIVE pidl2); HRESULT (STDMETHODCALLTYPE *CreateViewObject)( IShellFolder2 *This, HWND hwndOwner, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetAttributesOf)( IShellFolder2 *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, SFGAOF *rgfInOut); HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)( IShellFolder2 *This, HWND hwndOwner, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, REFIID riid, UINT *rgfReserved, void **ppv); HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)( IShellFolder2 *This, PCUITEMID_CHILD pidl, SHGDNF uFlags, STRRET *pName); HRESULT (STDMETHODCALLTYPE *SetNameOf)( IShellFolder2 *This, HWND hwnd, PCUITEMID_CHILD pidl, LPCWSTR pszName, SHGDNF uFlags, PITEMID_CHILD *ppidlOut); /*** IShellFolder2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDefaultSearchGUID)( IShellFolder2 *This, GUID *pguid); HRESULT (STDMETHODCALLTYPE *EnumSearches)( IShellFolder2 *This, IEnumExtraSearch **ppenum); HRESULT (STDMETHODCALLTYPE *GetDefaultColumn)( IShellFolder2 *This, DWORD dwRes, ULONG *pSort, ULONG *pDisplay); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnState)( IShellFolder2 *This, UINT iColumn, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetDetailsEx)( IShellFolder2 *This, PCUITEMID_CHILD pidl, const SHCOLUMNID *pscid, VARIANT *pv); HRESULT (STDMETHODCALLTYPE *GetDetailsOf)( IShellFolder2 *This, PCUITEMID_CHILD pidl, UINT iColumn, SHELLDETAILS *psd); HRESULT (STDMETHODCALLTYPE *MapColumnToSCID)( IShellFolder2 *This, UINT iColumn, SHCOLUMNID *pscid); END_INTERFACE } IShellFolder2Vtbl; interface IShellFolder2 { CONST_VTBL IShellFolder2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellFolder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellFolder2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellFolder2_Release(This) (This)->lpVtbl->Release(This) /*** IShellFolder methods ***/ #define IShellFolder2_ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) (This)->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) #define IShellFolder2_EnumObjects(This,hwnd,grfFlags,ppenumIDList) (This)->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList) #define IShellFolder2_BindToObject(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv) #define IShellFolder2_BindToStorage(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv) #define IShellFolder2_CompareIDs(This,lParam,pidl1,pidl2) (This)->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2) #define IShellFolder2_CreateViewObject(This,hwndOwner,riid,ppv) (This)->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv) #define IShellFolder2_GetAttributesOf(This,cidl,apidl,rgfInOut) (This)->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut) #define IShellFolder2_GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) (This)->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) #define IShellFolder2_GetDisplayNameOf(This,pidl,uFlags,pName) (This)->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName) #define IShellFolder2_SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) (This)->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) /*** IShellFolder2 methods ***/ #define IShellFolder2_GetDefaultSearchGUID(This,pguid) (This)->lpVtbl->GetDefaultSearchGUID(This,pguid) #define IShellFolder2_EnumSearches(This,ppenum) (This)->lpVtbl->EnumSearches(This,ppenum) #define IShellFolder2_GetDefaultColumn(This,dwRes,pSort,pDisplay) (This)->lpVtbl->GetDefaultColumn(This,dwRes,pSort,pDisplay) #define IShellFolder2_GetDefaultColumnState(This,iColumn,pcsFlags) (This)->lpVtbl->GetDefaultColumnState(This,iColumn,pcsFlags) #define IShellFolder2_GetDetailsEx(This,pidl,pscid,pv) (This)->lpVtbl->GetDetailsEx(This,pidl,pscid,pv) #define IShellFolder2_GetDetailsOf(This,pidl,iColumn,psd) (This)->lpVtbl->GetDetailsOf(This,pidl,iColumn,psd) #define IShellFolder2_MapColumnToSCID(This,iColumn,pscid) (This)->lpVtbl->MapColumnToSCID(This,iColumn,pscid) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellFolder2_QueryInterface(IShellFolder2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellFolder2_AddRef(IShellFolder2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellFolder2_Release(IShellFolder2* This) { return This->lpVtbl->Release(This); } /*** IShellFolder methods ***/ static FORCEINLINE HRESULT IShellFolder2_ParseDisplayName(IShellFolder2* This,HWND hwnd,IBindCtx *pbc,LPWSTR pszDisplayName,ULONG *pchEaten,PIDLIST_RELATIVE *ppidl,ULONG *pdwAttributes) { return This->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes); } static FORCEINLINE HRESULT IShellFolder2_EnumObjects(IShellFolder2* This,HWND hwnd,SHCONTF grfFlags,IEnumIDList **ppenumIDList) { return This->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList); } static FORCEINLINE HRESULT IShellFolder2_BindToObject(IShellFolder2* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { return This->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv); } static FORCEINLINE HRESULT IShellFolder2_BindToStorage(IShellFolder2* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { return This->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv); } static FORCEINLINE HRESULT IShellFolder2_CompareIDs(IShellFolder2* This,LPARAM lParam,PCUIDLIST_RELATIVE pidl1,PCUIDLIST_RELATIVE pidl2) { return This->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2); } static FORCEINLINE HRESULT IShellFolder2_CreateViewObject(IShellFolder2* This,HWND hwndOwner,REFIID riid,void **ppv) { return This->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv); } static FORCEINLINE HRESULT IShellFolder2_GetAttributesOf(IShellFolder2* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,SFGAOF *rgfInOut) { return This->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut); } static FORCEINLINE HRESULT IShellFolder2_GetUIObjectOf(IShellFolder2* This,HWND hwndOwner,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,REFIID riid,UINT *rgfReserved,void **ppv) { return This->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv); } static FORCEINLINE HRESULT IShellFolder2_GetDisplayNameOf(IShellFolder2* This,PCUITEMID_CHILD pidl,SHGDNF uFlags,STRRET *pName) { return This->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName); } static FORCEINLINE HRESULT IShellFolder2_SetNameOf(IShellFolder2* This,HWND hwnd,PCUITEMID_CHILD pidl,LPCWSTR pszName,SHGDNF uFlags,PITEMID_CHILD *ppidlOut) { return This->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut); } /*** IShellFolder2 methods ***/ static FORCEINLINE HRESULT IShellFolder2_GetDefaultSearchGUID(IShellFolder2* This,GUID *pguid) { return This->lpVtbl->GetDefaultSearchGUID(This,pguid); } static FORCEINLINE HRESULT IShellFolder2_EnumSearches(IShellFolder2* This,IEnumExtraSearch **ppenum) { return This->lpVtbl->EnumSearches(This,ppenum); } static FORCEINLINE HRESULT IShellFolder2_GetDefaultColumn(IShellFolder2* This,DWORD dwRes,ULONG *pSort,ULONG *pDisplay) { return This->lpVtbl->GetDefaultColumn(This,dwRes,pSort,pDisplay); } static FORCEINLINE HRESULT IShellFolder2_GetDefaultColumnState(IShellFolder2* This,UINT iColumn,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetDefaultColumnState(This,iColumn,pcsFlags); } static FORCEINLINE HRESULT IShellFolder2_GetDetailsEx(IShellFolder2* This,PCUITEMID_CHILD pidl,const SHCOLUMNID *pscid,VARIANT *pv) { return This->lpVtbl->GetDetailsEx(This,pidl,pscid,pv); } static FORCEINLINE HRESULT IShellFolder2_GetDetailsOf(IShellFolder2* This,PCUITEMID_CHILD pidl,UINT iColumn,SHELLDETAILS *psd) { return This->lpVtbl->GetDetailsOf(This,pidl,iColumn,psd); } static FORCEINLINE HRESULT IShellFolder2_MapColumnToSCID(IShellFolder2* This,UINT iColumn,SHCOLUMNID *pscid) { return This->lpVtbl->MapColumnToSCID(This,iColumn,pscid); } #endif #endif #endif #endif /* __IShellFolder2_INTERFACE_DEFINED__ */ typedef char *LPVIEWSETTINGS; typedef enum FOLDERFLAGS { FWF_NONE = 0x0, FWF_AUTOARRANGE = 0x1, FWF_ABBREVIATEDNAMES = 0x2, FWF_SNAPTOGRID = 0x4, FWF_OWNERDATA = 0x8, FWF_BESTFITWINDOW = 0x10, FWF_DESKTOP = 0x20, FWF_SINGLESEL = 0x40, FWF_NOSUBFOLDERS = 0x80, FWF_TRANSPARENT = 0x100, FWF_NOCLIENTEDGE = 0x200, FWF_NOSCROLL = 0x400, FWF_ALIGNLEFT = 0x800, FWF_NOICONS = 0x1000, FWF_SHOWSELALWAYS = 0x2000, FWF_NOVISIBLE = 0x4000, FWF_SINGLECLICKACTIVATE = 0x8000, FWF_NOWEBVIEW = 0x10000, FWF_HIDEFILENAMES = 0x20000, FWF_CHECKSELECT = 0x40000, FWF_NOENUMREFRESH = 0x80000, FWF_NOGROUPING = 0x100000, FWF_FULLROWSELECT = 0x200000, FWF_NOFILTERS = 0x400000, FWF_NOCOLUMNHEADER = 0x800000, FWF_NOHEADERINALLVIEWS = 0x1000000, FWF_EXTENDEDTILES = 0x2000000, FWF_TRICHECKSELECT = 0x4000000, FWF_AUTOCHECKSELECT = 0x8000000, FWF_NOBROWSERVIEWSTATE = 0x10000000, FWF_SUBSETGROUPS = 0x20000000, FWF_USESEARCHFOLDER = 0x40000000, FWF_ALLOWRTLREADING = 0x80000000 } FOLDERFLAGS; DEFINE_ENUM_FLAG_OPERATORS(FOLDERFLAGS) typedef enum FOLDERVIEWMODE { FVM_AUTO = -1, FVM_FIRST = 1, FVM_ICON = 1, FVM_SMALLICON = 2, FVM_LIST = 3, FVM_DETAILS = 4, FVM_THUMBNAIL = 5, FVM_TILE = 6, FVM_THUMBSTRIP = 7, FVM_CONTENT = 8, FVM_LAST = 8 } FOLDERVIEWMODE; #if NTDDI_VERSION >= NTDDI_VISTA typedef enum FOLDERLOGICALVIEWMODE { FLVM_UNSPECIFIED = -1, FLVM_FIRST = 1, FLVM_DETAILS = 1, FLVM_TILES = 2, FLVM_ICONS = 3, FLVM_LIST = 4, FLVM_CONTENT = 5, FLVM_LAST = 5 } FOLDERLOGICALVIEWMODE; #endif typedef struct FOLDERSETTINGS { UINT ViewMode; UINT fFlags; } FOLDERSETTINGS; typedef FOLDERSETTINGS *LPFOLDERSETTINGS; typedef const FOLDERSETTINGS *LPCFOLDERSETTINGS; typedef FOLDERSETTINGS *PFOLDERSETTINGS; /***************************************************************************** * IFolderViewOptions interface */ #ifndef __IFolderViewOptions_INTERFACE_DEFINED__ #define __IFolderViewOptions_INTERFACE_DEFINED__ typedef enum FOLDERVIEWOPTIONS { FVO_DEFAULT = 0x0, FVO_VISTALAYOUT = 0x1, FVO_CUSTOMPOSITION = 0x2, FVO_CUSTOMORDERING = 0x4, FVO_SUPPORTHYPERLINKS = 0x8, FVO_NOANIMATIONS = 0x10, FVO_NOSCROLLTIPS = 0x20 } FOLDERVIEWOPTIONS; DEFINE_ENUM_FLAG_OPERATORS(FOLDERVIEWOPTIONS) DEFINE_GUID(IID_IFolderViewOptions, 0x3cc974d2, 0xb302, 0x4d36, 0xad,0x3e, 0x06,0xd9,0x3f,0x69,0x5d,0x3f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3cc974d2-b302-4d36-ad3e-06d93f695d3f") IFolderViewOptions : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFolderViewOptions( FOLDERVIEWOPTIONS fvoMask, FOLDERVIEWOPTIONS fvoFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderViewOptions( FOLDERVIEWOPTIONS *pfvoFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderViewOptions, 0x3cc974d2, 0xb302, 0x4d36, 0xad,0x3e, 0x06,0xd9,0x3f,0x69,0x5d,0x3f) #endif #else typedef struct IFolderViewOptionsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderViewOptions *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderViewOptions *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderViewOptions *This); /*** IFolderViewOptions methods ***/ HRESULT (STDMETHODCALLTYPE *SetFolderViewOptions)( IFolderViewOptions *This, FOLDERVIEWOPTIONS fvoMask, FOLDERVIEWOPTIONS fvoFlags); HRESULT (STDMETHODCALLTYPE *GetFolderViewOptions)( IFolderViewOptions *This, FOLDERVIEWOPTIONS *pfvoFlags); END_INTERFACE } IFolderViewOptionsVtbl; interface IFolderViewOptions { CONST_VTBL IFolderViewOptionsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderViewOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderViewOptions_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderViewOptions_Release(This) (This)->lpVtbl->Release(This) /*** IFolderViewOptions methods ***/ #define IFolderViewOptions_SetFolderViewOptions(This,fvoMask,fvoFlags) (This)->lpVtbl->SetFolderViewOptions(This,fvoMask,fvoFlags) #define IFolderViewOptions_GetFolderViewOptions(This,pfvoFlags) (This)->lpVtbl->GetFolderViewOptions(This,pfvoFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderViewOptions_QueryInterface(IFolderViewOptions* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderViewOptions_AddRef(IFolderViewOptions* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderViewOptions_Release(IFolderViewOptions* This) { return This->lpVtbl->Release(This); } /*** IFolderViewOptions methods ***/ static FORCEINLINE HRESULT IFolderViewOptions_SetFolderViewOptions(IFolderViewOptions* This,FOLDERVIEWOPTIONS fvoMask,FOLDERVIEWOPTIONS fvoFlags) { return This->lpVtbl->SetFolderViewOptions(This,fvoMask,fvoFlags); } static FORCEINLINE HRESULT IFolderViewOptions_GetFolderViewOptions(IFolderViewOptions* This,FOLDERVIEWOPTIONS *pfvoFlags) { return This->lpVtbl->GetFolderViewOptions(This,pfvoFlags); } #endif #endif #endif #endif /* __IFolderViewOptions_INTERFACE_DEFINED__ */ typedef enum _SVSIF { SVSI_DESELECT = 0x0, SVSI_SELECT = 0x1, SVSI_EDIT = 0x3, SVSI_DESELECTOTHERS = 0x4, SVSI_ENSUREVISIBLE = 0x8, SVSI_FOCUSED = 0x10, SVSI_TRANSLATEPT = 0x20, SVSI_SELECTIONMARK = 0x40, SVSI_POSITIONITEM = 0x80, SVSI_CHECK = 0x100, SVSI_CHECK2 = 0x200, SVSI_KEYBOARDSELECT = 0x401, SVSI_NOTAKEFOCUS = 0x40000000 } _SVSIF; #define SVSI_NOSTATECHANGE ((UINT)0x80000000) typedef UINT SVSIF; typedef enum _SVGIO { SVGIO_BACKGROUND = 0x0, SVGIO_SELECTION = 0x1, SVGIO_ALLVIEW = 0x2, SVGIO_CHECKED = 0x3, SVGIO_TYPE_MASK = 0xf, SVGIO_FLAG_VIEWORDER = 0x80000000 } _SVGIO; DEFINE_ENUM_FLAG_OPERATORS(_SVGIO) typedef int SVGIO; typedef enum SVUIA_STATUS { SVUIA_DEACTIVATE = 0, SVUIA_ACTIVATE_NOFOCUS = 1, SVUIA_ACTIVATE_FOCUS = 2, SVUIA_INPLACEACTIVATE = 3 } SVUIA_STATUS; #ifdef _FIX_ENABLEMODELESS_CONFLICT #define EnableModeless EnableModelessSV #endif #if 0 typedef LPARAM LPFNSVADDPROPSHEETPAGE; #else #include typedef LPFNADDPROPSHEETPAGE LPFNSVADDPROPSHEETPAGE; #endif #ifndef __IShellBrowser_FWD_DEFINED__ #define __IShellBrowser_FWD_DEFINED__ typedef interface IShellBrowser IShellBrowser; #ifdef __cplusplus interface IShellBrowser; #endif /* __cplusplus */ #endif /***************************************************************************** * IShellView interface */ #ifndef __IShellView_INTERFACE_DEFINED__ #define __IShellView_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellView, 0x000214e3, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e3-0000-0000-c000-000000000046") IShellView : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( MSG *pmsg) = 0; virtual HRESULT STDMETHODCALLTYPE EnableModeless( WINBOOL fEnable) = 0; virtual HRESULT STDMETHODCALLTYPE UIActivate( UINT uState) = 0; virtual HRESULT STDMETHODCALLTYPE Refresh( ) = 0; virtual HRESULT STDMETHODCALLTYPE CreateViewWindow( IShellView *psvPrevious, LPCFOLDERSETTINGS pfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd) = 0; virtual HRESULT STDMETHODCALLTYPE DestroyViewWindow( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentInfo( LPFOLDERSETTINGS pfs) = 0; virtual HRESULT STDMETHODCALLTYPE AddPropertySheetPages( DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam) = 0; virtual HRESULT STDMETHODCALLTYPE SaveViewState( ) = 0; virtual HRESULT STDMETHODCALLTYPE SelectItem( PCUITEMID_CHILD pidlItem, SVSIF uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemObject( UINT uItem, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellView, 0x000214e3, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellView *This); ULONG (STDMETHODCALLTYPE *Release)( IShellView *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellView *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellView *This, WINBOOL fEnterMode); /*** IShellView methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IShellView *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *EnableModeless)( IShellView *This, WINBOOL fEnable); HRESULT (STDMETHODCALLTYPE *UIActivate)( IShellView *This, UINT uState); HRESULT (STDMETHODCALLTYPE *Refresh)( IShellView *This); HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( IShellView *This, IShellView *psvPrevious, LPCFOLDERSETTINGS pfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd); HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( IShellView *This); HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( IShellView *This, LPFOLDERSETTINGS pfs); HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( IShellView *This, DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam); HRESULT (STDMETHODCALLTYPE *SaveViewState)( IShellView *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IShellView *This, PCUITEMID_CHILD pidlItem, SVSIF uFlags); HRESULT (STDMETHODCALLTYPE *GetItemObject)( IShellView *This, UINT uItem, REFIID riid, void **ppv); END_INTERFACE } IShellViewVtbl; interface IShellView { CONST_VTBL IShellViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellView_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellView_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellView_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellView_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellView methods ***/ #define IShellView_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #define IShellView_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) #define IShellView_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) #define IShellView_Refresh(This) (This)->lpVtbl->Refresh(This) #define IShellView_CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) #define IShellView_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) #define IShellView_GetCurrentInfo(This,pfs) (This)->lpVtbl->GetCurrentInfo(This,pfs) #define IShellView_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) #define IShellView_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) #define IShellView_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) #define IShellView_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellView_QueryInterface(IShellView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellView_AddRef(IShellView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellView_Release(IShellView* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IShellView_GetWindow(IShellView* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IShellView_ContextSensitiveHelp(IShellView* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellView methods ***/ static FORCEINLINE HRESULT IShellView_TranslateAccelerator(IShellView* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } static FORCEINLINE HRESULT IShellView_EnableModeless(IShellView* This,WINBOOL fEnable) { return This->lpVtbl->EnableModeless(This,fEnable); } static FORCEINLINE HRESULT IShellView_UIActivate(IShellView* This,UINT uState) { return This->lpVtbl->UIActivate(This,uState); } static FORCEINLINE HRESULT IShellView_Refresh(IShellView* This) { return This->lpVtbl->Refresh(This); } static FORCEINLINE HRESULT IShellView_CreateViewWindow(IShellView* This,IShellView *psvPrevious,LPCFOLDERSETTINGS pfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { return This->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd); } static FORCEINLINE HRESULT IShellView_DestroyViewWindow(IShellView* This) { return This->lpVtbl->DestroyViewWindow(This); } static FORCEINLINE HRESULT IShellView_GetCurrentInfo(IShellView* This,LPFOLDERSETTINGS pfs) { return This->lpVtbl->GetCurrentInfo(This,pfs); } static FORCEINLINE HRESULT IShellView_AddPropertySheetPages(IShellView* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); } static FORCEINLINE HRESULT IShellView_SaveViewState(IShellView* This) { return This->lpVtbl->SaveViewState(This); } static FORCEINLINE HRESULT IShellView_SelectItem(IShellView* This,PCUITEMID_CHILD pidlItem,SVSIF uFlags) { return This->lpVtbl->SelectItem(This,pidlItem,uFlags); } static FORCEINLINE HRESULT IShellView_GetItemObject(IShellView* This,UINT uItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); } #endif #endif #endif #endif /* __IShellView_INTERFACE_DEFINED__ */ typedef IShellView *LPSHELLVIEW; /***************************************************************************** * IShellView2 interface */ #ifndef __IShellView2_INTERFACE_DEFINED__ #define __IShellView2_INTERFACE_DEFINED__ typedef GUID SHELLVIEWID; #define SV2GV_CURRENTVIEW ((UINT)-1) #define SV2GV_DEFAULTVIEW ((UINT)-2) #include typedef struct _SV2CVW2_PARAMS { DWORD cbSize; IShellView *psvPrev; LPCFOLDERSETTINGS pfs; IShellBrowser *psbOwner; RECT *prcView; const SHELLVIEWID *pvid; HWND hwndView; } SV2CVW2_PARAMS; typedef struct _SV2CVW2_PARAMS *LPSV2CVW2_PARAMS; #include DEFINE_GUID(IID_IShellView2, 0x88e39e80, 0x3578, 0x11cf, 0xae,0x69, 0x08,0x00,0x2b,0x2e,0x12,0x62); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("88e39e80-3578-11cf-ae69-08002b2e1262") IShellView2 : public IShellView { virtual HRESULT STDMETHODCALLTYPE GetView( SHELLVIEWID *pvid, ULONG uView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateViewWindow2( LPSV2CVW2_PARAMS lpParams) = 0; virtual HRESULT STDMETHODCALLTYPE HandleRename( PCUITEMID_CHILD pidlNew) = 0; virtual HRESULT STDMETHODCALLTYPE SelectAndPositionItem( PCUITEMID_CHILD pidlItem, UINT uFlags, POINT *ppt) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellView2, 0x88e39e80, 0x3578, 0x11cf, 0xae,0x69, 0x08,0x00,0x2b,0x2e,0x12,0x62) #endif #else typedef struct IShellView2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellView2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellView2 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellView2 *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellView2 *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellView2 *This, WINBOOL fEnterMode); /*** IShellView methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IShellView2 *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *EnableModeless)( IShellView2 *This, WINBOOL fEnable); HRESULT (STDMETHODCALLTYPE *UIActivate)( IShellView2 *This, UINT uState); HRESULT (STDMETHODCALLTYPE *Refresh)( IShellView2 *This); HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( IShellView2 *This, IShellView *psvPrevious, LPCFOLDERSETTINGS pfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd); HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( IShellView2 *This); HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( IShellView2 *This, LPFOLDERSETTINGS pfs); HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( IShellView2 *This, DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam); HRESULT (STDMETHODCALLTYPE *SaveViewState)( IShellView2 *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IShellView2 *This, PCUITEMID_CHILD pidlItem, SVSIF uFlags); HRESULT (STDMETHODCALLTYPE *GetItemObject)( IShellView2 *This, UINT uItem, REFIID riid, void **ppv); /*** IShellView2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetView)( IShellView2 *This, SHELLVIEWID *pvid, ULONG uView); HRESULT (STDMETHODCALLTYPE *CreateViewWindow2)( IShellView2 *This, LPSV2CVW2_PARAMS lpParams); HRESULT (STDMETHODCALLTYPE *HandleRename)( IShellView2 *This, PCUITEMID_CHILD pidlNew); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItem)( IShellView2 *This, PCUITEMID_CHILD pidlItem, UINT uFlags, POINT *ppt); END_INTERFACE } IShellView2Vtbl; interface IShellView2 { CONST_VTBL IShellView2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellView2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellView2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellView2_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellView2_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellView2_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellView methods ***/ #define IShellView2_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #define IShellView2_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) #define IShellView2_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) #define IShellView2_Refresh(This) (This)->lpVtbl->Refresh(This) #define IShellView2_CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) #define IShellView2_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) #define IShellView2_GetCurrentInfo(This,pfs) (This)->lpVtbl->GetCurrentInfo(This,pfs) #define IShellView2_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) #define IShellView2_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) #define IShellView2_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) #define IShellView2_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) /*** IShellView2 methods ***/ #define IShellView2_GetView(This,pvid,uView) (This)->lpVtbl->GetView(This,pvid,uView) #define IShellView2_CreateViewWindow2(This,lpParams) (This)->lpVtbl->CreateViewWindow2(This,lpParams) #define IShellView2_HandleRename(This,pidlNew) (This)->lpVtbl->HandleRename(This,pidlNew) #define IShellView2_SelectAndPositionItem(This,pidlItem,uFlags,ppt) (This)->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellView2_QueryInterface(IShellView2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellView2_AddRef(IShellView2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellView2_Release(IShellView2* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IShellView2_GetWindow(IShellView2* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IShellView2_ContextSensitiveHelp(IShellView2* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellView methods ***/ static FORCEINLINE HRESULT IShellView2_TranslateAccelerator(IShellView2* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } static FORCEINLINE HRESULT IShellView2_EnableModeless(IShellView2* This,WINBOOL fEnable) { return This->lpVtbl->EnableModeless(This,fEnable); } static FORCEINLINE HRESULT IShellView2_UIActivate(IShellView2* This,UINT uState) { return This->lpVtbl->UIActivate(This,uState); } static FORCEINLINE HRESULT IShellView2_Refresh(IShellView2* This) { return This->lpVtbl->Refresh(This); } static FORCEINLINE HRESULT IShellView2_CreateViewWindow(IShellView2* This,IShellView *psvPrevious,LPCFOLDERSETTINGS pfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { return This->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd); } static FORCEINLINE HRESULT IShellView2_DestroyViewWindow(IShellView2* This) { return This->lpVtbl->DestroyViewWindow(This); } static FORCEINLINE HRESULT IShellView2_GetCurrentInfo(IShellView2* This,LPFOLDERSETTINGS pfs) { return This->lpVtbl->GetCurrentInfo(This,pfs); } static FORCEINLINE HRESULT IShellView2_AddPropertySheetPages(IShellView2* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); } static FORCEINLINE HRESULT IShellView2_SaveViewState(IShellView2* This) { return This->lpVtbl->SaveViewState(This); } static FORCEINLINE HRESULT IShellView2_SelectItem(IShellView2* This,PCUITEMID_CHILD pidlItem,SVSIF uFlags) { return This->lpVtbl->SelectItem(This,pidlItem,uFlags); } static FORCEINLINE HRESULT IShellView2_GetItemObject(IShellView2* This,UINT uItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); } /*** IShellView2 methods ***/ static FORCEINLINE HRESULT IShellView2_GetView(IShellView2* This,SHELLVIEWID *pvid,ULONG uView) { return This->lpVtbl->GetView(This,pvid,uView); } static FORCEINLINE HRESULT IShellView2_CreateViewWindow2(IShellView2* This,LPSV2CVW2_PARAMS lpParams) { return This->lpVtbl->CreateViewWindow2(This,lpParams); } static FORCEINLINE HRESULT IShellView2_HandleRename(IShellView2* This,PCUITEMID_CHILD pidlNew) { return This->lpVtbl->HandleRename(This,pidlNew); } static FORCEINLINE HRESULT IShellView2_SelectAndPositionItem(IShellView2* This,PCUITEMID_CHILD pidlItem,UINT uFlags,POINT *ppt) { return This->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt); } #endif #endif #endif #endif /* __IShellView2_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * IShellView3 interface */ #ifndef __IShellView3_INTERFACE_DEFINED__ #define __IShellView3_INTERFACE_DEFINED__ enum _SV3CVW3_FLAGS { SV3CVW3_DEFAULT = 0x0, SV3CVW3_NONINTERACTIVE = 0x1, SV3CVW3_FORCEVIEWMODE = 0x2, SV3CVW3_FORCEFOLDERFLAGS = 0x4 }; typedef DWORD SV3CVW3_FLAGS; DEFINE_GUID(IID_IShellView3, 0xec39fa88, 0xf8af, 0x41c5, 0x84,0x21, 0x38,0xbe,0xd2,0x8f,0x46,0x73); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ec39fa88-f8af-41c5-8421-38bed28f4673") IShellView3 : public IShellView2 { virtual HRESULT STDMETHODCALLTYPE CreateViewWindow3( IShellBrowser *psbOwner, IShellView *psvPrev, SV3CVW3_FLAGS dwViewFlags, FOLDERFLAGS dwMask, FOLDERFLAGS dwFlags, FOLDERVIEWMODE fvMode, const SHELLVIEWID *pvid, const RECT *prcView, HWND *phwndView) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellView3, 0xec39fa88, 0xf8af, 0x41c5, 0x84,0x21, 0x38,0xbe,0xd2,0x8f,0x46,0x73) #endif #else typedef struct IShellView3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellView3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellView3 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellView3 *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellView3 *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellView3 *This, WINBOOL fEnterMode); /*** IShellView methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IShellView3 *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *EnableModeless)( IShellView3 *This, WINBOOL fEnable); HRESULT (STDMETHODCALLTYPE *UIActivate)( IShellView3 *This, UINT uState); HRESULT (STDMETHODCALLTYPE *Refresh)( IShellView3 *This); HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( IShellView3 *This, IShellView *psvPrevious, LPCFOLDERSETTINGS pfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd); HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( IShellView3 *This); HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( IShellView3 *This, LPFOLDERSETTINGS pfs); HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( IShellView3 *This, DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam); HRESULT (STDMETHODCALLTYPE *SaveViewState)( IShellView3 *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IShellView3 *This, PCUITEMID_CHILD pidlItem, SVSIF uFlags); HRESULT (STDMETHODCALLTYPE *GetItemObject)( IShellView3 *This, UINT uItem, REFIID riid, void **ppv); /*** IShellView2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetView)( IShellView3 *This, SHELLVIEWID *pvid, ULONG uView); HRESULT (STDMETHODCALLTYPE *CreateViewWindow2)( IShellView3 *This, LPSV2CVW2_PARAMS lpParams); HRESULT (STDMETHODCALLTYPE *HandleRename)( IShellView3 *This, PCUITEMID_CHILD pidlNew); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItem)( IShellView3 *This, PCUITEMID_CHILD pidlItem, UINT uFlags, POINT *ppt); /*** IShellView3 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateViewWindow3)( IShellView3 *This, IShellBrowser *psbOwner, IShellView *psvPrev, SV3CVW3_FLAGS dwViewFlags, FOLDERFLAGS dwMask, FOLDERFLAGS dwFlags, FOLDERVIEWMODE fvMode, const SHELLVIEWID *pvid, const RECT *prcView, HWND *phwndView); END_INTERFACE } IShellView3Vtbl; interface IShellView3 { CONST_VTBL IShellView3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellView3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellView3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellView3_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellView3_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellView3_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellView methods ***/ #define IShellView3_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #define IShellView3_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) #define IShellView3_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) #define IShellView3_Refresh(This) (This)->lpVtbl->Refresh(This) #define IShellView3_CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) #define IShellView3_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) #define IShellView3_GetCurrentInfo(This,pfs) (This)->lpVtbl->GetCurrentInfo(This,pfs) #define IShellView3_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) #define IShellView3_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) #define IShellView3_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) #define IShellView3_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) /*** IShellView2 methods ***/ #define IShellView3_GetView(This,pvid,uView) (This)->lpVtbl->GetView(This,pvid,uView) #define IShellView3_CreateViewWindow2(This,lpParams) (This)->lpVtbl->CreateViewWindow2(This,lpParams) #define IShellView3_HandleRename(This,pidlNew) (This)->lpVtbl->HandleRename(This,pidlNew) #define IShellView3_SelectAndPositionItem(This,pidlItem,uFlags,ppt) (This)->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt) /*** IShellView3 methods ***/ #define IShellView3_CreateViewWindow3(This,psbOwner,psvPrev,dwViewFlags,dwMask,dwFlags,fvMode,pvid,prcView,phwndView) (This)->lpVtbl->CreateViewWindow3(This,psbOwner,psvPrev,dwViewFlags,dwMask,dwFlags,fvMode,pvid,prcView,phwndView) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellView3_QueryInterface(IShellView3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellView3_AddRef(IShellView3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellView3_Release(IShellView3* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IShellView3_GetWindow(IShellView3* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IShellView3_ContextSensitiveHelp(IShellView3* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellView methods ***/ static FORCEINLINE HRESULT IShellView3_TranslateAccelerator(IShellView3* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } static FORCEINLINE HRESULT IShellView3_EnableModeless(IShellView3* This,WINBOOL fEnable) { return This->lpVtbl->EnableModeless(This,fEnable); } static FORCEINLINE HRESULT IShellView3_UIActivate(IShellView3* This,UINT uState) { return This->lpVtbl->UIActivate(This,uState); } static FORCEINLINE HRESULT IShellView3_Refresh(IShellView3* This) { return This->lpVtbl->Refresh(This); } static FORCEINLINE HRESULT IShellView3_CreateViewWindow(IShellView3* This,IShellView *psvPrevious,LPCFOLDERSETTINGS pfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { return This->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd); } static FORCEINLINE HRESULT IShellView3_DestroyViewWindow(IShellView3* This) { return This->lpVtbl->DestroyViewWindow(This); } static FORCEINLINE HRESULT IShellView3_GetCurrentInfo(IShellView3* This,LPFOLDERSETTINGS pfs) { return This->lpVtbl->GetCurrentInfo(This,pfs); } static FORCEINLINE HRESULT IShellView3_AddPropertySheetPages(IShellView3* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); } static FORCEINLINE HRESULT IShellView3_SaveViewState(IShellView3* This) { return This->lpVtbl->SaveViewState(This); } static FORCEINLINE HRESULT IShellView3_SelectItem(IShellView3* This,PCUITEMID_CHILD pidlItem,SVSIF uFlags) { return This->lpVtbl->SelectItem(This,pidlItem,uFlags); } static FORCEINLINE HRESULT IShellView3_GetItemObject(IShellView3* This,UINT uItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); } /*** IShellView2 methods ***/ static FORCEINLINE HRESULT IShellView3_GetView(IShellView3* This,SHELLVIEWID *pvid,ULONG uView) { return This->lpVtbl->GetView(This,pvid,uView); } static FORCEINLINE HRESULT IShellView3_CreateViewWindow2(IShellView3* This,LPSV2CVW2_PARAMS lpParams) { return This->lpVtbl->CreateViewWindow2(This,lpParams); } static FORCEINLINE HRESULT IShellView3_HandleRename(IShellView3* This,PCUITEMID_CHILD pidlNew) { return This->lpVtbl->HandleRename(This,pidlNew); } static FORCEINLINE HRESULT IShellView3_SelectAndPositionItem(IShellView3* This,PCUITEMID_CHILD pidlItem,UINT uFlags,POINT *ppt) { return This->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt); } /*** IShellView3 methods ***/ static FORCEINLINE HRESULT IShellView3_CreateViewWindow3(IShellView3* This,IShellBrowser *psbOwner,IShellView *psvPrev,SV3CVW3_FLAGS dwViewFlags,FOLDERFLAGS dwMask,FOLDERFLAGS dwFlags,FOLDERVIEWMODE fvMode,const SHELLVIEWID *pvid,const RECT *prcView,HWND *phwndView) { return This->lpVtbl->CreateViewWindow3(This,psbOwner,psvPrev,dwViewFlags,dwMask,dwFlags,fvMode,pvid,prcView,phwndView); } #endif #endif #endif #endif /* __IShellView3_INTERFACE_DEFINED__ */ #endif #ifdef _FIX_ENABLEMODELESS_CONFLICT #undef EnableModeless #endif /***************************************************************************** * IFolderView interface */ #ifndef __IFolderView_INTERFACE_DEFINED__ #define __IFolderView_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderView, 0xcde725b0, 0xccc9, 0x4519, 0x91,0x7e, 0x32,0x5d,0x72,0xfa,0xb4,0xce); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cde725b0-ccc9-4519-917e-325d72fab4ce") IFolderView : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCurrentViewMode( UINT *pViewMode) = 0; virtual HRESULT STDMETHODCALLTYPE SetCurrentViewMode( UINT ViewMode) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE Item( int iItemIndex, PITEMID_CHILD *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE ItemCount( UINT uFlags, int *pcItems) = 0; virtual HRESULT STDMETHODCALLTYPE Items( UINT uFlags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectionMarkedItem( int *piItem) = 0; virtual HRESULT STDMETHODCALLTYPE GetFocusedItem( int *piItem) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemPosition( PCUITEMID_CHILD pidl, POINT *ppt) = 0; virtual HRESULT STDMETHODCALLTYPE GetSpacing( POINT *ppt) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultSpacing( POINT *ppt) = 0; virtual HRESULT STDMETHODCALLTYPE GetAutoArrange( ) = 0; virtual HRESULT STDMETHODCALLTYPE SelectItem( int iItem, DWORD dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SelectAndPositionItems( UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD dwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderView, 0xcde725b0, 0xccc9, 0x4519, 0x91,0x7e, 0x32,0x5d,0x72,0xfa,0xb4,0xce) #endif #else typedef struct IFolderViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderView *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderView *This); /*** IFolderView methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurrentViewMode)( IFolderView *This, UINT *pViewMode); HRESULT (STDMETHODCALLTYPE *SetCurrentViewMode)( IFolderView *This, UINT ViewMode); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFolderView *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *Item)( IFolderView *This, int iItemIndex, PITEMID_CHILD *ppidl); HRESULT (STDMETHODCALLTYPE *ItemCount)( IFolderView *This, UINT uFlags, int *pcItems); HRESULT (STDMETHODCALLTYPE *Items)( IFolderView *This, UINT uFlags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetSelectionMarkedItem)( IFolderView *This, int *piItem); HRESULT (STDMETHODCALLTYPE *GetFocusedItem)( IFolderView *This, int *piItem); HRESULT (STDMETHODCALLTYPE *GetItemPosition)( IFolderView *This, PCUITEMID_CHILD pidl, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetSpacing)( IFolderView *This, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetDefaultSpacing)( IFolderView *This, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetAutoArrange)( IFolderView *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IFolderView *This, int iItem, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItems)( IFolderView *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD dwFlags); END_INTERFACE } IFolderViewVtbl; interface IFolderView { CONST_VTBL IFolderViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderView_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderView_Release(This) (This)->lpVtbl->Release(This) /*** IFolderView methods ***/ #define IFolderView_GetCurrentViewMode(This,pViewMode) (This)->lpVtbl->GetCurrentViewMode(This,pViewMode) #define IFolderView_SetCurrentViewMode(This,ViewMode) (This)->lpVtbl->SetCurrentViewMode(This,ViewMode) #define IFolderView_GetFolder(This,riid,ppv) (This)->lpVtbl->GetFolder(This,riid,ppv) #define IFolderView_Item(This,iItemIndex,ppidl) (This)->lpVtbl->Item(This,iItemIndex,ppidl) #define IFolderView_ItemCount(This,uFlags,pcItems) (This)->lpVtbl->ItemCount(This,uFlags,pcItems) #define IFolderView_Items(This,uFlags,riid,ppv) (This)->lpVtbl->Items(This,uFlags,riid,ppv) #define IFolderView_GetSelectionMarkedItem(This,piItem) (This)->lpVtbl->GetSelectionMarkedItem(This,piItem) #define IFolderView_GetFocusedItem(This,piItem) (This)->lpVtbl->GetFocusedItem(This,piItem) #define IFolderView_GetItemPosition(This,pidl,ppt) (This)->lpVtbl->GetItemPosition(This,pidl,ppt) #define IFolderView_GetSpacing(This,ppt) (This)->lpVtbl->GetSpacing(This,ppt) #define IFolderView_GetDefaultSpacing(This,ppt) (This)->lpVtbl->GetDefaultSpacing(This,ppt) #define IFolderView_GetAutoArrange(This) (This)->lpVtbl->GetAutoArrange(This) #define IFolderView_SelectItem(This,iItem,dwFlags) (This)->lpVtbl->SelectItem(This,iItem,dwFlags) #define IFolderView_SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) (This)->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderView_QueryInterface(IFolderView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderView_AddRef(IFolderView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderView_Release(IFolderView* This) { return This->lpVtbl->Release(This); } /*** IFolderView methods ***/ static FORCEINLINE HRESULT IFolderView_GetCurrentViewMode(IFolderView* This,UINT *pViewMode) { return This->lpVtbl->GetCurrentViewMode(This,pViewMode); } static FORCEINLINE HRESULT IFolderView_SetCurrentViewMode(IFolderView* This,UINT ViewMode) { return This->lpVtbl->SetCurrentViewMode(This,ViewMode); } static FORCEINLINE HRESULT IFolderView_GetFolder(IFolderView* This,REFIID riid,void **ppv) { return This->lpVtbl->GetFolder(This,riid,ppv); } static FORCEINLINE HRESULT IFolderView_Item(IFolderView* This,int iItemIndex,PITEMID_CHILD *ppidl) { return This->lpVtbl->Item(This,iItemIndex,ppidl); } static FORCEINLINE HRESULT IFolderView_ItemCount(IFolderView* This,UINT uFlags,int *pcItems) { return This->lpVtbl->ItemCount(This,uFlags,pcItems); } static FORCEINLINE HRESULT IFolderView_Items(IFolderView* This,UINT uFlags,REFIID riid,void **ppv) { return This->lpVtbl->Items(This,uFlags,riid,ppv); } static FORCEINLINE HRESULT IFolderView_GetSelectionMarkedItem(IFolderView* This,int *piItem) { return This->lpVtbl->GetSelectionMarkedItem(This,piItem); } static FORCEINLINE HRESULT IFolderView_GetFocusedItem(IFolderView* This,int *piItem) { return This->lpVtbl->GetFocusedItem(This,piItem); } static FORCEINLINE HRESULT IFolderView_GetItemPosition(IFolderView* This,PCUITEMID_CHILD pidl,POINT *ppt) { return This->lpVtbl->GetItemPosition(This,pidl,ppt); } static FORCEINLINE HRESULT IFolderView_GetSpacing(IFolderView* This,POINT *ppt) { return This->lpVtbl->GetSpacing(This,ppt); } static FORCEINLINE HRESULT IFolderView_GetDefaultSpacing(IFolderView* This,POINT *ppt) { return This->lpVtbl->GetDefaultSpacing(This,ppt); } static FORCEINLINE HRESULT IFolderView_GetAutoArrange(IFolderView* This) { return This->lpVtbl->GetAutoArrange(This); } static FORCEINLINE HRESULT IFolderView_SelectItem(IFolderView* This,int iItem,DWORD dwFlags) { return This->lpVtbl->SelectItem(This,iItem,dwFlags); } static FORCEINLINE HRESULT IFolderView_SelectAndPositionItems(IFolderView* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,POINT *apt,DWORD dwFlags) { return This->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags); } #endif #endif #endif #endif /* __IFolderView_INTERFACE_DEFINED__ */ #define SID_SFolderView IID_IFolderView #if NTDDI_VERSION >= NTDDI_WIN7 /***************************************************************************** * ISearchBoxInfo interface */ #ifndef __ISearchBoxInfo_INTERFACE_DEFINED__ #define __ISearchBoxInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_ISearchBoxInfo, 0x6af6e03f, 0xd664, 0x4ef4, 0x96,0x26, 0xf7,0xe0,0xed,0x36,0x75,0x5e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6af6e03f-d664-4ef4-9626-f7e0ed36755e") ISearchBoxInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCondition( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetText( LPWSTR *ppsz) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ISearchBoxInfo, 0x6af6e03f, 0xd664, 0x4ef4, 0x96,0x26, 0xf7,0xe0,0xed,0x36,0x75,0x5e) #endif #else typedef struct ISearchBoxInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ISearchBoxInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ISearchBoxInfo *This); ULONG (STDMETHODCALLTYPE *Release)( ISearchBoxInfo *This); /*** ISearchBoxInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetCondition)( ISearchBoxInfo *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetText)( ISearchBoxInfo *This, LPWSTR *ppsz); END_INTERFACE } ISearchBoxInfoVtbl; interface ISearchBoxInfo { CONST_VTBL ISearchBoxInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ISearchBoxInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ISearchBoxInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define ISearchBoxInfo_Release(This) (This)->lpVtbl->Release(This) /*** ISearchBoxInfo methods ***/ #define ISearchBoxInfo_GetCondition(This,riid,ppv) (This)->lpVtbl->GetCondition(This,riid,ppv) #define ISearchBoxInfo_GetText(This,ppsz) (This)->lpVtbl->GetText(This,ppsz) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ISearchBoxInfo_QueryInterface(ISearchBoxInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ISearchBoxInfo_AddRef(ISearchBoxInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ISearchBoxInfo_Release(ISearchBoxInfo* This) { return This->lpVtbl->Release(This); } /*** ISearchBoxInfo methods ***/ static FORCEINLINE HRESULT ISearchBoxInfo_GetCondition(ISearchBoxInfo* This,REFIID riid,void **ppv) { return This->lpVtbl->GetCondition(This,riid,ppv); } static FORCEINLINE HRESULT ISearchBoxInfo_GetText(ISearchBoxInfo* This,LPWSTR *ppsz) { return This->lpVtbl->GetText(This,ppsz); } #endif #endif #endif #endif /* __ISearchBoxInfo_INTERFACE_DEFINED__ */ #endif #if NTDDI_VERSION >= NTDDI_VISTA || _WIN32_IE >= _WIN32_IE_IE70 #ifndef NO_SHOBJIDL_SORTDIRECTION enum tagSORTDIRECTION { SORT_DESCENDING = -1, SORT_ASCENDING = 1 }; #endif typedef int SORTDIRECTION; typedef struct SORTCOLUMN { PROPERTYKEY propkey; SORTDIRECTION direction; } SORTCOLUMN; typedef enum FVTEXTTYPE { FVST_EMPTYTEXT = 0 } FVTEXTTYPE; #ifndef __IShellItemArray_FWD_DEFINED__ #define __IShellItemArray_FWD_DEFINED__ typedef interface IShellItemArray IShellItemArray; #ifdef __cplusplus interface IShellItemArray; #endif /* __cplusplus */ #endif typedef HRESULT DEPRECATED_HRESULT; #ifdef __cplusplus #define DEPRECATED_HRESULT HRESULT #endif /***************************************************************************** * IFolderView2 interface */ #ifndef __IFolderView2_INTERFACE_DEFINED__ #define __IFolderView2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderView2, 0x1af3a467, 0x214f, 0x4298, 0x90,0x8e, 0x06,0xb0,0x3e,0x0b,0x39,0xf9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1af3a467-214f-4298-908e-06b03e0b39f9") IFolderView2 : public IFolderView { virtual HRESULT STDMETHODCALLTYPE SetGroupBy( REFPROPERTYKEY key, WINBOOL fAscending) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupBy( PROPERTYKEY *pkey, WINBOOL *pfAscending) = 0; virtual HRESULT STDMETHODCALLTYPE SetViewProperty( PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, REFPROPVARIANT propvar) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewProperty( PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, PROPVARIANT *ppropvar) = 0; virtual HRESULT STDMETHODCALLTYPE SetTileViewProperties( PCUITEMID_CHILD pidl, LPCWSTR pszPropList) = 0; virtual HRESULT STDMETHODCALLTYPE SetExtendedTileViewProperties( PCUITEMID_CHILD pidl, LPCWSTR pszPropList) = 0; virtual HRESULT STDMETHODCALLTYPE SetText( FVTEXTTYPE iType, LPCWSTR pwszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetCurrentFolderFlags( DWORD dwMask, DWORD dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentFolderFlags( DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortColumnCount( int *pcColumns) = 0; virtual HRESULT STDMETHODCALLTYPE SetSortColumns( const SORTCOLUMN *rgSortColumns, int cColumns) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortColumns( SORTCOLUMN *rgSortColumns, int cColumns) = 0; virtual HRESULT STDMETHODCALLTYPE GetItem( int iItem, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetVisibleItem( int iStart, WINBOOL fPrevious, int *piItem) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedItem( int iStart, int *piItem) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelection( WINBOOL fNoneImpliesFolder, IShellItemArray **ppsia) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectionState( PCUITEMID_CHILD pidl, DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE InvokeVerbOnSelection( LPCSTR pszVerb) = 0; virtual HRESULT STDMETHODCALLTYPE SetViewModeAndIconSize( FOLDERVIEWMODE uViewMode, int iImageSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewModeAndIconSize( FOLDERVIEWMODE *puViewMode, int *piImageSize) = 0; virtual HRESULT STDMETHODCALLTYPE SetGroupSubsetCount( UINT cVisibleRows) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupSubsetCount( UINT *pcVisibleRows) = 0; virtual HRESULT STDMETHODCALLTYPE SetRedraw( WINBOOL fRedrawOn) = 0; virtual HRESULT STDMETHODCALLTYPE IsMoveInSameFolder( ) = 0; virtual HRESULT STDMETHODCALLTYPE DoRename( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderView2, 0x1af3a467, 0x214f, 0x4298, 0x90,0x8e, 0x06,0xb0,0x3e,0x0b,0x39,0xf9) #endif #else typedef struct IFolderView2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderView2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderView2 *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderView2 *This); /*** IFolderView methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurrentViewMode)( IFolderView2 *This, UINT *pViewMode); HRESULT (STDMETHODCALLTYPE *SetCurrentViewMode)( IFolderView2 *This, UINT ViewMode); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFolderView2 *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *Item)( IFolderView2 *This, int iItemIndex, PITEMID_CHILD *ppidl); HRESULT (STDMETHODCALLTYPE *ItemCount)( IFolderView2 *This, UINT uFlags, int *pcItems); HRESULT (STDMETHODCALLTYPE *Items)( IFolderView2 *This, UINT uFlags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetSelectionMarkedItem)( IFolderView2 *This, int *piItem); HRESULT (STDMETHODCALLTYPE *GetFocusedItem)( IFolderView2 *This, int *piItem); HRESULT (STDMETHODCALLTYPE *GetItemPosition)( IFolderView2 *This, PCUITEMID_CHILD pidl, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetSpacing)( IFolderView2 *This, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetDefaultSpacing)( IFolderView2 *This, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetAutoArrange)( IFolderView2 *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IFolderView2 *This, int iItem, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItems)( IFolderView2 *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD dwFlags); /*** IFolderView2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetGroupBy)( IFolderView2 *This, REFPROPERTYKEY key, WINBOOL fAscending); HRESULT (STDMETHODCALLTYPE *GetGroupBy)( IFolderView2 *This, PROPERTYKEY *pkey, WINBOOL *pfAscending); HRESULT (STDMETHODCALLTYPE *SetViewProperty)( IFolderView2 *This, PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, REFPROPVARIANT propvar); HRESULT (STDMETHODCALLTYPE *GetViewProperty)( IFolderView2 *This, PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *SetTileViewProperties)( IFolderView2 *This, PCUITEMID_CHILD pidl, LPCWSTR pszPropList); HRESULT (STDMETHODCALLTYPE *SetExtendedTileViewProperties)( IFolderView2 *This, PCUITEMID_CHILD pidl, LPCWSTR pszPropList); HRESULT (STDMETHODCALLTYPE *SetText)( IFolderView2 *This, FVTEXTTYPE iType, LPCWSTR pwszText); HRESULT (STDMETHODCALLTYPE *SetCurrentFolderFlags)( IFolderView2 *This, DWORD dwMask, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *GetCurrentFolderFlags)( IFolderView2 *This, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *GetSortColumnCount)( IFolderView2 *This, int *pcColumns); HRESULT (STDMETHODCALLTYPE *SetSortColumns)( IFolderView2 *This, const SORTCOLUMN *rgSortColumns, int cColumns); HRESULT (STDMETHODCALLTYPE *GetSortColumns)( IFolderView2 *This, SORTCOLUMN *rgSortColumns, int cColumns); HRESULT (STDMETHODCALLTYPE *GetItem)( IFolderView2 *This, int iItem, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetVisibleItem)( IFolderView2 *This, int iStart, WINBOOL fPrevious, int *piItem); HRESULT (STDMETHODCALLTYPE *GetSelectedItem)( IFolderView2 *This, int iStart, int *piItem); HRESULT (STDMETHODCALLTYPE *GetSelection)( IFolderView2 *This, WINBOOL fNoneImpliesFolder, IShellItemArray **ppsia); HRESULT (STDMETHODCALLTYPE *GetSelectionState)( IFolderView2 *This, PCUITEMID_CHILD pidl, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *InvokeVerbOnSelection)( IFolderView2 *This, LPCSTR pszVerb); HRESULT (STDMETHODCALLTYPE *SetViewModeAndIconSize)( IFolderView2 *This, FOLDERVIEWMODE uViewMode, int iImageSize); HRESULT (STDMETHODCALLTYPE *GetViewModeAndIconSize)( IFolderView2 *This, FOLDERVIEWMODE *puViewMode, int *piImageSize); HRESULT (STDMETHODCALLTYPE *SetGroupSubsetCount)( IFolderView2 *This, UINT cVisibleRows); HRESULT (STDMETHODCALLTYPE *GetGroupSubsetCount)( IFolderView2 *This, UINT *pcVisibleRows); HRESULT (STDMETHODCALLTYPE *SetRedraw)( IFolderView2 *This, WINBOOL fRedrawOn); HRESULT (STDMETHODCALLTYPE *IsMoveInSameFolder)( IFolderView2 *This); HRESULT (STDMETHODCALLTYPE *DoRename)( IFolderView2 *This); END_INTERFACE } IFolderView2Vtbl; interface IFolderView2 { CONST_VTBL IFolderView2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderView2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderView2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderView2_Release(This) (This)->lpVtbl->Release(This) /*** IFolderView methods ***/ #define IFolderView2_GetCurrentViewMode(This,pViewMode) (This)->lpVtbl->GetCurrentViewMode(This,pViewMode) #define IFolderView2_SetCurrentViewMode(This,ViewMode) (This)->lpVtbl->SetCurrentViewMode(This,ViewMode) #define IFolderView2_GetFolder(This,riid,ppv) (This)->lpVtbl->GetFolder(This,riid,ppv) #define IFolderView2_Item(This,iItemIndex,ppidl) (This)->lpVtbl->Item(This,iItemIndex,ppidl) #define IFolderView2_ItemCount(This,uFlags,pcItems) (This)->lpVtbl->ItemCount(This,uFlags,pcItems) #define IFolderView2_Items(This,uFlags,riid,ppv) (This)->lpVtbl->Items(This,uFlags,riid,ppv) #define IFolderView2_GetSelectionMarkedItem(This,piItem) (This)->lpVtbl->GetSelectionMarkedItem(This,piItem) #define IFolderView2_GetFocusedItem(This,piItem) (This)->lpVtbl->GetFocusedItem(This,piItem) #define IFolderView2_GetItemPosition(This,pidl,ppt) (This)->lpVtbl->GetItemPosition(This,pidl,ppt) #define IFolderView2_GetSpacing(This,ppt) (This)->lpVtbl->GetSpacing(This,ppt) #define IFolderView2_GetDefaultSpacing(This,ppt) (This)->lpVtbl->GetDefaultSpacing(This,ppt) #define IFolderView2_GetAutoArrange(This) (This)->lpVtbl->GetAutoArrange(This) #define IFolderView2_SelectItem(This,iItem,dwFlags) (This)->lpVtbl->SelectItem(This,iItem,dwFlags) #define IFolderView2_SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) (This)->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) /*** IFolderView2 methods ***/ #define IFolderView2_SetGroupBy(This,key,fAscending) (This)->lpVtbl->SetGroupBy(This,key,fAscending) #define IFolderView2_GetGroupBy(This,pkey,pfAscending) (This)->lpVtbl->GetGroupBy(This,pkey,pfAscending) #define IFolderView2_SetViewProperty(This,pidl,propkey,propvar) (This)->lpVtbl->SetViewProperty(This,pidl,propkey,propvar) #define IFolderView2_GetViewProperty(This,pidl,propkey,ppropvar) (This)->lpVtbl->GetViewProperty(This,pidl,propkey,ppropvar) #define IFolderView2_SetTileViewProperties(This,pidl,pszPropList) (This)->lpVtbl->SetTileViewProperties(This,pidl,pszPropList) #define IFolderView2_SetExtendedTileViewProperties(This,pidl,pszPropList) (This)->lpVtbl->SetExtendedTileViewProperties(This,pidl,pszPropList) #define IFolderView2_SetText(This,iType,pwszText) (This)->lpVtbl->SetText(This,iType,pwszText) #define IFolderView2_SetCurrentFolderFlags(This,dwMask,dwFlags) (This)->lpVtbl->SetCurrentFolderFlags(This,dwMask,dwFlags) #define IFolderView2_GetCurrentFolderFlags(This,pdwFlags) (This)->lpVtbl->GetCurrentFolderFlags(This,pdwFlags) #define IFolderView2_GetSortColumnCount(This,pcColumns) (This)->lpVtbl->GetSortColumnCount(This,pcColumns) #define IFolderView2_SetSortColumns(This,rgSortColumns,cColumns) (This)->lpVtbl->SetSortColumns(This,rgSortColumns,cColumns) #define IFolderView2_GetSortColumns(This,rgSortColumns,cColumns) (This)->lpVtbl->GetSortColumns(This,rgSortColumns,cColumns) #define IFolderView2_GetItem(This,iItem,riid,ppv) (This)->lpVtbl->GetItem(This,iItem,riid,ppv) #define IFolderView2_GetVisibleItem(This,iStart,fPrevious,piItem) (This)->lpVtbl->GetVisibleItem(This,iStart,fPrevious,piItem) #define IFolderView2_GetSelectedItem(This,iStart,piItem) (This)->lpVtbl->GetSelectedItem(This,iStart,piItem) #define IFolderView2_GetSelection(This,fNoneImpliesFolder,ppsia) (This)->lpVtbl->GetSelection(This,fNoneImpliesFolder,ppsia) #define IFolderView2_GetSelectionState(This,pidl,pdwFlags) (This)->lpVtbl->GetSelectionState(This,pidl,pdwFlags) #define IFolderView2_InvokeVerbOnSelection(This,pszVerb) (This)->lpVtbl->InvokeVerbOnSelection(This,pszVerb) #define IFolderView2_SetViewModeAndIconSize(This,uViewMode,iImageSize) (This)->lpVtbl->SetViewModeAndIconSize(This,uViewMode,iImageSize) #define IFolderView2_GetViewModeAndIconSize(This,puViewMode,piImageSize) (This)->lpVtbl->GetViewModeAndIconSize(This,puViewMode,piImageSize) #define IFolderView2_SetGroupSubsetCount(This,cVisibleRows) (This)->lpVtbl->SetGroupSubsetCount(This,cVisibleRows) #define IFolderView2_GetGroupSubsetCount(This,pcVisibleRows) (This)->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows) #define IFolderView2_SetRedraw(This,fRedrawOn) (This)->lpVtbl->SetRedraw(This,fRedrawOn) #define IFolderView2_IsMoveInSameFolder(This) (This)->lpVtbl->IsMoveInSameFolder(This) #define IFolderView2_DoRename(This) (This)->lpVtbl->DoRename(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderView2_QueryInterface(IFolderView2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderView2_AddRef(IFolderView2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderView2_Release(IFolderView2* This) { return This->lpVtbl->Release(This); } /*** IFolderView methods ***/ static FORCEINLINE HRESULT IFolderView2_GetCurrentViewMode(IFolderView2* This,UINT *pViewMode) { return This->lpVtbl->GetCurrentViewMode(This,pViewMode); } static FORCEINLINE HRESULT IFolderView2_SetCurrentViewMode(IFolderView2* This,UINT ViewMode) { return This->lpVtbl->SetCurrentViewMode(This,ViewMode); } static FORCEINLINE HRESULT IFolderView2_GetFolder(IFolderView2* This,REFIID riid,void **ppv) { return This->lpVtbl->GetFolder(This,riid,ppv); } static FORCEINLINE HRESULT IFolderView2_Item(IFolderView2* This,int iItemIndex,PITEMID_CHILD *ppidl) { return This->lpVtbl->Item(This,iItemIndex,ppidl); } static FORCEINLINE HRESULT IFolderView2_ItemCount(IFolderView2* This,UINT uFlags,int *pcItems) { return This->lpVtbl->ItemCount(This,uFlags,pcItems); } static FORCEINLINE HRESULT IFolderView2_Items(IFolderView2* This,UINT uFlags,REFIID riid,void **ppv) { return This->lpVtbl->Items(This,uFlags,riid,ppv); } static FORCEINLINE HRESULT IFolderView2_GetSelectionMarkedItem(IFolderView2* This,int *piItem) { return This->lpVtbl->GetSelectionMarkedItem(This,piItem); } static FORCEINLINE HRESULT IFolderView2_GetFocusedItem(IFolderView2* This,int *piItem) { return This->lpVtbl->GetFocusedItem(This,piItem); } static FORCEINLINE HRESULT IFolderView2_GetItemPosition(IFolderView2* This,PCUITEMID_CHILD pidl,POINT *ppt) { return This->lpVtbl->GetItemPosition(This,pidl,ppt); } static FORCEINLINE HRESULT IFolderView2_GetSpacing(IFolderView2* This,POINT *ppt) { return This->lpVtbl->GetSpacing(This,ppt); } static FORCEINLINE HRESULT IFolderView2_GetDefaultSpacing(IFolderView2* This,POINT *ppt) { return This->lpVtbl->GetDefaultSpacing(This,ppt); } static FORCEINLINE HRESULT IFolderView2_GetAutoArrange(IFolderView2* This) { return This->lpVtbl->GetAutoArrange(This); } static FORCEINLINE HRESULT IFolderView2_SelectItem(IFolderView2* This,int iItem,DWORD dwFlags) { return This->lpVtbl->SelectItem(This,iItem,dwFlags); } static FORCEINLINE HRESULT IFolderView2_SelectAndPositionItems(IFolderView2* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,POINT *apt,DWORD dwFlags) { return This->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags); } /*** IFolderView2 methods ***/ static FORCEINLINE HRESULT IFolderView2_SetGroupBy(IFolderView2* This,REFPROPERTYKEY key,WINBOOL fAscending) { return This->lpVtbl->SetGroupBy(This,key,fAscending); } static FORCEINLINE HRESULT IFolderView2_GetGroupBy(IFolderView2* This,PROPERTYKEY *pkey,WINBOOL *pfAscending) { return This->lpVtbl->GetGroupBy(This,pkey,pfAscending); } static FORCEINLINE HRESULT IFolderView2_SetViewProperty(IFolderView2* This,PCUITEMID_CHILD pidl,REFPROPERTYKEY propkey,REFPROPVARIANT propvar) { return This->lpVtbl->SetViewProperty(This,pidl,propkey,propvar); } static FORCEINLINE HRESULT IFolderView2_GetViewProperty(IFolderView2* This,PCUITEMID_CHILD pidl,REFPROPERTYKEY propkey,PROPVARIANT *ppropvar) { return This->lpVtbl->GetViewProperty(This,pidl,propkey,ppropvar); } static FORCEINLINE HRESULT IFolderView2_SetTileViewProperties(IFolderView2* This,PCUITEMID_CHILD pidl,LPCWSTR pszPropList) { return This->lpVtbl->SetTileViewProperties(This,pidl,pszPropList); } static FORCEINLINE HRESULT IFolderView2_SetExtendedTileViewProperties(IFolderView2* This,PCUITEMID_CHILD pidl,LPCWSTR pszPropList) { return This->lpVtbl->SetExtendedTileViewProperties(This,pidl,pszPropList); } static FORCEINLINE HRESULT IFolderView2_SetText(IFolderView2* This,FVTEXTTYPE iType,LPCWSTR pwszText) { return This->lpVtbl->SetText(This,iType,pwszText); } static FORCEINLINE HRESULT IFolderView2_SetCurrentFolderFlags(IFolderView2* This,DWORD dwMask,DWORD dwFlags) { return This->lpVtbl->SetCurrentFolderFlags(This,dwMask,dwFlags); } static FORCEINLINE HRESULT IFolderView2_GetCurrentFolderFlags(IFolderView2* This,DWORD *pdwFlags) { return This->lpVtbl->GetCurrentFolderFlags(This,pdwFlags); } static FORCEINLINE HRESULT IFolderView2_GetSortColumnCount(IFolderView2* This,int *pcColumns) { return This->lpVtbl->GetSortColumnCount(This,pcColumns); } static FORCEINLINE HRESULT IFolderView2_SetSortColumns(IFolderView2* This,const SORTCOLUMN *rgSortColumns,int cColumns) { return This->lpVtbl->SetSortColumns(This,rgSortColumns,cColumns); } static FORCEINLINE HRESULT IFolderView2_GetSortColumns(IFolderView2* This,SORTCOLUMN *rgSortColumns,int cColumns) { return This->lpVtbl->GetSortColumns(This,rgSortColumns,cColumns); } static FORCEINLINE HRESULT IFolderView2_GetItem(IFolderView2* This,int iItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItem(This,iItem,riid,ppv); } static FORCEINLINE HRESULT IFolderView2_GetVisibleItem(IFolderView2* This,int iStart,WINBOOL fPrevious,int *piItem) { return This->lpVtbl->GetVisibleItem(This,iStart,fPrevious,piItem); } static FORCEINLINE HRESULT IFolderView2_GetSelectedItem(IFolderView2* This,int iStart,int *piItem) { return This->lpVtbl->GetSelectedItem(This,iStart,piItem); } static FORCEINLINE HRESULT IFolderView2_GetSelection(IFolderView2* This,WINBOOL fNoneImpliesFolder,IShellItemArray **ppsia) { return This->lpVtbl->GetSelection(This,fNoneImpliesFolder,ppsia); } static FORCEINLINE HRESULT IFolderView2_GetSelectionState(IFolderView2* This,PCUITEMID_CHILD pidl,DWORD *pdwFlags) { return This->lpVtbl->GetSelectionState(This,pidl,pdwFlags); } static FORCEINLINE HRESULT IFolderView2_InvokeVerbOnSelection(IFolderView2* This,LPCSTR pszVerb) { return This->lpVtbl->InvokeVerbOnSelection(This,pszVerb); } static FORCEINLINE HRESULT IFolderView2_SetViewModeAndIconSize(IFolderView2* This,FOLDERVIEWMODE uViewMode,int iImageSize) { return This->lpVtbl->SetViewModeAndIconSize(This,uViewMode,iImageSize); } static FORCEINLINE HRESULT IFolderView2_GetViewModeAndIconSize(IFolderView2* This,FOLDERVIEWMODE *puViewMode,int *piImageSize) { return This->lpVtbl->GetViewModeAndIconSize(This,puViewMode,piImageSize); } static FORCEINLINE HRESULT IFolderView2_SetGroupSubsetCount(IFolderView2* This,UINT cVisibleRows) { return This->lpVtbl->SetGroupSubsetCount(This,cVisibleRows); } static FORCEINLINE HRESULT IFolderView2_GetGroupSubsetCount(IFolderView2* This,UINT *pcVisibleRows) { return This->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows); } static FORCEINLINE HRESULT IFolderView2_SetRedraw(IFolderView2* This,WINBOOL fRedrawOn) { return This->lpVtbl->SetRedraw(This,fRedrawOn); } static FORCEINLINE HRESULT IFolderView2_IsMoveInSameFolder(IFolderView2* This) { return This->lpVtbl->IsMoveInSameFolder(This); } static FORCEINLINE HRESULT IFolderView2_DoRename(IFolderView2* This) { return This->lpVtbl->DoRename(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IFolderView2_RemoteGetGroupBy_Proxy( IFolderView2* This, PROPERTYKEY *pkey, WINBOOL *pfAscending); void __RPC_STUB IFolderView2_RemoteGetGroupBy_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IFolderView2_GetGroupBy_Proxy( IFolderView2* This, PROPERTYKEY *pkey, WINBOOL *pfAscending); HRESULT __RPC_STUB IFolderView2_GetGroupBy_Stub( IFolderView2* This, PROPERTYKEY *pkey, WINBOOL *pfAscending); #endif /* __IFolderView2_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * IFolderViewSettings interface */ #ifndef __IFolderViewSettings_INTERFACE_DEFINED__ #define __IFolderViewSettings_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderViewSettings, 0xae8c987d, 0x8797, 0x4ed3, 0xbe,0x72, 0x2a,0x47,0xdd,0x93,0x8d,0xb0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ae8c987d-8797-4ed3-be72-2a47dd938db0") IFolderViewSettings : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetColumnPropertyList( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupByProperty( PROPERTYKEY *pkey, WINBOOL *pfGroupAscending) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewMode( FOLDERLOGICALVIEWMODE *plvm) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconSize( UINT *puIconSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderFlags( FOLDERFLAGS *pfolderMask, FOLDERFLAGS *pfolderFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortColumns( SORTCOLUMN *rgSortColumns, UINT cColumnsIn, UINT *pcColumnsOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupSubsetCount( UINT *pcVisibleRows) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderViewSettings, 0xae8c987d, 0x8797, 0x4ed3, 0xbe,0x72, 0x2a,0x47,0xdd,0x93,0x8d,0xb0) #endif #else typedef struct IFolderViewSettingsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderViewSettings *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderViewSettings *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderViewSettings *This); /*** IFolderViewSettings methods ***/ HRESULT (STDMETHODCALLTYPE *GetColumnPropertyList)( IFolderViewSettings *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetGroupByProperty)( IFolderViewSettings *This, PROPERTYKEY *pkey, WINBOOL *pfGroupAscending); HRESULT (STDMETHODCALLTYPE *GetViewMode)( IFolderViewSettings *This, FOLDERLOGICALVIEWMODE *plvm); HRESULT (STDMETHODCALLTYPE *GetIconSize)( IFolderViewSettings *This, UINT *puIconSize); HRESULT (STDMETHODCALLTYPE *GetFolderFlags)( IFolderViewSettings *This, FOLDERFLAGS *pfolderMask, FOLDERFLAGS *pfolderFlags); HRESULT (STDMETHODCALLTYPE *GetSortColumns)( IFolderViewSettings *This, SORTCOLUMN *rgSortColumns, UINT cColumnsIn, UINT *pcColumnsOut); HRESULT (STDMETHODCALLTYPE *GetGroupSubsetCount)( IFolderViewSettings *This, UINT *pcVisibleRows); END_INTERFACE } IFolderViewSettingsVtbl; interface IFolderViewSettings { CONST_VTBL IFolderViewSettingsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderViewSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderViewSettings_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderViewSettings_Release(This) (This)->lpVtbl->Release(This) /*** IFolderViewSettings methods ***/ #define IFolderViewSettings_GetColumnPropertyList(This,riid,ppv) (This)->lpVtbl->GetColumnPropertyList(This,riid,ppv) #define IFolderViewSettings_GetGroupByProperty(This,pkey,pfGroupAscending) (This)->lpVtbl->GetGroupByProperty(This,pkey,pfGroupAscending) #define IFolderViewSettings_GetViewMode(This,plvm) (This)->lpVtbl->GetViewMode(This,plvm) #define IFolderViewSettings_GetIconSize(This,puIconSize) (This)->lpVtbl->GetIconSize(This,puIconSize) #define IFolderViewSettings_GetFolderFlags(This,pfolderMask,pfolderFlags) (This)->lpVtbl->GetFolderFlags(This,pfolderMask,pfolderFlags) #define IFolderViewSettings_GetSortColumns(This,rgSortColumns,cColumnsIn,pcColumnsOut) (This)->lpVtbl->GetSortColumns(This,rgSortColumns,cColumnsIn,pcColumnsOut) #define IFolderViewSettings_GetGroupSubsetCount(This,pcVisibleRows) (This)->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderViewSettings_QueryInterface(IFolderViewSettings* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderViewSettings_AddRef(IFolderViewSettings* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderViewSettings_Release(IFolderViewSettings* This) { return This->lpVtbl->Release(This); } /*** IFolderViewSettings methods ***/ static FORCEINLINE HRESULT IFolderViewSettings_GetColumnPropertyList(IFolderViewSettings* This,REFIID riid,void **ppv) { return This->lpVtbl->GetColumnPropertyList(This,riid,ppv); } static FORCEINLINE HRESULT IFolderViewSettings_GetGroupByProperty(IFolderViewSettings* This,PROPERTYKEY *pkey,WINBOOL *pfGroupAscending) { return This->lpVtbl->GetGroupByProperty(This,pkey,pfGroupAscending); } static FORCEINLINE HRESULT IFolderViewSettings_GetViewMode(IFolderViewSettings* This,FOLDERLOGICALVIEWMODE *plvm) { return This->lpVtbl->GetViewMode(This,plvm); } static FORCEINLINE HRESULT IFolderViewSettings_GetIconSize(IFolderViewSettings* This,UINT *puIconSize) { return This->lpVtbl->GetIconSize(This,puIconSize); } static FORCEINLINE HRESULT IFolderViewSettings_GetFolderFlags(IFolderViewSettings* This,FOLDERFLAGS *pfolderMask,FOLDERFLAGS *pfolderFlags) { return This->lpVtbl->GetFolderFlags(This,pfolderMask,pfolderFlags); } static FORCEINLINE HRESULT IFolderViewSettings_GetSortColumns(IFolderViewSettings* This,SORTCOLUMN *rgSortColumns,UINT cColumnsIn,UINT *pcColumnsOut) { return This->lpVtbl->GetSortColumns(This,rgSortColumns,cColumnsIn,pcColumnsOut); } static FORCEINLINE HRESULT IFolderViewSettings_GetGroupSubsetCount(IFolderViewSettings* This,UINT *pcVisibleRows) { return This->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows); } #endif #endif #endif #endif /* __IFolderViewSettings_INTERFACE_DEFINED__ */ #endif #endif #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * IPreviewHandlerVisuals interface */ #ifndef __IPreviewHandlerVisuals_INTERFACE_DEFINED__ #define __IPreviewHandlerVisuals_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPreviewHandlerVisuals, 0x196bf9a5, 0xb346, 0x4ef0, 0xaa,0x1e, 0x5d,0xcd,0xb7,0x67,0x68,0xb1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("196bf9a5-b346-4ef0-aa1e-5dcdb76768b1") IPreviewHandlerVisuals : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( COLORREF color) = 0; virtual HRESULT STDMETHODCALLTYPE SetFont( const LOGFONTW *plf) = 0; virtual HRESULT STDMETHODCALLTYPE SetTextColor( COLORREF color) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewHandlerVisuals, 0x196bf9a5, 0xb346, 0x4ef0, 0xaa,0x1e, 0x5d,0xcd,0xb7,0x67,0x68,0xb1) #endif #else typedef struct IPreviewHandlerVisualsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewHandlerVisuals *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewHandlerVisuals *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewHandlerVisuals *This); /*** IPreviewHandlerVisuals methods ***/ HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IPreviewHandlerVisuals *This, COLORREF color); HRESULT (STDMETHODCALLTYPE *SetFont)( IPreviewHandlerVisuals *This, const LOGFONTW *plf); HRESULT (STDMETHODCALLTYPE *SetTextColor)( IPreviewHandlerVisuals *This, COLORREF color); END_INTERFACE } IPreviewHandlerVisualsVtbl; interface IPreviewHandlerVisuals { CONST_VTBL IPreviewHandlerVisualsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewHandlerVisuals_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewHandlerVisuals_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewHandlerVisuals_Release(This) (This)->lpVtbl->Release(This) /*** IPreviewHandlerVisuals methods ***/ #define IPreviewHandlerVisuals_SetBackgroundColor(This,color) (This)->lpVtbl->SetBackgroundColor(This,color) #define IPreviewHandlerVisuals_SetFont(This,plf) (This)->lpVtbl->SetFont(This,plf) #define IPreviewHandlerVisuals_SetTextColor(This,color) (This)->lpVtbl->SetTextColor(This,color) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPreviewHandlerVisuals_QueryInterface(IPreviewHandlerVisuals* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPreviewHandlerVisuals_AddRef(IPreviewHandlerVisuals* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPreviewHandlerVisuals_Release(IPreviewHandlerVisuals* This) { return This->lpVtbl->Release(This); } /*** IPreviewHandlerVisuals methods ***/ static FORCEINLINE HRESULT IPreviewHandlerVisuals_SetBackgroundColor(IPreviewHandlerVisuals* This,COLORREF color) { return This->lpVtbl->SetBackgroundColor(This,color); } static FORCEINLINE HRESULT IPreviewHandlerVisuals_SetFont(IPreviewHandlerVisuals* This,const LOGFONTW *plf) { return This->lpVtbl->SetFont(This,plf); } static FORCEINLINE HRESULT IPreviewHandlerVisuals_SetTextColor(IPreviewHandlerVisuals* This,COLORREF color) { return This->lpVtbl->SetTextColor(This,color); } #endif #endif #endif #endif /* __IPreviewHandlerVisuals_INTERFACE_DEFINED__ */ /***************************************************************************** * IVisualProperties interface */ #ifndef __IVisualProperties_INTERFACE_DEFINED__ #define __IVisualProperties_INTERFACE_DEFINED__ typedef enum VPWATERMARKFLAGS { VPWF_DEFAULT = 0x0, VPWF_ALPHABLEND = 0x1 } VPWATERMARKFLAGS; typedef enum VPCOLORFLAGS { VPCF_TEXT = 1, VPCF_BACKGROUND = 2, VPCF_SORTCOLUMN = 3, VPCF_SUBTEXT = 4, VPCF_TEXTBACKGROUND = 5 } VPCOLORFLAGS; DEFINE_ENUM_FLAG_OPERATORS(VPWATERMARKFLAGS) DEFINE_GUID(IID_IVisualProperties, 0xe693cf68, 0xd967, 0x4112, 0x87,0x63, 0x99,0x17,0x2a,0xee,0x5e,0x5a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e693cf68-d967-4112-8763-99172aee5e5a") IVisualProperties : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetWatermark( HBITMAP hbmp, VPWATERMARKFLAGS vpwf) = 0; virtual HRESULT STDMETHODCALLTYPE SetColor( VPCOLORFLAGS vpcf, COLORREF cr) = 0; virtual HRESULT STDMETHODCALLTYPE GetColor( VPCOLORFLAGS vpcf, COLORREF *pcr) = 0; virtual HRESULT STDMETHODCALLTYPE SetItemHeight( int cyItemInPixels) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemHeight( int *cyItemInPixels) = 0; virtual HRESULT STDMETHODCALLTYPE SetFont( const LOGFONTW *plf, WINBOOL bRedraw) = 0; virtual HRESULT STDMETHODCALLTYPE GetFont( LOGFONTW *plf) = 0; virtual HRESULT STDMETHODCALLTYPE SetTheme( LPCWSTR pszSubAppName, LPCWSTR pszSubIdList) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IVisualProperties, 0xe693cf68, 0xd967, 0x4112, 0x87,0x63, 0x99,0x17,0x2a,0xee,0x5e,0x5a) #endif #else typedef struct IVisualPropertiesVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IVisualProperties *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IVisualProperties *This); ULONG (STDMETHODCALLTYPE *Release)( IVisualProperties *This); /*** IVisualProperties methods ***/ HRESULT (STDMETHODCALLTYPE *SetWatermark)( IVisualProperties *This, HBITMAP hbmp, VPWATERMARKFLAGS vpwf); HRESULT (STDMETHODCALLTYPE *SetColor)( IVisualProperties *This, VPCOLORFLAGS vpcf, COLORREF cr); HRESULT (STDMETHODCALLTYPE *GetColor)( IVisualProperties *This, VPCOLORFLAGS vpcf, COLORREF *pcr); HRESULT (STDMETHODCALLTYPE *SetItemHeight)( IVisualProperties *This, int cyItemInPixels); HRESULT (STDMETHODCALLTYPE *GetItemHeight)( IVisualProperties *This, int *cyItemInPixels); HRESULT (STDMETHODCALLTYPE *SetFont)( IVisualProperties *This, const LOGFONTW *plf, WINBOOL bRedraw); HRESULT (STDMETHODCALLTYPE *GetFont)( IVisualProperties *This, LOGFONTW *plf); HRESULT (STDMETHODCALLTYPE *SetTheme)( IVisualProperties *This, LPCWSTR pszSubAppName, LPCWSTR pszSubIdList); END_INTERFACE } IVisualPropertiesVtbl; interface IVisualProperties { CONST_VTBL IVisualPropertiesVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IVisualProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IVisualProperties_AddRef(This) (This)->lpVtbl->AddRef(This) #define IVisualProperties_Release(This) (This)->lpVtbl->Release(This) /*** IVisualProperties methods ***/ #define IVisualProperties_SetWatermark(This,hbmp,vpwf) (This)->lpVtbl->SetWatermark(This,hbmp,vpwf) #define IVisualProperties_SetColor(This,vpcf,cr) (This)->lpVtbl->SetColor(This,vpcf,cr) #define IVisualProperties_GetColor(This,vpcf,pcr) (This)->lpVtbl->GetColor(This,vpcf,pcr) #define IVisualProperties_SetItemHeight(This,cyItemInPixels) (This)->lpVtbl->SetItemHeight(This,cyItemInPixels) #define IVisualProperties_GetItemHeight(This,cyItemInPixels) (This)->lpVtbl->GetItemHeight(This,cyItemInPixels) #define IVisualProperties_SetFont(This,plf,bRedraw) (This)->lpVtbl->SetFont(This,plf,bRedraw) #define IVisualProperties_GetFont(This,plf) (This)->lpVtbl->GetFont(This,plf) #define IVisualProperties_SetTheme(This,pszSubAppName,pszSubIdList) (This)->lpVtbl->SetTheme(This,pszSubAppName,pszSubIdList) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IVisualProperties_QueryInterface(IVisualProperties* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IVisualProperties_AddRef(IVisualProperties* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IVisualProperties_Release(IVisualProperties* This) { return This->lpVtbl->Release(This); } /*** IVisualProperties methods ***/ static FORCEINLINE HRESULT IVisualProperties_SetWatermark(IVisualProperties* This,HBITMAP hbmp,VPWATERMARKFLAGS vpwf) { return This->lpVtbl->SetWatermark(This,hbmp,vpwf); } static FORCEINLINE HRESULT IVisualProperties_SetColor(IVisualProperties* This,VPCOLORFLAGS vpcf,COLORREF cr) { return This->lpVtbl->SetColor(This,vpcf,cr); } static FORCEINLINE HRESULT IVisualProperties_GetColor(IVisualProperties* This,VPCOLORFLAGS vpcf,COLORREF *pcr) { return This->lpVtbl->GetColor(This,vpcf,pcr); } static FORCEINLINE HRESULT IVisualProperties_SetItemHeight(IVisualProperties* This,int cyItemInPixels) { return This->lpVtbl->SetItemHeight(This,cyItemInPixels); } static FORCEINLINE HRESULT IVisualProperties_GetItemHeight(IVisualProperties* This,int *cyItemInPixels) { return This->lpVtbl->GetItemHeight(This,cyItemInPixels); } static FORCEINLINE HRESULT IVisualProperties_SetFont(IVisualProperties* This,const LOGFONTW *plf,WINBOOL bRedraw) { return This->lpVtbl->SetFont(This,plf,bRedraw); } static FORCEINLINE HRESULT IVisualProperties_GetFont(IVisualProperties* This,LOGFONTW *plf) { return This->lpVtbl->GetFont(This,plf); } static FORCEINLINE HRESULT IVisualProperties_SetTheme(IVisualProperties* This,LPCWSTR pszSubAppName,LPCWSTR pszSubIdList) { return This->lpVtbl->SetTheme(This,pszSubAppName,pszSubIdList); } #endif #endif #endif #endif /* __IVisualProperties_INTERFACE_DEFINED__ */ #endif #define CDBOSC_SETFOCUS 0x00000000 #define CDBOSC_KILLFOCUS 0x00000001 #define CDBOSC_SELCHANGE 0x00000002 #define CDBOSC_RENAME 0x00000003 #define CDBOSC_STATECHANGE 0x00000004 /***************************************************************************** * ICommDlgBrowser interface */ #ifndef __ICommDlgBrowser_INTERFACE_DEFINED__ #define __ICommDlgBrowser_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICommDlgBrowser, 0x000214f1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f1-0000-0000-c000-000000000046") ICommDlgBrowser : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnDefaultCommand( IShellView *ppshv) = 0; virtual HRESULT STDMETHODCALLTYPE OnStateChange( IShellView *ppshv, ULONG uChange) = 0; virtual HRESULT STDMETHODCALLTYPE IncludeObject( IShellView *ppshv, PCUITEMID_CHILD pidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICommDlgBrowser, 0x000214f1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ICommDlgBrowserVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICommDlgBrowser *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICommDlgBrowser *This); ULONG (STDMETHODCALLTYPE *Release)( ICommDlgBrowser *This); /*** ICommDlgBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( ICommDlgBrowser *This, IShellView *ppshv); HRESULT (STDMETHODCALLTYPE *OnStateChange)( ICommDlgBrowser *This, IShellView *ppshv, ULONG uChange); HRESULT (STDMETHODCALLTYPE *IncludeObject)( ICommDlgBrowser *This, IShellView *ppshv, PCUITEMID_CHILD pidl); END_INTERFACE } ICommDlgBrowserVtbl; interface ICommDlgBrowser { CONST_VTBL ICommDlgBrowserVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICommDlgBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICommDlgBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICommDlgBrowser_Release(This) (This)->lpVtbl->Release(This) /*** ICommDlgBrowser methods ***/ #define ICommDlgBrowser_OnDefaultCommand(This,ppshv) (This)->lpVtbl->OnDefaultCommand(This,ppshv) #define ICommDlgBrowser_OnStateChange(This,ppshv,uChange) (This)->lpVtbl->OnStateChange(This,ppshv,uChange) #define ICommDlgBrowser_IncludeObject(This,ppshv,pidl) (This)->lpVtbl->IncludeObject(This,ppshv,pidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser_QueryInterface(ICommDlgBrowser* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICommDlgBrowser_AddRef(ICommDlgBrowser* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICommDlgBrowser_Release(ICommDlgBrowser* This) { return This->lpVtbl->Release(This); } /*** ICommDlgBrowser methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser_OnDefaultCommand(ICommDlgBrowser* This,IShellView *ppshv) { return This->lpVtbl->OnDefaultCommand(This,ppshv); } static FORCEINLINE HRESULT ICommDlgBrowser_OnStateChange(ICommDlgBrowser* This,IShellView *ppshv,ULONG uChange) { return This->lpVtbl->OnStateChange(This,ppshv,uChange); } static FORCEINLINE HRESULT ICommDlgBrowser_IncludeObject(ICommDlgBrowser* This,IShellView *ppshv,PCUITEMID_CHILD pidl) { return This->lpVtbl->IncludeObject(This,ppshv,pidl); } #endif #endif #endif #endif /* __ICommDlgBrowser_INTERFACE_DEFINED__ */ typedef ICommDlgBrowser *LPCOMMDLGBROWSER; #define SID_SExplorerBrowserFrame IID_ICommDlgBrowser #define CDB2N_CONTEXTMENU_DONE 0x00000001 #define CDB2N_CONTEXTMENU_START 0x00000002 #define CDB2GVF_SHOWALLFILES 0x1 #if NTDDI_VERSION >= NTDDI_VISTA #define CDB2GVF_ISFILESAVE 0x2 #define CDB2GVF_ALLOWPREVIEWPANE 0x4 #define CDB2GVF_NOSELECTVERB 0x8 #define CDB2GVF_NOINCLUDEITEM 0x10 #define CDB2GVF_ISFOLDERPICKER 0x20 #define CDB2GVF_ADDSHIELD 0x40 #endif /***************************************************************************** * ICommDlgBrowser2 interface */ #ifndef __ICommDlgBrowser2_INTERFACE_DEFINED__ #define __ICommDlgBrowser2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICommDlgBrowser2, 0x10339516, 0x2894, 0x11d2, 0x90,0x39, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("10339516-2894-11d2-9039-00c04f8eeb3e") ICommDlgBrowser2 : public ICommDlgBrowser { virtual HRESULT STDMETHODCALLTYPE Notify( IShellView *ppshv, DWORD dwNotifyType) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultMenuText( IShellView *ppshv, LPWSTR pszText, int cchMax) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewFlags( DWORD *pdwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICommDlgBrowser2, 0x10339516, 0x2894, 0x11d2, 0x90,0x39, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) #endif #else typedef struct ICommDlgBrowser2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICommDlgBrowser2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICommDlgBrowser2 *This); ULONG (STDMETHODCALLTYPE *Release)( ICommDlgBrowser2 *This); /*** ICommDlgBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( ICommDlgBrowser2 *This, IShellView *ppshv); HRESULT (STDMETHODCALLTYPE *OnStateChange)( ICommDlgBrowser2 *This, IShellView *ppshv, ULONG uChange); HRESULT (STDMETHODCALLTYPE *IncludeObject)( ICommDlgBrowser2 *This, IShellView *ppshv, PCUITEMID_CHILD pidl); /*** ICommDlgBrowser2 methods ***/ HRESULT (STDMETHODCALLTYPE *Notify)( ICommDlgBrowser2 *This, IShellView *ppshv, DWORD dwNotifyType); HRESULT (STDMETHODCALLTYPE *GetDefaultMenuText)( ICommDlgBrowser2 *This, IShellView *ppshv, LPWSTR pszText, int cchMax); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( ICommDlgBrowser2 *This, DWORD *pdwFlags); END_INTERFACE } ICommDlgBrowser2Vtbl; interface ICommDlgBrowser2 { CONST_VTBL ICommDlgBrowser2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICommDlgBrowser2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICommDlgBrowser2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICommDlgBrowser2_Release(This) (This)->lpVtbl->Release(This) /*** ICommDlgBrowser methods ***/ #define ICommDlgBrowser2_OnDefaultCommand(This,ppshv) (This)->lpVtbl->OnDefaultCommand(This,ppshv) #define ICommDlgBrowser2_OnStateChange(This,ppshv,uChange) (This)->lpVtbl->OnStateChange(This,ppshv,uChange) #define ICommDlgBrowser2_IncludeObject(This,ppshv,pidl) (This)->lpVtbl->IncludeObject(This,ppshv,pidl) /*** ICommDlgBrowser2 methods ***/ #define ICommDlgBrowser2_Notify(This,ppshv,dwNotifyType) (This)->lpVtbl->Notify(This,ppshv,dwNotifyType) #define ICommDlgBrowser2_GetDefaultMenuText(This,ppshv,pszText,cchMax) (This)->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax) #define ICommDlgBrowser2_GetViewFlags(This,pdwFlags) (This)->lpVtbl->GetViewFlags(This,pdwFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser2_QueryInterface(ICommDlgBrowser2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICommDlgBrowser2_AddRef(ICommDlgBrowser2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICommDlgBrowser2_Release(ICommDlgBrowser2* This) { return This->lpVtbl->Release(This); } /*** ICommDlgBrowser methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser2_OnDefaultCommand(ICommDlgBrowser2* This,IShellView *ppshv) { return This->lpVtbl->OnDefaultCommand(This,ppshv); } static FORCEINLINE HRESULT ICommDlgBrowser2_OnStateChange(ICommDlgBrowser2* This,IShellView *ppshv,ULONG uChange) { return This->lpVtbl->OnStateChange(This,ppshv,uChange); } static FORCEINLINE HRESULT ICommDlgBrowser2_IncludeObject(ICommDlgBrowser2* This,IShellView *ppshv,PCUITEMID_CHILD pidl) { return This->lpVtbl->IncludeObject(This,ppshv,pidl); } /*** ICommDlgBrowser2 methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser2_Notify(ICommDlgBrowser2* This,IShellView *ppshv,DWORD dwNotifyType) { return This->lpVtbl->Notify(This,ppshv,dwNotifyType); } static FORCEINLINE HRESULT ICommDlgBrowser2_GetDefaultMenuText(ICommDlgBrowser2* This,IShellView *ppshv,LPWSTR pszText,int cchMax) { return This->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax); } static FORCEINLINE HRESULT ICommDlgBrowser2_GetViewFlags(ICommDlgBrowser2* This,DWORD *pdwFlags) { return This->lpVtbl->GetViewFlags(This,pdwFlags); } #endif #endif #endif #endif /* __ICommDlgBrowser2_INTERFACE_DEFINED__ */ typedef ICommDlgBrowser2 *LPCOMMDLGBROWSER2; #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * ICommDlgBrowser3 interface */ #ifndef __ICommDlgBrowser3_INTERFACE_DEFINED__ #define __ICommDlgBrowser3_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICommDlgBrowser3, 0xc8ad25a1, 0x3294, 0x41ee, 0x81,0x65, 0x71,0x17,0x4b,0xd0,0x1c,0x57); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c8ad25a1-3294-41ee-8165-71174bd01c57") ICommDlgBrowser3 : public ICommDlgBrowser2 { virtual HRESULT STDMETHODCALLTYPE OnColumnClicked( IShellView *ppshv, int iColumn) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentFilter( LPWSTR pszFileSpec, int cchFileSpec) = 0; virtual HRESULT STDMETHODCALLTYPE OnPreViewCreated( IShellView *ppshv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICommDlgBrowser3, 0xc8ad25a1, 0x3294, 0x41ee, 0x81,0x65, 0x71,0x17,0x4b,0xd0,0x1c,0x57) #endif #else typedef struct ICommDlgBrowser3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICommDlgBrowser3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICommDlgBrowser3 *This); ULONG (STDMETHODCALLTYPE *Release)( ICommDlgBrowser3 *This); /*** ICommDlgBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( ICommDlgBrowser3 *This, IShellView *ppshv); HRESULT (STDMETHODCALLTYPE *OnStateChange)( ICommDlgBrowser3 *This, IShellView *ppshv, ULONG uChange); HRESULT (STDMETHODCALLTYPE *IncludeObject)( ICommDlgBrowser3 *This, IShellView *ppshv, PCUITEMID_CHILD pidl); /*** ICommDlgBrowser2 methods ***/ HRESULT (STDMETHODCALLTYPE *Notify)( ICommDlgBrowser3 *This, IShellView *ppshv, DWORD dwNotifyType); HRESULT (STDMETHODCALLTYPE *GetDefaultMenuText)( ICommDlgBrowser3 *This, IShellView *ppshv, LPWSTR pszText, int cchMax); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( ICommDlgBrowser3 *This, DWORD *pdwFlags); /*** ICommDlgBrowser3 methods ***/ HRESULT (STDMETHODCALLTYPE *OnColumnClicked)( ICommDlgBrowser3 *This, IShellView *ppshv, int iColumn); HRESULT (STDMETHODCALLTYPE *GetCurrentFilter)( ICommDlgBrowser3 *This, LPWSTR pszFileSpec, int cchFileSpec); HRESULT (STDMETHODCALLTYPE *OnPreViewCreated)( ICommDlgBrowser3 *This, IShellView *ppshv); END_INTERFACE } ICommDlgBrowser3Vtbl; interface ICommDlgBrowser3 { CONST_VTBL ICommDlgBrowser3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICommDlgBrowser3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICommDlgBrowser3_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICommDlgBrowser3_Release(This) (This)->lpVtbl->Release(This) /*** ICommDlgBrowser methods ***/ #define ICommDlgBrowser3_OnDefaultCommand(This,ppshv) (This)->lpVtbl->OnDefaultCommand(This,ppshv) #define ICommDlgBrowser3_OnStateChange(This,ppshv,uChange) (This)->lpVtbl->OnStateChange(This,ppshv,uChange) #define ICommDlgBrowser3_IncludeObject(This,ppshv,pidl) (This)->lpVtbl->IncludeObject(This,ppshv,pidl) /*** ICommDlgBrowser2 methods ***/ #define ICommDlgBrowser3_Notify(This,ppshv,dwNotifyType) (This)->lpVtbl->Notify(This,ppshv,dwNotifyType) #define ICommDlgBrowser3_GetDefaultMenuText(This,ppshv,pszText,cchMax) (This)->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax) #define ICommDlgBrowser3_GetViewFlags(This,pdwFlags) (This)->lpVtbl->GetViewFlags(This,pdwFlags) /*** ICommDlgBrowser3 methods ***/ #define ICommDlgBrowser3_OnColumnClicked(This,ppshv,iColumn) (This)->lpVtbl->OnColumnClicked(This,ppshv,iColumn) #define ICommDlgBrowser3_GetCurrentFilter(This,pszFileSpec,cchFileSpec) (This)->lpVtbl->GetCurrentFilter(This,pszFileSpec,cchFileSpec) #define ICommDlgBrowser3_OnPreViewCreated(This,ppshv) (This)->lpVtbl->OnPreViewCreated(This,ppshv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser3_QueryInterface(ICommDlgBrowser3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICommDlgBrowser3_AddRef(ICommDlgBrowser3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICommDlgBrowser3_Release(ICommDlgBrowser3* This) { return This->lpVtbl->Release(This); } /*** ICommDlgBrowser methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser3_OnDefaultCommand(ICommDlgBrowser3* This,IShellView *ppshv) { return This->lpVtbl->OnDefaultCommand(This,ppshv); } static FORCEINLINE HRESULT ICommDlgBrowser3_OnStateChange(ICommDlgBrowser3* This,IShellView *ppshv,ULONG uChange) { return This->lpVtbl->OnStateChange(This,ppshv,uChange); } static FORCEINLINE HRESULT ICommDlgBrowser3_IncludeObject(ICommDlgBrowser3* This,IShellView *ppshv,PCUITEMID_CHILD pidl) { return This->lpVtbl->IncludeObject(This,ppshv,pidl); } /*** ICommDlgBrowser2 methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser3_Notify(ICommDlgBrowser3* This,IShellView *ppshv,DWORD dwNotifyType) { return This->lpVtbl->Notify(This,ppshv,dwNotifyType); } static FORCEINLINE HRESULT ICommDlgBrowser3_GetDefaultMenuText(ICommDlgBrowser3* This,IShellView *ppshv,LPWSTR pszText,int cchMax) { return This->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax); } static FORCEINLINE HRESULT ICommDlgBrowser3_GetViewFlags(ICommDlgBrowser3* This,DWORD *pdwFlags) { return This->lpVtbl->GetViewFlags(This,pdwFlags); } /*** ICommDlgBrowser3 methods ***/ static FORCEINLINE HRESULT ICommDlgBrowser3_OnColumnClicked(ICommDlgBrowser3* This,IShellView *ppshv,int iColumn) { return This->lpVtbl->OnColumnClicked(This,ppshv,iColumn); } static FORCEINLINE HRESULT ICommDlgBrowser3_GetCurrentFilter(ICommDlgBrowser3* This,LPWSTR pszFileSpec,int cchFileSpec) { return This->lpVtbl->GetCurrentFilter(This,pszFileSpec,cchFileSpec); } static FORCEINLINE HRESULT ICommDlgBrowser3_OnPreViewCreated(ICommDlgBrowser3* This,IShellView *ppshv) { return This->lpVtbl->OnPreViewCreated(This,ppshv); } #endif #endif #endif #endif /* __ICommDlgBrowser3_INTERFACE_DEFINED__ */ typedef enum CM_MASK { CM_MASK_WIDTH = 0x1, CM_MASK_DEFAULTWIDTH = 0x2, CM_MASK_IDEALWIDTH = 0x4, CM_MASK_NAME = 0x8, CM_MASK_STATE = 0x10 } CM_MASK; DEFINE_ENUM_FLAG_OPERATORS(CM_MASK) typedef enum CM_STATE { CM_STATE_NONE = 0x0, CM_STATE_VISIBLE = 0x1, CM_STATE_FIXEDWIDTH = 0x2, CM_STATE_NOSORTBYFOLDERNESS = 0x4, CM_STATE_ALWAYSVISIBLE = 0x8 } CM_STATE; DEFINE_ENUM_FLAG_OPERATORS(CM_STATE) typedef enum CM_ENUM_FLAGS { CM_ENUM_ALL = 0x1, CM_ENUM_VISIBLE = 0x2 } CM_ENUM_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(CM_ENUM_FLAGS) typedef enum CM_SET_WIDTH_VALUE { CM_WIDTH_USEDEFAULT = -1, CM_WIDTH_AUTOSIZE = -2 } CM_SET_WIDTH_VALUE; typedef struct CM_COLUMNINFO { DWORD cbSize; DWORD dwMask; DWORD dwState; UINT uWidth; UINT uDefaultWidth; UINT uIdealWidth; WCHAR wszName[80]; } CM_COLUMNINFO; /***************************************************************************** * IColumnManager interface */ #ifndef __IColumnManager_INTERFACE_DEFINED__ #define __IColumnManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_IColumnManager, 0xd8ec27bb, 0x3f3b, 0x4042, 0xb1,0x0a, 0x4a,0xcf,0xd9,0x24,0xd4,0x53); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d8ec27bb-3f3b-4042-b10a-4acfd924d453") IColumnManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetColumnInfo( REFPROPERTYKEY propkey, const CM_COLUMNINFO *pcmci) = 0; virtual HRESULT STDMETHODCALLTYPE GetColumnInfo( REFPROPERTYKEY propkey, CM_COLUMNINFO *pcmci) = 0; virtual HRESULT STDMETHODCALLTYPE GetColumnCount( CM_ENUM_FLAGS dwFlags, UINT *puCount) = 0; virtual HRESULT STDMETHODCALLTYPE GetColumns( CM_ENUM_FLAGS dwFlags, PROPERTYKEY *rgkeyOrder, UINT cColumns) = 0; virtual HRESULT STDMETHODCALLTYPE SetColumns( const PROPERTYKEY *rgkeyOrder, UINT cVisible) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IColumnManager, 0xd8ec27bb, 0x3f3b, 0x4042, 0xb1,0x0a, 0x4a,0xcf,0xd9,0x24,0xd4,0x53) #endif #else typedef struct IColumnManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IColumnManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IColumnManager *This); ULONG (STDMETHODCALLTYPE *Release)( IColumnManager *This); /*** IColumnManager methods ***/ HRESULT (STDMETHODCALLTYPE *SetColumnInfo)( IColumnManager *This, REFPROPERTYKEY propkey, const CM_COLUMNINFO *pcmci); HRESULT (STDMETHODCALLTYPE *GetColumnInfo)( IColumnManager *This, REFPROPERTYKEY propkey, CM_COLUMNINFO *pcmci); HRESULT (STDMETHODCALLTYPE *GetColumnCount)( IColumnManager *This, CM_ENUM_FLAGS dwFlags, UINT *puCount); HRESULT (STDMETHODCALLTYPE *GetColumns)( IColumnManager *This, CM_ENUM_FLAGS dwFlags, PROPERTYKEY *rgkeyOrder, UINT cColumns); HRESULT (STDMETHODCALLTYPE *SetColumns)( IColumnManager *This, const PROPERTYKEY *rgkeyOrder, UINT cVisible); END_INTERFACE } IColumnManagerVtbl; interface IColumnManager { CONST_VTBL IColumnManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IColumnManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IColumnManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IColumnManager_Release(This) (This)->lpVtbl->Release(This) /*** IColumnManager methods ***/ #define IColumnManager_SetColumnInfo(This,propkey,pcmci) (This)->lpVtbl->SetColumnInfo(This,propkey,pcmci) #define IColumnManager_GetColumnInfo(This,propkey,pcmci) (This)->lpVtbl->GetColumnInfo(This,propkey,pcmci) #define IColumnManager_GetColumnCount(This,dwFlags,puCount) (This)->lpVtbl->GetColumnCount(This,dwFlags,puCount) #define IColumnManager_GetColumns(This,dwFlags,rgkeyOrder,cColumns) (This)->lpVtbl->GetColumns(This,dwFlags,rgkeyOrder,cColumns) #define IColumnManager_SetColumns(This,rgkeyOrder,cVisible) (This)->lpVtbl->SetColumns(This,rgkeyOrder,cVisible) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IColumnManager_QueryInterface(IColumnManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IColumnManager_AddRef(IColumnManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IColumnManager_Release(IColumnManager* This) { return This->lpVtbl->Release(This); } /*** IColumnManager methods ***/ static FORCEINLINE HRESULT IColumnManager_SetColumnInfo(IColumnManager* This,REFPROPERTYKEY propkey,const CM_COLUMNINFO *pcmci) { return This->lpVtbl->SetColumnInfo(This,propkey,pcmci); } static FORCEINLINE HRESULT IColumnManager_GetColumnInfo(IColumnManager* This,REFPROPERTYKEY propkey,CM_COLUMNINFO *pcmci) { return This->lpVtbl->GetColumnInfo(This,propkey,pcmci); } static FORCEINLINE HRESULT IColumnManager_GetColumnCount(IColumnManager* This,CM_ENUM_FLAGS dwFlags,UINT *puCount) { return This->lpVtbl->GetColumnCount(This,dwFlags,puCount); } static FORCEINLINE HRESULT IColumnManager_GetColumns(IColumnManager* This,CM_ENUM_FLAGS dwFlags,PROPERTYKEY *rgkeyOrder,UINT cColumns) { return This->lpVtbl->GetColumns(This,dwFlags,rgkeyOrder,cColumns); } static FORCEINLINE HRESULT IColumnManager_SetColumns(IColumnManager* This,const PROPERTYKEY *rgkeyOrder,UINT cVisible) { return This->lpVtbl->SetColumns(This,rgkeyOrder,cVisible); } #endif #endif #endif #endif /* __IColumnManager_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IFolderFilterSite interface */ #ifndef __IFolderFilterSite_INTERFACE_DEFINED__ #define __IFolderFilterSite_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderFilterSite, 0xc0a651f5, 0xb48b, 0x11d2, 0xb5,0xed, 0x00,0x60,0x97,0xc6,0x86,0xf6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c0a651f5-b48b-11d2-b5ed-006097c686f6") IFolderFilterSite : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFilter( IUnknown *punk) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderFilterSite, 0xc0a651f5, 0xb48b, 0x11d2, 0xb5,0xed, 0x00,0x60,0x97,0xc6,0x86,0xf6) #endif #else typedef struct IFolderFilterSiteVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderFilterSite *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderFilterSite *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderFilterSite *This); /*** IFolderFilterSite methods ***/ HRESULT (STDMETHODCALLTYPE *SetFilter)( IFolderFilterSite *This, IUnknown *punk); END_INTERFACE } IFolderFilterSiteVtbl; interface IFolderFilterSite { CONST_VTBL IFolderFilterSiteVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderFilterSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderFilterSite_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderFilterSite_Release(This) (This)->lpVtbl->Release(This) /*** IFolderFilterSite methods ***/ #define IFolderFilterSite_SetFilter(This,punk) (This)->lpVtbl->SetFilter(This,punk) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderFilterSite_QueryInterface(IFolderFilterSite* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderFilterSite_AddRef(IFolderFilterSite* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderFilterSite_Release(IFolderFilterSite* This) { return This->lpVtbl->Release(This); } /*** IFolderFilterSite methods ***/ static FORCEINLINE HRESULT IFolderFilterSite_SetFilter(IFolderFilterSite* This,IUnknown *punk) { return This->lpVtbl->SetFilter(This,punk); } #endif #endif #endif #endif /* __IFolderFilterSite_INTERFACE_DEFINED__ */ /***************************************************************************** * IFolderFilter interface */ #ifndef __IFolderFilter_INTERFACE_DEFINED__ #define __IFolderFilter_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderFilter, 0x9cc22886, 0xdc8e, 0x11d2, 0xb1,0xd0, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9cc22886-dc8e-11d2-b1d0-00c04f8eeb3e") IFolderFilter : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ShouldShow( IShellFolder *psf, PCIDLIST_ABSOLUTE pidlFolder, PCUITEMID_CHILD pidlItem) = 0; virtual HRESULT STDMETHODCALLTYPE GetEnumFlags( IShellFolder *psf, PCIDLIST_ABSOLUTE pidlFolder, HWND *phwnd, DWORD *pgrfFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderFilter, 0x9cc22886, 0xdc8e, 0x11d2, 0xb1,0xd0, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) #endif #else typedef struct IFolderFilterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderFilter *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderFilter *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderFilter *This); /*** IFolderFilter methods ***/ HRESULT (STDMETHODCALLTYPE *ShouldShow)( IFolderFilter *This, IShellFolder *psf, PCIDLIST_ABSOLUTE pidlFolder, PCUITEMID_CHILD pidlItem); HRESULT (STDMETHODCALLTYPE *GetEnumFlags)( IFolderFilter *This, IShellFolder *psf, PCIDLIST_ABSOLUTE pidlFolder, HWND *phwnd, DWORD *pgrfFlags); END_INTERFACE } IFolderFilterVtbl; interface IFolderFilter { CONST_VTBL IFolderFilterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderFilter_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderFilter_Release(This) (This)->lpVtbl->Release(This) /*** IFolderFilter methods ***/ #define IFolderFilter_ShouldShow(This,psf,pidlFolder,pidlItem) (This)->lpVtbl->ShouldShow(This,psf,pidlFolder,pidlItem) #define IFolderFilter_GetEnumFlags(This,psf,pidlFolder,phwnd,pgrfFlags) (This)->lpVtbl->GetEnumFlags(This,psf,pidlFolder,phwnd,pgrfFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderFilter_QueryInterface(IFolderFilter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderFilter_AddRef(IFolderFilter* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderFilter_Release(IFolderFilter* This) { return This->lpVtbl->Release(This); } /*** IFolderFilter methods ***/ static FORCEINLINE HRESULT IFolderFilter_ShouldShow(IFolderFilter* This,IShellFolder *psf,PCIDLIST_ABSOLUTE pidlFolder,PCUITEMID_CHILD pidlItem) { return This->lpVtbl->ShouldShow(This,psf,pidlFolder,pidlItem); } static FORCEINLINE HRESULT IFolderFilter_GetEnumFlags(IFolderFilter* This,IShellFolder *psf,PCIDLIST_ABSOLUTE pidlFolder,HWND *phwnd,DWORD *pgrfFlags) { return This->lpVtbl->GetEnumFlags(This,psf,pidlFolder,phwnd,pgrfFlags); } #endif #endif #endif #endif /* __IFolderFilter_INTERFACE_DEFINED__ */ /***************************************************************************** * IInputObjectSite interface */ #ifndef __IInputObjectSite_INTERFACE_DEFINED__ #define __IInputObjectSite_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInputObjectSite, 0xf1db8392, 0x7331, 0x11d0, 0x8c,0x99, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f1db8392-7331-11d0-8c99-00a0c92dbfe8") IInputObjectSite : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnFocusChangeIS( IUnknown *punkObj, WINBOOL fSetFocus) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInputObjectSite, 0xf1db8392, 0x7331, 0x11d0, 0x8c,0x99, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8) #endif #else typedef struct IInputObjectSiteVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInputObjectSite *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInputObjectSite *This); ULONG (STDMETHODCALLTYPE *Release)( IInputObjectSite *This); /*** IInputObjectSite methods ***/ HRESULT (STDMETHODCALLTYPE *OnFocusChangeIS)( IInputObjectSite *This, IUnknown *punkObj, WINBOOL fSetFocus); END_INTERFACE } IInputObjectSiteVtbl; interface IInputObjectSite { CONST_VTBL IInputObjectSiteVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInputObjectSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInputObjectSite_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInputObjectSite_Release(This) (This)->lpVtbl->Release(This) /*** IInputObjectSite methods ***/ #define IInputObjectSite_OnFocusChangeIS(This,punkObj,fSetFocus) (This)->lpVtbl->OnFocusChangeIS(This,punkObj,fSetFocus) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInputObjectSite_QueryInterface(IInputObjectSite* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInputObjectSite_AddRef(IInputObjectSite* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInputObjectSite_Release(IInputObjectSite* This) { return This->lpVtbl->Release(This); } /*** IInputObjectSite methods ***/ static FORCEINLINE HRESULT IInputObjectSite_OnFocusChangeIS(IInputObjectSite* This,IUnknown *punkObj,WINBOOL fSetFocus) { return This->lpVtbl->OnFocusChangeIS(This,punkObj,fSetFocus); } #endif #endif #endif #endif /* __IInputObjectSite_INTERFACE_DEFINED__ */ /***************************************************************************** * IInputObject interface */ #ifndef __IInputObject_INTERFACE_DEFINED__ #define __IInputObject_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInputObject, 0x68284faa, 0x6a48, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("68284faa-6a48-11d0-8c78-00c04fd918b4") IInputObject : public IUnknown { virtual HRESULT STDMETHODCALLTYPE UIActivateIO( WINBOOL fActivate, MSG *pMsg) = 0; virtual HRESULT STDMETHODCALLTYPE HasFocusIO( ) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorIO( MSG *pMsg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInputObject, 0x68284faa, 0x6a48, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4) #endif #else typedef struct IInputObjectVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInputObject *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInputObject *This); ULONG (STDMETHODCALLTYPE *Release)( IInputObject *This); /*** IInputObject methods ***/ HRESULT (STDMETHODCALLTYPE *UIActivateIO)( IInputObject *This, WINBOOL fActivate, MSG *pMsg); HRESULT (STDMETHODCALLTYPE *HasFocusIO)( IInputObject *This); HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorIO)( IInputObject *This, MSG *pMsg); END_INTERFACE } IInputObjectVtbl; interface IInputObject { CONST_VTBL IInputObjectVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInputObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInputObject_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInputObject_Release(This) (This)->lpVtbl->Release(This) /*** IInputObject methods ***/ #define IInputObject_UIActivateIO(This,fActivate,pMsg) (This)->lpVtbl->UIActivateIO(This,fActivate,pMsg) #define IInputObject_HasFocusIO(This) (This)->lpVtbl->HasFocusIO(This) #define IInputObject_TranslateAcceleratorIO(This,pMsg) (This)->lpVtbl->TranslateAcceleratorIO(This,pMsg) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInputObject_QueryInterface(IInputObject* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInputObject_AddRef(IInputObject* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInputObject_Release(IInputObject* This) { return This->lpVtbl->Release(This); } /*** IInputObject methods ***/ static FORCEINLINE HRESULT IInputObject_UIActivateIO(IInputObject* This,WINBOOL fActivate,MSG *pMsg) { return This->lpVtbl->UIActivateIO(This,fActivate,pMsg); } static FORCEINLINE HRESULT IInputObject_HasFocusIO(IInputObject* This) { return This->lpVtbl->HasFocusIO(This); } static FORCEINLINE HRESULT IInputObject_TranslateAcceleratorIO(IInputObject* This,MSG *pMsg) { return This->lpVtbl->TranslateAcceleratorIO(This,pMsg); } #endif #endif #endif #endif /* __IInputObject_INTERFACE_DEFINED__ */ /***************************************************************************** * IInputObject2 interface */ #ifndef __IInputObject2_INTERFACE_DEFINED__ #define __IInputObject2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInputObject2, 0x6915c085, 0x510b, 0x44cd, 0x94,0xaf, 0x28,0xdf,0xa5,0x6c,0xf9,0x2b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6915c085-510b-44cd-94af-28dfa56cf92b") IInputObject2 : public IInputObject { virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorGlobal( MSG *pMsg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInputObject2, 0x6915c085, 0x510b, 0x44cd, 0x94,0xaf, 0x28,0xdf,0xa5,0x6c,0xf9,0x2b) #endif #else typedef struct IInputObject2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInputObject2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInputObject2 *This); ULONG (STDMETHODCALLTYPE *Release)( IInputObject2 *This); /*** IInputObject methods ***/ HRESULT (STDMETHODCALLTYPE *UIActivateIO)( IInputObject2 *This, WINBOOL fActivate, MSG *pMsg); HRESULT (STDMETHODCALLTYPE *HasFocusIO)( IInputObject2 *This); HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorIO)( IInputObject2 *This, MSG *pMsg); /*** IInputObject2 methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorGlobal)( IInputObject2 *This, MSG *pMsg); END_INTERFACE } IInputObject2Vtbl; interface IInputObject2 { CONST_VTBL IInputObject2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInputObject2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInputObject2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInputObject2_Release(This) (This)->lpVtbl->Release(This) /*** IInputObject methods ***/ #define IInputObject2_UIActivateIO(This,fActivate,pMsg) (This)->lpVtbl->UIActivateIO(This,fActivate,pMsg) #define IInputObject2_HasFocusIO(This) (This)->lpVtbl->HasFocusIO(This) #define IInputObject2_TranslateAcceleratorIO(This,pMsg) (This)->lpVtbl->TranslateAcceleratorIO(This,pMsg) /*** IInputObject2 methods ***/ #define IInputObject2_TranslateAcceleratorGlobal(This,pMsg) (This)->lpVtbl->TranslateAcceleratorGlobal(This,pMsg) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInputObject2_QueryInterface(IInputObject2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInputObject2_AddRef(IInputObject2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInputObject2_Release(IInputObject2* This) { return This->lpVtbl->Release(This); } /*** IInputObject methods ***/ static FORCEINLINE HRESULT IInputObject2_UIActivateIO(IInputObject2* This,WINBOOL fActivate,MSG *pMsg) { return This->lpVtbl->UIActivateIO(This,fActivate,pMsg); } static FORCEINLINE HRESULT IInputObject2_HasFocusIO(IInputObject2* This) { return This->lpVtbl->HasFocusIO(This); } static FORCEINLINE HRESULT IInputObject2_TranslateAcceleratorIO(IInputObject2* This,MSG *pMsg) { return This->lpVtbl->TranslateAcceleratorIO(This,pMsg); } /*** IInputObject2 methods ***/ static FORCEINLINE HRESULT IInputObject2_TranslateAcceleratorGlobal(IInputObject2* This,MSG *pMsg) { return This->lpVtbl->TranslateAcceleratorGlobal(This,pMsg); } #endif #endif #endif #endif /* __IInputObject2_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellIcon interface */ #ifndef __IShellIcon_INTERFACE_DEFINED__ #define __IShellIcon_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellIcon, 0x000214e5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e5-0000-0000-c000-000000000046") IShellIcon : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetIconOf( PCUITEMID_CHILD pidl, UINT flags, int *pIconIndex) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellIcon, 0x000214e5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellIconVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellIcon *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellIcon *This); ULONG (STDMETHODCALLTYPE *Release)( IShellIcon *This); /*** IShellIcon methods ***/ HRESULT (STDMETHODCALLTYPE *GetIconOf)( IShellIcon *This, PCUITEMID_CHILD pidl, UINT flags, int *pIconIndex); END_INTERFACE } IShellIconVtbl; interface IShellIcon { CONST_VTBL IShellIconVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellIcon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellIcon_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellIcon_Release(This) (This)->lpVtbl->Release(This) /*** IShellIcon methods ***/ #define IShellIcon_GetIconOf(This,pidl,flags,pIconIndex) (This)->lpVtbl->GetIconOf(This,pidl,flags,pIconIndex) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellIcon_QueryInterface(IShellIcon* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellIcon_AddRef(IShellIcon* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellIcon_Release(IShellIcon* This) { return This->lpVtbl->Release(This); } /*** IShellIcon methods ***/ static FORCEINLINE HRESULT IShellIcon_GetIconOf(IShellIcon* This,PCUITEMID_CHILD pidl,UINT flags,int *pIconIndex) { return This->lpVtbl->GetIconOf(This,pidl,flags,pIconIndex); } #endif #endif #endif #endif /* __IShellIcon_INTERFACE_DEFINED__ */ #define SBSP_DEFBROWSER 0x0000 #define SBSP_SAMEBROWSER 0x0001 #define SBSP_NEWBROWSER 0x0002 #define SBSP_DEFMODE 0x0000 #define SBSP_OPENMODE 0x0010 #define SBSP_EXPLOREMODE 0x0020 #define SBSP_HELPMODE 0x0040 #define SBSP_NOTRANSFERHIST 0x0080 #define SBSP_ABSOLUTE 0x0000 #define SBSP_RELATIVE 0x1000 #define SBSP_PARENT 0x2000 #define SBSP_NAVIGATEBACK 0x4000 #define SBSP_NAVIGATEFORWARD 0x8000 #define SBSP_ALLOW_AUTONAVIGATE 0x00010000 #if NTDDI_VERSION >= NTDDI_VISTA #define SBSP_KEEPSAMETEMPLATE 0x00020000 #define SBSP_KEEPWORDWHEELTEXT 0x00040000 #define SBSP_ACTIVATE_NOFOCUS 0x00080000 #define SBSP_CREATENOHISTORY 0x00100000 #define SBSP_PLAYNOSOUND 0x00200000 #endif #if _WIN32_IE >= _WIN32_IE_IE60SP2 #define SBSP_CALLERUNTRUSTED 0x00800000 #define SBSP_TRUSTFIRSTDOWNLOAD 0x01000000 #define SBSP_UNTRUSTEDFORDOWNLOAD 0x02000000 #endif #define SBSP_NOAUTOSELECT 0x04000000 #define SBSP_WRITENOHISTORY 0x08000000 #if _WIN32_IE >= _WIN32_IE_IE60SP2 #define SBSP_TRUSTEDFORACTIVEX 0x10000000 #endif #if _WIN32_IE >= _WIN32_IE_IE70 #define SBSP_FEEDNAVIGATION 0x20000000 #endif #define SBSP_REDIRECT 0x40000000 #define SBSP_INITIATEDBYHLINKFRAME 0x80000000 #define FCW_STATUS 0x0001 #define FCW_TOOLBAR 0x0002 #define FCW_TREE 0x0003 #define FCW_INTERNETBAR 0x0006 #define FCW_PROGRESS 0x0008 #define FCT_MERGE 0x0001 #define FCT_CONFIGABLE 0x0002 #define FCT_ADDTOEND 0x0004 #if 0 typedef LPARAM LPTBBUTTONSB; #else #include typedef LPTBBUTTON LPTBBUTTONSB; #endif /***************************************************************************** * IShellBrowser interface */ #ifndef __IShellBrowser_INTERFACE_DEFINED__ #define __IShellBrowser_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellBrowser, 0x000214e2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e2-0000-0000-c000-000000000046") IShellBrowser : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE InsertMenusSB( HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) = 0; virtual HRESULT STDMETHODCALLTYPE SetMenuSB( HMENU hmenuShared, HOLEMENU holemenuRes, HWND hwndActiveObject) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveMenusSB( HMENU hmenuShared) = 0; virtual HRESULT STDMETHODCALLTYPE SetStatusTextSB( LPCWSTR pszStatusText) = 0; virtual HRESULT STDMETHODCALLTYPE EnableModelessSB( WINBOOL fEnable) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorSB( MSG *pmsg, WORD wID) = 0; virtual HRESULT STDMETHODCALLTYPE BrowseObject( PCUIDLIST_RELATIVE pidl, UINT wFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewStateStream( DWORD grfMode, IStream **ppStrm) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlWindow( UINT id, HWND *phwnd) = 0; virtual HRESULT STDMETHODCALLTYPE SendControlMsg( UINT id, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pret) = 0; virtual HRESULT STDMETHODCALLTYPE QueryActiveShellView( IShellView **ppshv) = 0; virtual HRESULT STDMETHODCALLTYPE OnViewWindowActive( IShellView *pshv) = 0; virtual HRESULT STDMETHODCALLTYPE SetToolbarItems( LPTBBUTTONSB lpButtons, UINT nButtons, UINT uFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellBrowser, 0x000214e2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellBrowserVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellBrowser *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellBrowser *This); ULONG (STDMETHODCALLTYPE *Release)( IShellBrowser *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellBrowser *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellBrowser *This, WINBOOL fEnterMode); /*** IShellBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *InsertMenusSB)( IShellBrowser *This, HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths); HRESULT (STDMETHODCALLTYPE *SetMenuSB)( IShellBrowser *This, HMENU hmenuShared, HOLEMENU holemenuRes, HWND hwndActiveObject); HRESULT (STDMETHODCALLTYPE *RemoveMenusSB)( IShellBrowser *This, HMENU hmenuShared); HRESULT (STDMETHODCALLTYPE *SetStatusTextSB)( IShellBrowser *This, LPCWSTR pszStatusText); HRESULT (STDMETHODCALLTYPE *EnableModelessSB)( IShellBrowser *This, WINBOOL fEnable); HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorSB)( IShellBrowser *This, MSG *pmsg, WORD wID); HRESULT (STDMETHODCALLTYPE *BrowseObject)( IShellBrowser *This, PCUIDLIST_RELATIVE pidl, UINT wFlags); HRESULT (STDMETHODCALLTYPE *GetViewStateStream)( IShellBrowser *This, DWORD grfMode, IStream **ppStrm); HRESULT (STDMETHODCALLTYPE *GetControlWindow)( IShellBrowser *This, UINT id, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *SendControlMsg)( IShellBrowser *This, UINT id, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pret); HRESULT (STDMETHODCALLTYPE *QueryActiveShellView)( IShellBrowser *This, IShellView **ppshv); HRESULT (STDMETHODCALLTYPE *OnViewWindowActive)( IShellBrowser *This, IShellView *pshv); HRESULT (STDMETHODCALLTYPE *SetToolbarItems)( IShellBrowser *This, LPTBBUTTONSB lpButtons, UINT nButtons, UINT uFlags); END_INTERFACE } IShellBrowserVtbl; interface IShellBrowser { CONST_VTBL IShellBrowserVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellBrowser_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellBrowser_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellBrowser_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellBrowser methods ***/ #define IShellBrowser_InsertMenusSB(This,hmenuShared,lpMenuWidths) (This)->lpVtbl->InsertMenusSB(This,hmenuShared,lpMenuWidths) #define IShellBrowser_SetMenuSB(This,hmenuShared,holemenuRes,hwndActiveObject) (This)->lpVtbl->SetMenuSB(This,hmenuShared,holemenuRes,hwndActiveObject) #define IShellBrowser_RemoveMenusSB(This,hmenuShared) (This)->lpVtbl->RemoveMenusSB(This,hmenuShared) #define IShellBrowser_SetStatusTextSB(This,pszStatusText) (This)->lpVtbl->SetStatusTextSB(This,pszStatusText) #define IShellBrowser_EnableModelessSB(This,fEnable) (This)->lpVtbl->EnableModelessSB(This,fEnable) #define IShellBrowser_TranslateAcceleratorSB(This,pmsg,wID) (This)->lpVtbl->TranslateAcceleratorSB(This,pmsg,wID) #define IShellBrowser_BrowseObject(This,pidl,wFlags) (This)->lpVtbl->BrowseObject(This,pidl,wFlags) #define IShellBrowser_GetViewStateStream(This,grfMode,ppStrm) (This)->lpVtbl->GetViewStateStream(This,grfMode,ppStrm) #define IShellBrowser_GetControlWindow(This,id,phwnd) (This)->lpVtbl->GetControlWindow(This,id,phwnd) #define IShellBrowser_SendControlMsg(This,id,uMsg,wParam,lParam,pret) (This)->lpVtbl->SendControlMsg(This,id,uMsg,wParam,lParam,pret) #define IShellBrowser_QueryActiveShellView(This,ppshv) (This)->lpVtbl->QueryActiveShellView(This,ppshv) #define IShellBrowser_OnViewWindowActive(This,pshv) (This)->lpVtbl->OnViewWindowActive(This,pshv) #define IShellBrowser_SetToolbarItems(This,lpButtons,nButtons,uFlags) (This)->lpVtbl->SetToolbarItems(This,lpButtons,nButtons,uFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellBrowser_QueryInterface(IShellBrowser* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellBrowser_AddRef(IShellBrowser* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellBrowser_Release(IShellBrowser* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IShellBrowser_GetWindow(IShellBrowser* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IShellBrowser_ContextSensitiveHelp(IShellBrowser* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellBrowser methods ***/ static FORCEINLINE HRESULT IShellBrowser_InsertMenusSB(IShellBrowser* This,HMENU hmenuShared,LPOLEMENUGROUPWIDTHS lpMenuWidths) { return This->lpVtbl->InsertMenusSB(This,hmenuShared,lpMenuWidths); } static FORCEINLINE HRESULT IShellBrowser_SetMenuSB(IShellBrowser* This,HMENU hmenuShared,HOLEMENU holemenuRes,HWND hwndActiveObject) { return This->lpVtbl->SetMenuSB(This,hmenuShared,holemenuRes,hwndActiveObject); } static FORCEINLINE HRESULT IShellBrowser_RemoveMenusSB(IShellBrowser* This,HMENU hmenuShared) { return This->lpVtbl->RemoveMenusSB(This,hmenuShared); } static FORCEINLINE HRESULT IShellBrowser_SetStatusTextSB(IShellBrowser* This,LPCWSTR pszStatusText) { return This->lpVtbl->SetStatusTextSB(This,pszStatusText); } static FORCEINLINE HRESULT IShellBrowser_EnableModelessSB(IShellBrowser* This,WINBOOL fEnable) { return This->lpVtbl->EnableModelessSB(This,fEnable); } static FORCEINLINE HRESULT IShellBrowser_TranslateAcceleratorSB(IShellBrowser* This,MSG *pmsg,WORD wID) { return This->lpVtbl->TranslateAcceleratorSB(This,pmsg,wID); } static FORCEINLINE HRESULT IShellBrowser_BrowseObject(IShellBrowser* This,PCUIDLIST_RELATIVE pidl,UINT wFlags) { return This->lpVtbl->BrowseObject(This,pidl,wFlags); } static FORCEINLINE HRESULT IShellBrowser_GetViewStateStream(IShellBrowser* This,DWORD grfMode,IStream **ppStrm) { return This->lpVtbl->GetViewStateStream(This,grfMode,ppStrm); } static FORCEINLINE HRESULT IShellBrowser_GetControlWindow(IShellBrowser* This,UINT id,HWND *phwnd) { return This->lpVtbl->GetControlWindow(This,id,phwnd); } static FORCEINLINE HRESULT IShellBrowser_SendControlMsg(IShellBrowser* This,UINT id,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *pret) { return This->lpVtbl->SendControlMsg(This,id,uMsg,wParam,lParam,pret); } static FORCEINLINE HRESULT IShellBrowser_QueryActiveShellView(IShellBrowser* This,IShellView **ppshv) { return This->lpVtbl->QueryActiveShellView(This,ppshv); } static FORCEINLINE HRESULT IShellBrowser_OnViewWindowActive(IShellBrowser* This,IShellView *pshv) { return This->lpVtbl->OnViewWindowActive(This,pshv); } static FORCEINLINE HRESULT IShellBrowser_SetToolbarItems(IShellBrowser* This,LPTBBUTTONSB lpButtons,UINT nButtons,UINT uFlags) { return This->lpVtbl->SetToolbarItems(This,lpButtons,nButtons,uFlags); } #endif #endif #endif #endif /* __IShellBrowser_INTERFACE_DEFINED__ */ typedef IShellBrowser *LPSHELLBROWSER; /***************************************************************************** * IProfferService interface */ #ifndef __IProfferService_INTERFACE_DEFINED__ #define __IProfferService_INTERFACE_DEFINED__ DEFINE_GUID(IID_IProfferService, 0xcb728b20, 0xf786, 0x11ce, 0x92,0xad, 0x00,0xaa,0x00,0xa7,0x4c,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cb728b20-f786-11ce-92ad-00aa00a74cd0") IProfferService : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ProfferService( REFGUID guidService, IServiceProvider *psp, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE RevokeService( DWORD dwCookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IProfferService, 0xcb728b20, 0xf786, 0x11ce, 0x92,0xad, 0x00,0xaa,0x00,0xa7,0x4c,0xd0) #endif #else typedef struct IProfferServiceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IProfferService *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IProfferService *This); ULONG (STDMETHODCALLTYPE *Release)( IProfferService *This); /*** IProfferService methods ***/ HRESULT (STDMETHODCALLTYPE *ProfferService)( IProfferService *This, REFGUID guidService, IServiceProvider *psp, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RevokeService)( IProfferService *This, DWORD dwCookie); END_INTERFACE } IProfferServiceVtbl; interface IProfferService { CONST_VTBL IProfferServiceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IProfferService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IProfferService_AddRef(This) (This)->lpVtbl->AddRef(This) #define IProfferService_Release(This) (This)->lpVtbl->Release(This) /*** IProfferService methods ***/ #define IProfferService_ProfferService(This,guidService,psp,pdwCookie) (This)->lpVtbl->ProfferService(This,guidService,psp,pdwCookie) #define IProfferService_RevokeService(This,dwCookie) (This)->lpVtbl->RevokeService(This,dwCookie) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IProfferService_QueryInterface(IProfferService* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IProfferService_AddRef(IProfferService* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IProfferService_Release(IProfferService* This) { return This->lpVtbl->Release(This); } /*** IProfferService methods ***/ static FORCEINLINE HRESULT IProfferService_ProfferService(IProfferService* This,REFGUID guidService,IServiceProvider *psp,DWORD *pdwCookie) { return This->lpVtbl->ProfferService(This,guidService,psp,pdwCookie); } static FORCEINLINE HRESULT IProfferService_RevokeService(IProfferService* This,DWORD dwCookie) { return This->lpVtbl->RevokeService(This,dwCookie); } #endif #endif #endif #endif /* __IProfferService_INTERFACE_DEFINED__ */ #define SID_SProfferService IID_IProfferService #define STR_DONT_RESOLVE_LINK L"Don't Resolve Link" #define STR_GET_ASYNC_HANDLER L"GetAsyncHandler" /***************************************************************************** * IShellItem interface */ #ifndef __IShellItem_INTERFACE_DEFINED__ #define __IShellItem_INTERFACE_DEFINED__ typedef enum _SIGDN { SIGDN_NORMALDISPLAY = 0x0, SIGDN_PARENTRELATIVEPARSING = (int)0x80018001, SIGDN_DESKTOPABSOLUTEPARSING = (int)0x80028000, SIGDN_PARENTRELATIVEEDITING = (int)0x80031001, SIGDN_DESKTOPABSOLUTEEDITING = (int)0x8004c000, SIGDN_FILESYSPATH = (int)0x80058000, SIGDN_URL = (int)0x80068000, SIGDN_PARENTRELATIVEFORADDRESSBAR = (int)0x8007c001, SIGDN_PARENTRELATIVE = (int)0x80080001, SIGDN_PARENTRELATIVEFORUI = (int)0x80094001 } SIGDN; enum _SICHINTF { SICHINT_DISPLAY = 0x0, SICHINT_ALLFIELDS = (int)0x80000000, SICHINT_CANONICAL = 0x10000000, SICHINT_TEST_FILESYSPATH_IF_NOT_EQUAL = 0x20000000 }; typedef DWORD SICHINTF; DEFINE_GUID(IID_IShellItem, 0x43826d1e, 0xe718, 0x42ee, 0xbc,0x55, 0xa1,0xe2,0x61,0xc3,0x7b,0xfe); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("43826d1e-e718-42ee-bc55-a1e261c37bfe") IShellItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE BindToHandler( IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetParent( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayName( SIGDN sigdnName, LPWSTR *ppszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetAttributes( SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs) = 0; virtual HRESULT STDMETHODCALLTYPE Compare( IShellItem *psi, SICHINTF hint, int *piOrder) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItem, 0x43826d1e, 0xe718, 0x42ee, 0xbc,0x55, 0xa1,0xe2,0x61,0xc3,0x7b,0xfe) #endif #else typedef struct IShellItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItem *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItem *This); /*** IShellItem methods ***/ HRESULT (STDMETHODCALLTYPE *BindToHandler)( IShellItem *This, IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetParent)( IShellItem *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IShellItem *This, SIGDN sigdnName, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItem *This, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs); HRESULT (STDMETHODCALLTYPE *Compare)( IShellItem *This, IShellItem *psi, SICHINTF hint, int *piOrder); END_INTERFACE } IShellItemVtbl; interface IShellItem { CONST_VTBL IShellItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItem_Release(This) (This)->lpVtbl->Release(This) /*** IShellItem methods ***/ #define IShellItem_BindToHandler(This,pbc,bhid,riid,ppv) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv) #define IShellItem_GetParent(This,ppsi) (This)->lpVtbl->GetParent(This,ppsi) #define IShellItem_GetDisplayName(This,sigdnName,ppszName) (This)->lpVtbl->GetDisplayName(This,sigdnName,ppszName) #define IShellItem_GetAttributes(This,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs) #define IShellItem_Compare(This,psi,hint,piOrder) (This)->lpVtbl->Compare(This,psi,hint,piOrder) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellItem_QueryInterface(IShellItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellItem_AddRef(IShellItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellItem_Release(IShellItem* This) { return This->lpVtbl->Release(This); } /*** IShellItem methods ***/ static FORCEINLINE HRESULT IShellItem_BindToHandler(IShellItem* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppv) { return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv); } static FORCEINLINE HRESULT IShellItem_GetParent(IShellItem* This,IShellItem **ppsi) { return This->lpVtbl->GetParent(This,ppsi); } static FORCEINLINE HRESULT IShellItem_GetDisplayName(IShellItem* This,SIGDN sigdnName,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,sigdnName,ppszName); } static FORCEINLINE HRESULT IShellItem_GetAttributes(IShellItem* This,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { return This->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs); } static FORCEINLINE HRESULT IShellItem_Compare(IShellItem* This,IShellItem *psi,SICHINTF hint,int *piOrder) { return This->lpVtbl->Compare(This,psi,hint,piOrder); } #endif #endif #endif #endif /* __IShellItem_INTERFACE_DEFINED__ */ SHSTDAPI_(PIDLIST_ABSOLUTE) SHSimpleIDListFromPath(PCWSTR pszPath); #if _WIN32_IE >= _WIN32_IE_IE70 SHSTDAPI SHCreateItemFromIDList(PCIDLIST_ABSOLUTE pidl, REFIID riid, void **ppv); SHSTDAPI SHCreateItemFromParsingName(PCWSTR pszPath, IBindCtx *pbc, REFIID riid, void **ppv); SHSTDAPI SHCreateItemWithParent(PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psfParent, PCUITEMID_CHILD pidl, REFIID riid, void **ppvItem); SHSTDAPI SHCreateItemFromRelativeName(IShellItem *psiParent, PCWSTR pszName, IBindCtx *pbc, REFIID riid, void **ppv); #endif #if NTDDI_VERSION >= NTDDI_VISTA SHSTDAPI SHCreateItemInKnownFolder(REFKNOWNFOLDERID kfid, DWORD dwKFFlags, PCWSTR pszItem, REFIID riid, void **ppv); SHSTDAPI SHGetIDListFromObject(IUnknown *punk, PIDLIST_ABSOLUTE *ppidl); SHSTDAPI SHGetItemFromObject(IUnknown *punk, REFIID riid, void **ppv); SHSTDAPI SHGetPropertyStoreFromIDList(PCIDLIST_ABSOLUTE pidl, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); SHSTDAPI SHGetPropertyStoreFromParsingName(PCWSTR pszPath, IBindCtx *pbc, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); SHSTDAPI SHGetNameFromIDList(PCIDLIST_ABSOLUTE pidl, SIGDN sigdnName, PWSTR *ppszName); #endif #if NTDDI_VERSION >= NTDDI_WIN7 typedef enum DATAOBJ_GET_ITEM_FLAGS { DOGIF_DEFAULT = 0x0, DOGIF_TRAVERSE_LINK = 0x1, DOGIF_NO_HDROP = 0x2, DOGIF_NO_URL = 0x4, DOGIF_ONLY_IF_ONE = 0x8 } DATAOBJ_GET_ITEM_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(DATAOBJ_GET_ITEM_FLAGS) STDAPI SHGetItemFromDataObject(IDataObject *pdtobj, DATAOBJ_GET_ITEM_FLAGS dwFlags, REFIID riid, void **ppv); #endif #define STR_GPS_HANDLERPROPERTIESONLY L"GPS_HANDLERPROPERTIESONLY" #define STR_GPS_FASTPROPERTIESONLY L"GPS_FASTPROPERTIESONLY" #define STR_GPS_OPENSLOWITEM L"GPS_OPENSLOWITEM" #define STR_GPS_DELAYCREATION L"GPS_DELAYCREATION" #define STR_GPS_BESTEFFORT L"GPS_BESTEFFORT" #define STR_GPS_NO_OPLOCK L"GPS_NO_OPLOCK" /***************************************************************************** * IShellItem2 interface */ #ifndef __IShellItem2_INTERFACE_DEFINED__ #define __IShellItem2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellItem2, 0x7e9fb0d3, 0x919f, 0x4307, 0xab,0x2e, 0x9b,0x18,0x60,0x31,0x0c,0x93); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7e9fb0d3-919f-4307-ab2e-9b1860310c93") IShellItem2 : public IShellItem { virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreWithCreateObject( GETPROPERTYSTOREFLAGS flags, IUnknown *punkCreateObject, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys( const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionList( REFPROPERTYKEY keyType, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE Update( IBindCtx *pbc) = 0; virtual HRESULT STDMETHODCALLTYPE GetProperty( REFPROPERTYKEY key, PROPVARIANT *ppropvar) = 0; virtual HRESULT STDMETHODCALLTYPE GetCLSID( REFPROPERTYKEY key, CLSID *pclsid) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileTime( REFPROPERTYKEY key, FILETIME *pft) = 0; virtual HRESULT STDMETHODCALLTYPE GetInt32( REFPROPERTYKEY key, int *pi) = 0; virtual HRESULT STDMETHODCALLTYPE GetString( REFPROPERTYKEY key, LPWSTR *ppsz) = 0; virtual HRESULT STDMETHODCALLTYPE GetUInt32( REFPROPERTYKEY key, ULONG *pui) = 0; virtual HRESULT STDMETHODCALLTYPE GetUInt64( REFPROPERTYKEY key, ULONGLONG *pull) = 0; virtual HRESULT STDMETHODCALLTYPE GetBool( REFPROPERTYKEY key, WINBOOL *pf) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItem2, 0x7e9fb0d3, 0x919f, 0x4307, 0xab,0x2e, 0x9b,0x18,0x60,0x31,0x0c,0x93) #endif #else typedef struct IShellItem2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItem2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItem2 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItem2 *This); /*** IShellItem methods ***/ HRESULT (STDMETHODCALLTYPE *BindToHandler)( IShellItem2 *This, IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetParent)( IShellItem2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IShellItem2 *This, SIGDN sigdnName, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItem2 *This, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs); HRESULT (STDMETHODCALLTYPE *Compare)( IShellItem2 *This, IShellItem *psi, SICHINTF hint, int *piOrder); /*** IShellItem2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( IShellItem2 *This, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyStoreWithCreateObject)( IShellItem2 *This, GETPROPERTYSTOREFLAGS flags, IUnknown *punkCreateObject, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyStoreForKeys)( IShellItem2 *This, const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionList)( IShellItem2 *This, REFPROPERTYKEY keyType, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *Update)( IShellItem2 *This, IBindCtx *pbc); HRESULT (STDMETHODCALLTYPE *GetProperty)( IShellItem2 *This, REFPROPERTYKEY key, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *GetCLSID)( IShellItem2 *This, REFPROPERTYKEY key, CLSID *pclsid); HRESULT (STDMETHODCALLTYPE *GetFileTime)( IShellItem2 *This, REFPROPERTYKEY key, FILETIME *pft); HRESULT (STDMETHODCALLTYPE *GetInt32)( IShellItem2 *This, REFPROPERTYKEY key, int *pi); HRESULT (STDMETHODCALLTYPE *GetString)( IShellItem2 *This, REFPROPERTYKEY key, LPWSTR *ppsz); HRESULT (STDMETHODCALLTYPE *GetUInt32)( IShellItem2 *This, REFPROPERTYKEY key, ULONG *pui); HRESULT (STDMETHODCALLTYPE *GetUInt64)( IShellItem2 *This, REFPROPERTYKEY key, ULONGLONG *pull); HRESULT (STDMETHODCALLTYPE *GetBool)( IShellItem2 *This, REFPROPERTYKEY key, WINBOOL *pf); END_INTERFACE } IShellItem2Vtbl; interface IShellItem2 { CONST_VTBL IShellItem2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItem2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItem2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItem2_Release(This) (This)->lpVtbl->Release(This) /*** IShellItem methods ***/ #define IShellItem2_BindToHandler(This,pbc,bhid,riid,ppv) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv) #define IShellItem2_GetParent(This,ppsi) (This)->lpVtbl->GetParent(This,ppsi) #define IShellItem2_GetDisplayName(This,sigdnName,ppszName) (This)->lpVtbl->GetDisplayName(This,sigdnName,ppszName) #define IShellItem2_GetAttributes(This,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs) #define IShellItem2_Compare(This,psi,hint,piOrder) (This)->lpVtbl->Compare(This,psi,hint,piOrder) /*** IShellItem2 methods ***/ #define IShellItem2_GetPropertyStore(This,flags,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,riid,ppv) #define IShellItem2_GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv) (This)->lpVtbl->GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv) #define IShellItem2_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) (This)->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) #define IShellItem2_GetPropertyDescriptionList(This,keyType,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv) #define IShellItem2_Update(This,pbc) (This)->lpVtbl->Update(This,pbc) #define IShellItem2_GetProperty(This,key,ppropvar) (This)->lpVtbl->GetProperty(This,key,ppropvar) #define IShellItem2_GetCLSID(This,key,pclsid) (This)->lpVtbl->GetCLSID(This,key,pclsid) #define IShellItem2_GetFileTime(This,key,pft) (This)->lpVtbl->GetFileTime(This,key,pft) #define IShellItem2_GetInt32(This,key,pi) (This)->lpVtbl->GetInt32(This,key,pi) #define IShellItem2_GetString(This,key,ppsz) (This)->lpVtbl->GetString(This,key,ppsz) #define IShellItem2_GetUInt32(This,key,pui) (This)->lpVtbl->GetUInt32(This,key,pui) #define IShellItem2_GetUInt64(This,key,pull) (This)->lpVtbl->GetUInt64(This,key,pull) #define IShellItem2_GetBool(This,key,pf) (This)->lpVtbl->GetBool(This,key,pf) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellItem2_QueryInterface(IShellItem2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellItem2_AddRef(IShellItem2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellItem2_Release(IShellItem2* This) { return This->lpVtbl->Release(This); } /*** IShellItem methods ***/ static FORCEINLINE HRESULT IShellItem2_BindToHandler(IShellItem2* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppv) { return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv); } static FORCEINLINE HRESULT IShellItem2_GetParent(IShellItem2* This,IShellItem **ppsi) { return This->lpVtbl->GetParent(This,ppsi); } static FORCEINLINE HRESULT IShellItem2_GetDisplayName(IShellItem2* This,SIGDN sigdnName,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,sigdnName,ppszName); } static FORCEINLINE HRESULT IShellItem2_GetAttributes(IShellItem2* This,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { return This->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs); } static FORCEINLINE HRESULT IShellItem2_Compare(IShellItem2* This,IShellItem *psi,SICHINTF hint,int *piOrder) { return This->lpVtbl->Compare(This,psi,hint,piOrder); } /*** IShellItem2 methods ***/ static FORCEINLINE HRESULT IShellItem2_GetPropertyStore(IShellItem2* This,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStore(This,flags,riid,ppv); } static FORCEINLINE HRESULT IShellItem2_GetPropertyStoreWithCreateObject(IShellItem2* This,GETPROPERTYSTOREFLAGS flags,IUnknown *punkCreateObject,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv); } static FORCEINLINE HRESULT IShellItem2_GetPropertyStoreForKeys(IShellItem2* This,const PROPERTYKEY *rgKeys,UINT cKeys,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv); } static FORCEINLINE HRESULT IShellItem2_GetPropertyDescriptionList(IShellItem2* This,REFPROPERTYKEY keyType,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv); } static FORCEINLINE HRESULT IShellItem2_Update(IShellItem2* This,IBindCtx *pbc) { return This->lpVtbl->Update(This,pbc); } static FORCEINLINE HRESULT IShellItem2_GetProperty(IShellItem2* This,REFPROPERTYKEY key,PROPVARIANT *ppropvar) { return This->lpVtbl->GetProperty(This,key,ppropvar); } static FORCEINLINE HRESULT IShellItem2_GetCLSID(IShellItem2* This,REFPROPERTYKEY key,CLSID *pclsid) { return This->lpVtbl->GetCLSID(This,key,pclsid); } static FORCEINLINE HRESULT IShellItem2_GetFileTime(IShellItem2* This,REFPROPERTYKEY key,FILETIME *pft) { return This->lpVtbl->GetFileTime(This,key,pft); } static FORCEINLINE HRESULT IShellItem2_GetInt32(IShellItem2* This,REFPROPERTYKEY key,int *pi) { return This->lpVtbl->GetInt32(This,key,pi); } static FORCEINLINE HRESULT IShellItem2_GetString(IShellItem2* This,REFPROPERTYKEY key,LPWSTR *ppsz) { return This->lpVtbl->GetString(This,key,ppsz); } static FORCEINLINE HRESULT IShellItem2_GetUInt32(IShellItem2* This,REFPROPERTYKEY key,ULONG *pui) { return This->lpVtbl->GetUInt32(This,key,pui); } static FORCEINLINE HRESULT IShellItem2_GetUInt64(IShellItem2* This,REFPROPERTYKEY key,ULONGLONG *pull) { return This->lpVtbl->GetUInt64(This,key,pull); } static FORCEINLINE HRESULT IShellItem2_GetBool(IShellItem2* This,REFPROPERTYKEY key,WINBOOL *pf) { return This->lpVtbl->GetBool(This,key,pf); } #endif #endif #endif #endif /* __IShellItem2_INTERFACE_DEFINED__ */ enum _SIIGBF { SIIGBF_RESIZETOFIT = 0x0, SIIGBF_BIGGERSIZEOK = 0x1, SIIGBF_MEMORYONLY = 0x2, SIIGBF_ICONONLY = 0x4, SIIGBF_THUMBNAILONLY = 0x8, SIIGBF_INCACHEONLY = 0x10, SIIGBF_CROPTOSQUARE = 0x20, SIIGBF_WIDETHUMBNAILS = 0x40, SIIGBF_ICONBACKGROUND = 0x80, SIIGBF_SCALEUP = 0x100 }; typedef int SIIGBF; /***************************************************************************** * IShellItemImageFactory interface */ #ifndef __IShellItemImageFactory_INTERFACE_DEFINED__ #define __IShellItemImageFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellItemImageFactory, 0xbcc18b79, 0xba16, 0x442f, 0x80,0xc4, 0x8a,0x59,0xc3,0x0c,0x46,0x3b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bcc18b79-ba16-442f-80c4-8a59c30c463b") IShellItemImageFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetImage( SIZE size, SIIGBF flags, HBITMAP *phbm) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemImageFactory, 0xbcc18b79, 0xba16, 0x442f, 0x80,0xc4, 0x8a,0x59,0xc3,0x0c,0x46,0x3b) #endif #else typedef struct IShellItemImageFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemImageFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemImageFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemImageFactory *This); /*** IShellItemImageFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetImage)( IShellItemImageFactory *This, SIZE size, SIIGBF flags, HBITMAP *phbm); END_INTERFACE } IShellItemImageFactoryVtbl; interface IShellItemImageFactory { CONST_VTBL IShellItemImageFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemImageFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemImageFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemImageFactory_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemImageFactory methods ***/ #define IShellItemImageFactory_GetImage(This,size,flags,phbm) (This)->lpVtbl->GetImage(This,size,flags,phbm) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellItemImageFactory_QueryInterface(IShellItemImageFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellItemImageFactory_AddRef(IShellItemImageFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellItemImageFactory_Release(IShellItemImageFactory* This) { return This->lpVtbl->Release(This); } /*** IShellItemImageFactory methods ***/ static FORCEINLINE HRESULT IShellItemImageFactory_GetImage(IShellItemImageFactory* This,SIZE size,SIIGBF flags,HBITMAP *phbm) { return This->lpVtbl->GetImage(This,size,flags,phbm); } #endif #endif #endif #endif /* __IShellItemImageFactory_INTERFACE_DEFINED__ */ /***************************************************************************** * IUserAccountChangeCallback interface */ #ifndef __IUserAccountChangeCallback_INTERFACE_DEFINED__ #define __IUserAccountChangeCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IUserAccountChangeCallback, 0xa561e69a, 0xb4b8, 0x4113, 0x91,0xa5, 0x64,0xc6,0xbc,0xca,0x34,0x30); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a561e69a-b4b8-4113-91a5-64c6bcca3430") IUserAccountChangeCallback : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnPictureChange( LPCWSTR pszUserName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IUserAccountChangeCallback, 0xa561e69a, 0xb4b8, 0x4113, 0x91,0xa5, 0x64,0xc6,0xbc,0xca,0x34,0x30) #endif #else typedef struct IUserAccountChangeCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IUserAccountChangeCallback *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IUserAccountChangeCallback *This); ULONG (STDMETHODCALLTYPE *Release)( IUserAccountChangeCallback *This); /*** IUserAccountChangeCallback methods ***/ HRESULT (STDMETHODCALLTYPE *OnPictureChange)( IUserAccountChangeCallback *This, LPCWSTR pszUserName); END_INTERFACE } IUserAccountChangeCallbackVtbl; interface IUserAccountChangeCallback { CONST_VTBL IUserAccountChangeCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IUserAccountChangeCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IUserAccountChangeCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IUserAccountChangeCallback_Release(This) (This)->lpVtbl->Release(This) /*** IUserAccountChangeCallback methods ***/ #define IUserAccountChangeCallback_OnPictureChange(This,pszUserName) (This)->lpVtbl->OnPictureChange(This,pszUserName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IUserAccountChangeCallback_QueryInterface(IUserAccountChangeCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IUserAccountChangeCallback_AddRef(IUserAccountChangeCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IUserAccountChangeCallback_Release(IUserAccountChangeCallback* This) { return This->lpVtbl->Release(This); } /*** IUserAccountChangeCallback methods ***/ static FORCEINLINE HRESULT IUserAccountChangeCallback_OnPictureChange(IUserAccountChangeCallback* This,LPCWSTR pszUserName) { return This->lpVtbl->OnPictureChange(This,pszUserName); } #endif #endif #endif #endif /* __IUserAccountChangeCallback_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumShellItems interface */ #ifndef __IEnumShellItems_INTERFACE_DEFINED__ #define __IEnumShellItems_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumShellItems, 0x70629033, 0xe363, 0x4a28, 0xa5,0x67, 0x0d,0xb7,0x80,0x06,0xe6,0xd7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("70629033-e363-4a28-a567-0db78006e6d7") IEnumShellItems : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, IShellItem **rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumShellItems **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumShellItems, 0x70629033, 0xe363, 0x4a28, 0xa5,0x67, 0x0d,0xb7,0x80,0x06,0xe6,0xd7) #endif #else typedef struct IEnumShellItemsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumShellItems *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumShellItems *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumShellItems *This); /*** IEnumShellItems methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumShellItems *This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumShellItems *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumShellItems *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumShellItems *This, IEnumShellItems **ppenum); END_INTERFACE } IEnumShellItemsVtbl; interface IEnumShellItems { CONST_VTBL IEnumShellItemsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumShellItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumShellItems_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumShellItems_Release(This) (This)->lpVtbl->Release(This) /*** IEnumShellItems methods ***/ #define IEnumShellItems_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumShellItems_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumShellItems_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumShellItems_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumShellItems_QueryInterface(IEnumShellItems* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumShellItems_AddRef(IEnumShellItems* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumShellItems_Release(IEnumShellItems* This) { return This->lpVtbl->Release(This); } /*** IEnumShellItems methods ***/ static FORCEINLINE HRESULT IEnumShellItems_Next(IEnumShellItems* This,ULONG celt,IShellItem **rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumShellItems_Skip(IEnumShellItems* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumShellItems_Reset(IEnumShellItems* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumShellItems_Clone(IEnumShellItems* This,IEnumShellItems **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumShellItems_RemoteNext_Proxy( IEnumShellItems* This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumShellItems_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumShellItems_Next_Proxy( IEnumShellItems* This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumShellItems_Next_Stub( IEnumShellItems* This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); #endif /* __IEnumShellItems_INTERFACE_DEFINED__ */ typedef GUID STGTRANSCONFIRMATION; typedef GUID *LPSTGTRANSCONFIRMATION; typedef enum STGOP { STGOP_MOVE = 1, STGOP_COPY = 2, STGOP_SYNC = 3, STGOP_REMOVE = 5, STGOP_RENAME = 6, STGOP_APPLYPROPERTIES = 8, STGOP_NEW = 10 } STGOP; enum _TRANSFER_SOURCE_FLAGS { TSF_NORMAL = 0x0, TSF_FAIL_EXIST = 0x0, TSF_RENAME_EXIST = 0x1, TSF_OVERWRITE_EXIST = 0x2, TSF_ALLOW_DECRYPTION = 0x4, TSF_NO_SECURITY = 0x8, TSF_COPY_CREATION_TIME = 0x10, TSF_COPY_WRITE_TIME = 0x20, TSF_USE_FULL_ACCESS = 0x40, TSF_DELETE_RECYCLE_IF_POSSIBLE = 0x80, TSF_COPY_HARD_LINK = 0x100, TSF_COPY_LOCALIZED_NAME = 0x200, TSF_MOVE_AS_COPY_DELETE = 0x400, TSF_SUSPEND_SHELLEVENTS = 0x800 }; typedef DWORD TRANSFER_SOURCE_FLAGS; #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * ITransferAdviseSink interface */ #ifndef __ITransferAdviseSink_INTERFACE_DEFINED__ #define __ITransferAdviseSink_INTERFACE_DEFINED__ enum _TRANSFER_ADVISE_STATE { TS_NONE = 0x0, TS_PERFORMING = 0x1, TS_PREPARING = 0x2, TS_INDETERMINATE = 0x4 }; typedef DWORD TRANSFER_ADVISE_STATE; DEFINE_GUID(IID_ITransferAdviseSink, 0xd594d0d8, 0x8da7, 0x457b, 0xb3,0xb4, 0xce,0x5d,0xba,0xac,0x0b,0x88); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d594d0d8-8da7-457b-b3b4-ce5dbaac0b88") ITransferAdviseSink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE UpdateProgress( ULONGLONG ullSizeCurrent, ULONGLONG ullSizeTotal, int nFilesCurrent, int nFilesTotal, int nFoldersCurrent, int nFoldersTotal) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateTransferState( TRANSFER_ADVISE_STATE ts) = 0; virtual HRESULT STDMETHODCALLTYPE ConfirmOverwrite( IShellItem *psiSource, IShellItem *psiDestParent, LPCWSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE ConfirmEncryptionLoss( IShellItem *psiSource) = 0; virtual HRESULT STDMETHODCALLTYPE FileFailure( IShellItem *psi, LPCWSTR pszItem, HRESULT hrError, LPWSTR pszRename, ULONG cchRename) = 0; virtual HRESULT STDMETHODCALLTYPE SubStreamFailure( IShellItem *psi, LPCWSTR pszStreamName, HRESULT hrError) = 0; virtual HRESULT STDMETHODCALLTYPE PropertyFailure( IShellItem *psi, const PROPERTYKEY *pkey, HRESULT hrError) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferAdviseSink, 0xd594d0d8, 0x8da7, 0x457b, 0xb3,0xb4, 0xce,0x5d,0xba,0xac,0x0b,0x88) #endif #else typedef struct ITransferAdviseSinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferAdviseSink *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferAdviseSink *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferAdviseSink *This); /*** ITransferAdviseSink methods ***/ HRESULT (STDMETHODCALLTYPE *UpdateProgress)( ITransferAdviseSink *This, ULONGLONG ullSizeCurrent, ULONGLONG ullSizeTotal, int nFilesCurrent, int nFilesTotal, int nFoldersCurrent, int nFoldersTotal); HRESULT (STDMETHODCALLTYPE *UpdateTransferState)( ITransferAdviseSink *This, TRANSFER_ADVISE_STATE ts); HRESULT (STDMETHODCALLTYPE *ConfirmOverwrite)( ITransferAdviseSink *This, IShellItem *psiSource, IShellItem *psiDestParent, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *ConfirmEncryptionLoss)( ITransferAdviseSink *This, IShellItem *psiSource); HRESULT (STDMETHODCALLTYPE *FileFailure)( ITransferAdviseSink *This, IShellItem *psi, LPCWSTR pszItem, HRESULT hrError, LPWSTR pszRename, ULONG cchRename); HRESULT (STDMETHODCALLTYPE *SubStreamFailure)( ITransferAdviseSink *This, IShellItem *psi, LPCWSTR pszStreamName, HRESULT hrError); HRESULT (STDMETHODCALLTYPE *PropertyFailure)( ITransferAdviseSink *This, IShellItem *psi, const PROPERTYKEY *pkey, HRESULT hrError); END_INTERFACE } ITransferAdviseSinkVtbl; interface ITransferAdviseSink { CONST_VTBL ITransferAdviseSinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferAdviseSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferAdviseSink_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferAdviseSink_Release(This) (This)->lpVtbl->Release(This) /*** ITransferAdviseSink methods ***/ #define ITransferAdviseSink_UpdateProgress(This,ullSizeCurrent,ullSizeTotal,nFilesCurrent,nFilesTotal,nFoldersCurrent,nFoldersTotal) (This)->lpVtbl->UpdateProgress(This,ullSizeCurrent,ullSizeTotal,nFilesCurrent,nFilesTotal,nFoldersCurrent,nFoldersTotal) #define ITransferAdviseSink_UpdateTransferState(This,ts) (This)->lpVtbl->UpdateTransferState(This,ts) #define ITransferAdviseSink_ConfirmOverwrite(This,psiSource,psiDestParent,pszName) (This)->lpVtbl->ConfirmOverwrite(This,psiSource,psiDestParent,pszName) #define ITransferAdviseSink_ConfirmEncryptionLoss(This,psiSource) (This)->lpVtbl->ConfirmEncryptionLoss(This,psiSource) #define ITransferAdviseSink_FileFailure(This,psi,pszItem,hrError,pszRename,cchRename) (This)->lpVtbl->FileFailure(This,psi,pszItem,hrError,pszRename,cchRename) #define ITransferAdviseSink_SubStreamFailure(This,psi,pszStreamName,hrError) (This)->lpVtbl->SubStreamFailure(This,psi,pszStreamName,hrError) #define ITransferAdviseSink_PropertyFailure(This,psi,pkey,hrError) (This)->lpVtbl->PropertyFailure(This,psi,pkey,hrError) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITransferAdviseSink_QueryInterface(ITransferAdviseSink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITransferAdviseSink_AddRef(ITransferAdviseSink* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITransferAdviseSink_Release(ITransferAdviseSink* This) { return This->lpVtbl->Release(This); } /*** ITransferAdviseSink methods ***/ static FORCEINLINE HRESULT ITransferAdviseSink_UpdateProgress(ITransferAdviseSink* This,ULONGLONG ullSizeCurrent,ULONGLONG ullSizeTotal,int nFilesCurrent,int nFilesTotal,int nFoldersCurrent,int nFoldersTotal) { return This->lpVtbl->UpdateProgress(This,ullSizeCurrent,ullSizeTotal,nFilesCurrent,nFilesTotal,nFoldersCurrent,nFoldersTotal); } static FORCEINLINE HRESULT ITransferAdviseSink_UpdateTransferState(ITransferAdviseSink* This,TRANSFER_ADVISE_STATE ts) { return This->lpVtbl->UpdateTransferState(This,ts); } static FORCEINLINE HRESULT ITransferAdviseSink_ConfirmOverwrite(ITransferAdviseSink* This,IShellItem *psiSource,IShellItem *psiDestParent,LPCWSTR pszName) { return This->lpVtbl->ConfirmOverwrite(This,psiSource,psiDestParent,pszName); } static FORCEINLINE HRESULT ITransferAdviseSink_ConfirmEncryptionLoss(ITransferAdviseSink* This,IShellItem *psiSource) { return This->lpVtbl->ConfirmEncryptionLoss(This,psiSource); } static FORCEINLINE HRESULT ITransferAdviseSink_FileFailure(ITransferAdviseSink* This,IShellItem *psi,LPCWSTR pszItem,HRESULT hrError,LPWSTR pszRename,ULONG cchRename) { return This->lpVtbl->FileFailure(This,psi,pszItem,hrError,pszRename,cchRename); } static FORCEINLINE HRESULT ITransferAdviseSink_SubStreamFailure(ITransferAdviseSink* This,IShellItem *psi,LPCWSTR pszStreamName,HRESULT hrError) { return This->lpVtbl->SubStreamFailure(This,psi,pszStreamName,hrError); } static FORCEINLINE HRESULT ITransferAdviseSink_PropertyFailure(ITransferAdviseSink* This,IShellItem *psi,const PROPERTYKEY *pkey,HRESULT hrError) { return This->lpVtbl->PropertyFailure(This,psi,pkey,hrError); } #endif #endif #endif #endif /* __ITransferAdviseSink_INTERFACE_DEFINED__ */ #endif #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * ITransferSource interface */ #ifndef __ITransferSource_INTERFACE_DEFINED__ #define __ITransferSource_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITransferSource, 0x00adb003, 0xbde9, 0x45c6, 0x8e,0x29, 0xd0,0x9f,0x93,0x53,0xe1,0x08); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00adb003-bde9-45c6-8e29-d09f9353e108") ITransferSource : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( ITransferAdviseSink *psink, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetProperties( IPropertyChangeArray *pproparray) = 0; virtual HRESULT STDMETHODCALLTYPE OpenItem( IShellItem *psi, TRANSFER_SOURCE_FLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE MoveItem( IShellItem *psi, IShellItem *psiParentDst, LPCWSTR pszNameDst, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNew) = 0; virtual HRESULT STDMETHODCALLTYPE RecycleItem( IShellItem *psiSource, IShellItem *psiParentDest, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNewDest) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveItem( IShellItem *psiSource, TRANSFER_SOURCE_FLAGS flags) = 0; virtual HRESULT STDMETHODCALLTYPE RenameItem( IShellItem *psiSource, LPCWSTR pszNewName, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNewDest) = 0; virtual HRESULT STDMETHODCALLTYPE LinkItem( IShellItem *psiSource, IShellItem *psiParentDest, LPCWSTR pszNewName, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNewDest) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItem( IShellItem *psiSource, IShellItem **ppsiNew) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultDestinationName( IShellItem *psiSource, IShellItem *psiParentDest, LPWSTR *ppszDestinationName) = 0; virtual HRESULT STDMETHODCALLTYPE EnterFolder( IShellItem *psiChildFolderDest) = 0; virtual HRESULT STDMETHODCALLTYPE LeaveFolder( IShellItem *psiChildFolderDest) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferSource, 0x00adb003, 0xbde9, 0x45c6, 0x8e,0x29, 0xd0,0x9f,0x93,0x53,0xe1,0x08) #endif #else typedef struct ITransferSourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferSource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferSource *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferSource *This); /*** ITransferSource methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( ITransferSource *This, ITransferAdviseSink *psink, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( ITransferSource *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetProperties)( ITransferSource *This, IPropertyChangeArray *pproparray); HRESULT (STDMETHODCALLTYPE *OpenItem)( ITransferSource *This, IShellItem *psi, TRANSFER_SOURCE_FLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *MoveItem)( ITransferSource *This, IShellItem *psi, IShellItem *psiParentDst, LPCWSTR pszNameDst, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNew); HRESULT (STDMETHODCALLTYPE *RecycleItem)( ITransferSource *This, IShellItem *psiSource, IShellItem *psiParentDest, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNewDest); HRESULT (STDMETHODCALLTYPE *RemoveItem)( ITransferSource *This, IShellItem *psiSource, TRANSFER_SOURCE_FLAGS flags); HRESULT (STDMETHODCALLTYPE *RenameItem)( ITransferSource *This, IShellItem *psiSource, LPCWSTR pszNewName, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNewDest); HRESULT (STDMETHODCALLTYPE *LinkItem)( ITransferSource *This, IShellItem *psiSource, IShellItem *psiParentDest, LPCWSTR pszNewName, TRANSFER_SOURCE_FLAGS flags, IShellItem **ppsiNewDest); HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItem)( ITransferSource *This, IShellItem *psiSource, IShellItem **ppsiNew); HRESULT (STDMETHODCALLTYPE *GetDefaultDestinationName)( ITransferSource *This, IShellItem *psiSource, IShellItem *psiParentDest, LPWSTR *ppszDestinationName); HRESULT (STDMETHODCALLTYPE *EnterFolder)( ITransferSource *This, IShellItem *psiChildFolderDest); HRESULT (STDMETHODCALLTYPE *LeaveFolder)( ITransferSource *This, IShellItem *psiChildFolderDest); END_INTERFACE } ITransferSourceVtbl; interface ITransferSource { CONST_VTBL ITransferSourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferSource_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferSource_Release(This) (This)->lpVtbl->Release(This) /*** ITransferSource methods ***/ #define ITransferSource_Advise(This,psink,pdwCookie) (This)->lpVtbl->Advise(This,psink,pdwCookie) #define ITransferSource_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define ITransferSource_SetProperties(This,pproparray) (This)->lpVtbl->SetProperties(This,pproparray) #define ITransferSource_OpenItem(This,psi,flags,riid,ppv) (This)->lpVtbl->OpenItem(This,psi,flags,riid,ppv) #define ITransferSource_MoveItem(This,psi,psiParentDst,pszNameDst,flags,ppsiNew) (This)->lpVtbl->MoveItem(This,psi,psiParentDst,pszNameDst,flags,ppsiNew) #define ITransferSource_RecycleItem(This,psiSource,psiParentDest,flags,ppsiNewDest) (This)->lpVtbl->RecycleItem(This,psiSource,psiParentDest,flags,ppsiNewDest) #define ITransferSource_RemoveItem(This,psiSource,flags) (This)->lpVtbl->RemoveItem(This,psiSource,flags) #define ITransferSource_RenameItem(This,psiSource,pszNewName,flags,ppsiNewDest) (This)->lpVtbl->RenameItem(This,psiSource,pszNewName,flags,ppsiNewDest) #define ITransferSource_LinkItem(This,psiSource,psiParentDest,pszNewName,flags,ppsiNewDest) (This)->lpVtbl->LinkItem(This,psiSource,psiParentDest,pszNewName,flags,ppsiNewDest) #define ITransferSource_ApplyPropertiesToItem(This,psiSource,ppsiNew) (This)->lpVtbl->ApplyPropertiesToItem(This,psiSource,ppsiNew) #define ITransferSource_GetDefaultDestinationName(This,psiSource,psiParentDest,ppszDestinationName) (This)->lpVtbl->GetDefaultDestinationName(This,psiSource,psiParentDest,ppszDestinationName) #define ITransferSource_EnterFolder(This,psiChildFolderDest) (This)->lpVtbl->EnterFolder(This,psiChildFolderDest) #define ITransferSource_LeaveFolder(This,psiChildFolderDest) (This)->lpVtbl->LeaveFolder(This,psiChildFolderDest) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITransferSource_QueryInterface(ITransferSource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITransferSource_AddRef(ITransferSource* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITransferSource_Release(ITransferSource* This) { return This->lpVtbl->Release(This); } /*** ITransferSource methods ***/ static FORCEINLINE HRESULT ITransferSource_Advise(ITransferSource* This,ITransferAdviseSink *psink,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,psink,pdwCookie); } static FORCEINLINE HRESULT ITransferSource_Unadvise(ITransferSource* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT ITransferSource_SetProperties(ITransferSource* This,IPropertyChangeArray *pproparray) { return This->lpVtbl->SetProperties(This,pproparray); } static FORCEINLINE HRESULT ITransferSource_OpenItem(ITransferSource* This,IShellItem *psi,TRANSFER_SOURCE_FLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->OpenItem(This,psi,flags,riid,ppv); } static FORCEINLINE HRESULT ITransferSource_MoveItem(ITransferSource* This,IShellItem *psi,IShellItem *psiParentDst,LPCWSTR pszNameDst,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNew) { return This->lpVtbl->MoveItem(This,psi,psiParentDst,pszNameDst,flags,ppsiNew); } static FORCEINLINE HRESULT ITransferSource_RecycleItem(ITransferSource* This,IShellItem *psiSource,IShellItem *psiParentDest,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNewDest) { return This->lpVtbl->RecycleItem(This,psiSource,psiParentDest,flags,ppsiNewDest); } static FORCEINLINE HRESULT ITransferSource_RemoveItem(ITransferSource* This,IShellItem *psiSource,TRANSFER_SOURCE_FLAGS flags) { return This->lpVtbl->RemoveItem(This,psiSource,flags); } static FORCEINLINE HRESULT ITransferSource_RenameItem(ITransferSource* This,IShellItem *psiSource,LPCWSTR pszNewName,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNewDest) { return This->lpVtbl->RenameItem(This,psiSource,pszNewName,flags,ppsiNewDest); } static FORCEINLINE HRESULT ITransferSource_LinkItem(ITransferSource* This,IShellItem *psiSource,IShellItem *psiParentDest,LPCWSTR pszNewName,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNewDest) { return This->lpVtbl->LinkItem(This,psiSource,psiParentDest,pszNewName,flags,ppsiNewDest); } static FORCEINLINE HRESULT ITransferSource_ApplyPropertiesToItem(ITransferSource* This,IShellItem *psiSource,IShellItem **ppsiNew) { return This->lpVtbl->ApplyPropertiesToItem(This,psiSource,ppsiNew); } static FORCEINLINE HRESULT ITransferSource_GetDefaultDestinationName(ITransferSource* This,IShellItem *psiSource,IShellItem *psiParentDest,LPWSTR *ppszDestinationName) { return This->lpVtbl->GetDefaultDestinationName(This,psiSource,psiParentDest,ppszDestinationName); } static FORCEINLINE HRESULT ITransferSource_EnterFolder(ITransferSource* This,IShellItem *psiChildFolderDest) { return This->lpVtbl->EnterFolder(This,psiChildFolderDest); } static FORCEINLINE HRESULT ITransferSource_LeaveFolder(ITransferSource* This,IShellItem *psiChildFolderDest) { return This->lpVtbl->LeaveFolder(This,psiChildFolderDest); } #endif #endif #endif #endif /* __ITransferSource_INTERFACE_DEFINED__ */ #endif typedef struct SHELL_ITEM_RESOURCE { GUID guidType; WCHAR szName[260]; } SHELL_ITEM_RESOURCE; /***************************************************************************** * IEnumResources interface */ #ifndef __IEnumResources_INTERFACE_DEFINED__ #define __IEnumResources_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumResources, 0x2dd81fe3, 0xa83c, 0x4da9, 0xa3,0x30, 0x47,0x24,0x9d,0x34,0x5b,0xa1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2dd81fe3-a83c-4da9-a330-47249d345ba1") IEnumResources : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, SHELL_ITEM_RESOURCE *psir, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumResources **ppenumr) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumResources, 0x2dd81fe3, 0xa83c, 0x4da9, 0xa3,0x30, 0x47,0x24,0x9d,0x34,0x5b,0xa1) #endif #else typedef struct IEnumResourcesVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumResources *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumResources *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumResources *This); /*** IEnumResources methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumResources *This, ULONG celt, SHELL_ITEM_RESOURCE *psir, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumResources *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumResources *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumResources *This, IEnumResources **ppenumr); END_INTERFACE } IEnumResourcesVtbl; interface IEnumResources { CONST_VTBL IEnumResourcesVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumResources_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumResources_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumResources_Release(This) (This)->lpVtbl->Release(This) /*** IEnumResources methods ***/ #define IEnumResources_Next(This,celt,psir,pceltFetched) (This)->lpVtbl->Next(This,celt,psir,pceltFetched) #define IEnumResources_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumResources_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumResources_Clone(This,ppenumr) (This)->lpVtbl->Clone(This,ppenumr) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumResources_QueryInterface(IEnumResources* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumResources_AddRef(IEnumResources* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumResources_Release(IEnumResources* This) { return This->lpVtbl->Release(This); } /*** IEnumResources methods ***/ static FORCEINLINE HRESULT IEnumResources_Next(IEnumResources* This,ULONG celt,SHELL_ITEM_RESOURCE *psir,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,psir,pceltFetched); } static FORCEINLINE HRESULT IEnumResources_Skip(IEnumResources* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumResources_Reset(IEnumResources* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumResources_Clone(IEnumResources* This,IEnumResources **ppenumr) { return This->lpVtbl->Clone(This,ppenumr); } #endif #endif #endif #endif /* __IEnumResources_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellItemResources interface */ #ifndef __IShellItemResources_INTERFACE_DEFINED__ #define __IShellItemResources_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellItemResources, 0xff5693be, 0x2ce0, 0x4d48, 0xb5,0xc5, 0x40,0x81,0x7d,0x1a,0xcd,0xb9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ff5693be-2ce0-4d48-b5c5-40817d1acdb9") IShellItemResources : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetAttributes( DWORD *pdwAttributes) = 0; virtual HRESULT STDMETHODCALLTYPE GetSize( ULONGLONG *pullSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetTimes( FILETIME *pftCreation, FILETIME *pftWrite, FILETIME *pftAccess) = 0; virtual HRESULT STDMETHODCALLTYPE SetTimes( const FILETIME *pftCreation, const FILETIME *pftWrite, const FILETIME *pftAccess) = 0; virtual HRESULT STDMETHODCALLTYPE GetResourceDescription( const SHELL_ITEM_RESOURCE *pcsir, LPWSTR *ppszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE EnumResources( IEnumResources **ppenumr) = 0; virtual HRESULT STDMETHODCALLTYPE SupportsResource( const SHELL_ITEM_RESOURCE *pcsir) = 0; virtual HRESULT STDMETHODCALLTYPE OpenResource( const SHELL_ITEM_RESOURCE *pcsir, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE CreateResource( const SHELL_ITEM_RESOURCE *pcsir, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE MarkForDelete( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemResources, 0xff5693be, 0x2ce0, 0x4d48, 0xb5,0xc5, 0x40,0x81,0x7d,0x1a,0xcd,0xb9) #endif #else typedef struct IShellItemResourcesVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemResources *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemResources *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemResources *This); /*** IShellItemResources methods ***/ HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItemResources *This, DWORD *pdwAttributes); HRESULT (STDMETHODCALLTYPE *GetSize)( IShellItemResources *This, ULONGLONG *pullSize); HRESULT (STDMETHODCALLTYPE *GetTimes)( IShellItemResources *This, FILETIME *pftCreation, FILETIME *pftWrite, FILETIME *pftAccess); HRESULT (STDMETHODCALLTYPE *SetTimes)( IShellItemResources *This, const FILETIME *pftCreation, const FILETIME *pftWrite, const FILETIME *pftAccess); HRESULT (STDMETHODCALLTYPE *GetResourceDescription)( IShellItemResources *This, const SHELL_ITEM_RESOURCE *pcsir, LPWSTR *ppszDescription); HRESULT (STDMETHODCALLTYPE *EnumResources)( IShellItemResources *This, IEnumResources **ppenumr); HRESULT (STDMETHODCALLTYPE *SupportsResource)( IShellItemResources *This, const SHELL_ITEM_RESOURCE *pcsir); HRESULT (STDMETHODCALLTYPE *OpenResource)( IShellItemResources *This, const SHELL_ITEM_RESOURCE *pcsir, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CreateResource)( IShellItemResources *This, const SHELL_ITEM_RESOURCE *pcsir, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *MarkForDelete)( IShellItemResources *This); END_INTERFACE } IShellItemResourcesVtbl; interface IShellItemResources { CONST_VTBL IShellItemResourcesVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemResources_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemResources_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemResources_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemResources methods ***/ #define IShellItemResources_GetAttributes(This,pdwAttributes) (This)->lpVtbl->GetAttributes(This,pdwAttributes) #define IShellItemResources_GetSize(This,pullSize) (This)->lpVtbl->GetSize(This,pullSize) #define IShellItemResources_GetTimes(This,pftCreation,pftWrite,pftAccess) (This)->lpVtbl->GetTimes(This,pftCreation,pftWrite,pftAccess) #define IShellItemResources_SetTimes(This,pftCreation,pftWrite,pftAccess) (This)->lpVtbl->SetTimes(This,pftCreation,pftWrite,pftAccess) #define IShellItemResources_GetResourceDescription(This,pcsir,ppszDescription) (This)->lpVtbl->GetResourceDescription(This,pcsir,ppszDescription) #define IShellItemResources_EnumResources(This,ppenumr) (This)->lpVtbl->EnumResources(This,ppenumr) #define IShellItemResources_SupportsResource(This,pcsir) (This)->lpVtbl->SupportsResource(This,pcsir) #define IShellItemResources_OpenResource(This,pcsir,riid,ppv) (This)->lpVtbl->OpenResource(This,pcsir,riid,ppv) #define IShellItemResources_CreateResource(This,pcsir,riid,ppv) (This)->lpVtbl->CreateResource(This,pcsir,riid,ppv) #define IShellItemResources_MarkForDelete(This) (This)->lpVtbl->MarkForDelete(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellItemResources_QueryInterface(IShellItemResources* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellItemResources_AddRef(IShellItemResources* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellItemResources_Release(IShellItemResources* This) { return This->lpVtbl->Release(This); } /*** IShellItemResources methods ***/ static FORCEINLINE HRESULT IShellItemResources_GetAttributes(IShellItemResources* This,DWORD *pdwAttributes) { return This->lpVtbl->GetAttributes(This,pdwAttributes); } static FORCEINLINE HRESULT IShellItemResources_GetSize(IShellItemResources* This,ULONGLONG *pullSize) { return This->lpVtbl->GetSize(This,pullSize); } static FORCEINLINE HRESULT IShellItemResources_GetTimes(IShellItemResources* This,FILETIME *pftCreation,FILETIME *pftWrite,FILETIME *pftAccess) { return This->lpVtbl->GetTimes(This,pftCreation,pftWrite,pftAccess); } static FORCEINLINE HRESULT IShellItemResources_SetTimes(IShellItemResources* This,const FILETIME *pftCreation,const FILETIME *pftWrite,const FILETIME *pftAccess) { return This->lpVtbl->SetTimes(This,pftCreation,pftWrite,pftAccess); } static FORCEINLINE HRESULT IShellItemResources_GetResourceDescription(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir,LPWSTR *ppszDescription) { return This->lpVtbl->GetResourceDescription(This,pcsir,ppszDescription); } static FORCEINLINE HRESULT IShellItemResources_EnumResources(IShellItemResources* This,IEnumResources **ppenumr) { return This->lpVtbl->EnumResources(This,ppenumr); } static FORCEINLINE HRESULT IShellItemResources_SupportsResource(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir) { return This->lpVtbl->SupportsResource(This,pcsir); } static FORCEINLINE HRESULT IShellItemResources_OpenResource(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir,REFIID riid,void **ppv) { return This->lpVtbl->OpenResource(This,pcsir,riid,ppv); } static FORCEINLINE HRESULT IShellItemResources_CreateResource(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir,REFIID riid,void **ppv) { return This->lpVtbl->CreateResource(This,pcsir,riid,ppv); } static FORCEINLINE HRESULT IShellItemResources_MarkForDelete(IShellItemResources* This) { return This->lpVtbl->MarkForDelete(This); } #endif #endif #endif #endif /* __IShellItemResources_INTERFACE_DEFINED__ */ /***************************************************************************** * ITransferDestination interface */ #ifndef __ITransferDestination_INTERFACE_DEFINED__ #define __ITransferDestination_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITransferDestination, 0x48addd32, 0x3ca5, 0x4124, 0xab,0xe3, 0xb5,0xa7,0x25,0x31,0xb2,0x07); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("48addd32-3ca5-4124-abe3-b5a72531b207") ITransferDestination : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( ITransferAdviseSink *psink, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE CreateItem( LPCWSTR pszName, DWORD dwAttributes, ULONGLONG ullSize, TRANSFER_SOURCE_FLAGS flags, REFIID riidItem, void **ppvItem, REFIID riidResources, void **ppvResources) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferDestination, 0x48addd32, 0x3ca5, 0x4124, 0xab,0xe3, 0xb5,0xa7,0x25,0x31,0xb2,0x07) #endif #else typedef struct ITransferDestinationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferDestination *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferDestination *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferDestination *This); /*** ITransferDestination methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( ITransferDestination *This, ITransferAdviseSink *psink, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( ITransferDestination *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateItem)( ITransferDestination *This, LPCWSTR pszName, DWORD dwAttributes, ULONGLONG ullSize, TRANSFER_SOURCE_FLAGS flags, REFIID riidItem, void **ppvItem, REFIID riidResources, void **ppvResources); END_INTERFACE } ITransferDestinationVtbl; interface ITransferDestination { CONST_VTBL ITransferDestinationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferDestination_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferDestination_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferDestination_Release(This) (This)->lpVtbl->Release(This) /*** ITransferDestination methods ***/ #define ITransferDestination_Advise(This,psink,pdwCookie) (This)->lpVtbl->Advise(This,psink,pdwCookie) #define ITransferDestination_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define ITransferDestination_CreateItem(This,pszName,dwAttributes,ullSize,flags,riidItem,ppvItem,riidResources,ppvResources) (This)->lpVtbl->CreateItem(This,pszName,dwAttributes,ullSize,flags,riidItem,ppvItem,riidResources,ppvResources) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITransferDestination_QueryInterface(ITransferDestination* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITransferDestination_AddRef(ITransferDestination* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITransferDestination_Release(ITransferDestination* This) { return This->lpVtbl->Release(This); } /*** ITransferDestination methods ***/ static FORCEINLINE HRESULT ITransferDestination_Advise(ITransferDestination* This,ITransferAdviseSink *psink,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,psink,pdwCookie); } static FORCEINLINE HRESULT ITransferDestination_Unadvise(ITransferDestination* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT ITransferDestination_CreateItem(ITransferDestination* This,LPCWSTR pszName,DWORD dwAttributes,ULONGLONG ullSize,TRANSFER_SOURCE_FLAGS flags,REFIID riidItem,void **ppvItem,REFIID riidResources,void **ppvResources) { return This->lpVtbl->CreateItem(This,pszName,dwAttributes,ullSize,flags,riidItem,ppvItem,riidResources,ppvResources); } #endif #endif #endif #endif /* __ITransferDestination_INTERFACE_DEFINED__ */ #if 0 typedef struct _OVERLAPPED { ULONG_PTR Internal; ULONG_PTR InternalHigh; __C89_NAMELESS union { __C89_NAMELESS struct { DWORD Offset; DWORD OffsetHigh; } __C89_NAMELESSSTRUCTNAME; PVOID Pointer; } __C89_NAMELESSUNIONNAME; HANDLE hEvent; } OVERLAPPED; typedef struct _OVERLAPPED *LPOVERLAPPED; #endif /***************************************************************************** * IStreamAsync interface */ #ifndef __IStreamAsync_INTERFACE_DEFINED__ #define __IStreamAsync_INTERFACE_DEFINED__ DEFINE_GUID(IID_IStreamAsync, 0xfe0b6665, 0xe0ca, 0x49b9, 0xa1,0x78, 0x2b,0x5c,0xb4,0x8d,0x92,0xa5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fe0b6665-e0ca-49b9-a178-2b5cb48d92a5") IStreamAsync : public IStream { virtual HRESULT STDMETHODCALLTYPE ReadAsync( void *pv, DWORD cb, LPDWORD pcbRead, LPOVERLAPPED lpOverlapped) = 0; virtual HRESULT STDMETHODCALLTYPE WriteAsync( const void *lpBuffer, DWORD cb, LPDWORD pcbWritten, LPOVERLAPPED lpOverlapped) = 0; virtual HRESULT STDMETHODCALLTYPE OverlappedResult( LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, WINBOOL bWait) = 0; virtual HRESULT STDMETHODCALLTYPE CancelIo( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IStreamAsync, 0xfe0b6665, 0xe0ca, 0x49b9, 0xa1,0x78, 0x2b,0x5c,0xb4,0x8d,0x92,0xa5) #endif #else typedef struct IStreamAsyncVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IStreamAsync *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IStreamAsync *This); ULONG (STDMETHODCALLTYPE *Release)( IStreamAsync *This); /*** ISequentialStream methods ***/ HRESULT (STDMETHODCALLTYPE *Read)( IStreamAsync *This, void *pv, ULONG cb, ULONG *pcbRead); HRESULT (STDMETHODCALLTYPE *Write)( IStreamAsync *This, const void *pv, ULONG cb, ULONG *pcbWritten); /*** IStream methods ***/ HRESULT (STDMETHODCALLTYPE *Seek)( IStreamAsync *This, LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER *plibNewPosition); HRESULT (STDMETHODCALLTYPE *SetSize)( IStreamAsync *This, ULARGE_INTEGER libNewSize); HRESULT (STDMETHODCALLTYPE *CopyTo)( IStreamAsync *This, IStream *pstm, ULARGE_INTEGER cb, ULARGE_INTEGER *pcbRead, ULARGE_INTEGER *pcbWritten); HRESULT (STDMETHODCALLTYPE *Commit)( IStreamAsync *This, DWORD grfCommitFlags); HRESULT (STDMETHODCALLTYPE *Revert)( IStreamAsync *This); HRESULT (STDMETHODCALLTYPE *LockRegion)( IStreamAsync *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); HRESULT (STDMETHODCALLTYPE *UnlockRegion)( IStreamAsync *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); HRESULT (STDMETHODCALLTYPE *Stat)( IStreamAsync *This, STATSTG *pstatstg, DWORD grfStatFlag); HRESULT (STDMETHODCALLTYPE *Clone)( IStreamAsync *This, IStream **ppstm); /*** IStreamAsync methods ***/ HRESULT (STDMETHODCALLTYPE *ReadAsync)( IStreamAsync *This, void *pv, DWORD cb, LPDWORD pcbRead, LPOVERLAPPED lpOverlapped); HRESULT (STDMETHODCALLTYPE *WriteAsync)( IStreamAsync *This, const void *lpBuffer, DWORD cb, LPDWORD pcbWritten, LPOVERLAPPED lpOverlapped); HRESULT (STDMETHODCALLTYPE *OverlappedResult)( IStreamAsync *This, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, WINBOOL bWait); HRESULT (STDMETHODCALLTYPE *CancelIo)( IStreamAsync *This); END_INTERFACE } IStreamAsyncVtbl; interface IStreamAsync { CONST_VTBL IStreamAsyncVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IStreamAsync_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IStreamAsync_AddRef(This) (This)->lpVtbl->AddRef(This) #define IStreamAsync_Release(This) (This)->lpVtbl->Release(This) /*** ISequentialStream methods ***/ #define IStreamAsync_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) #define IStreamAsync_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) /*** IStream methods ***/ #define IStreamAsync_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition) #define IStreamAsync_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize) #define IStreamAsync_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten) #define IStreamAsync_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) #define IStreamAsync_Revert(This) (This)->lpVtbl->Revert(This) #define IStreamAsync_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType) #define IStreamAsync_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType) #define IStreamAsync_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) #define IStreamAsync_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm) /*** IStreamAsync methods ***/ #define IStreamAsync_ReadAsync(This,pv,cb,pcbRead,lpOverlapped) (This)->lpVtbl->ReadAsync(This,pv,cb,pcbRead,lpOverlapped) #define IStreamAsync_WriteAsync(This,lpBuffer,cb,pcbWritten,lpOverlapped) (This)->lpVtbl->WriteAsync(This,lpBuffer,cb,pcbWritten,lpOverlapped) #define IStreamAsync_OverlappedResult(This,lpOverlapped,lpNumberOfBytesTransferred,bWait) (This)->lpVtbl->OverlappedResult(This,lpOverlapped,lpNumberOfBytesTransferred,bWait) #define IStreamAsync_CancelIo(This) (This)->lpVtbl->CancelIo(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IStreamAsync_QueryInterface(IStreamAsync* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IStreamAsync_AddRef(IStreamAsync* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IStreamAsync_Release(IStreamAsync* This) { return This->lpVtbl->Release(This); } /*** ISequentialStream methods ***/ static FORCEINLINE HRESULT IStreamAsync_Read(IStreamAsync* This,void *pv,ULONG cb,ULONG *pcbRead) { return This->lpVtbl->Read(This,pv,cb,pcbRead); } static FORCEINLINE HRESULT IStreamAsync_Write(IStreamAsync* This,const void *pv,ULONG cb,ULONG *pcbWritten) { return This->lpVtbl->Write(This,pv,cb,pcbWritten); } /*** IStream methods ***/ static FORCEINLINE HRESULT IStreamAsync_Seek(IStreamAsync* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) { return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition); } static FORCEINLINE HRESULT IStreamAsync_SetSize(IStreamAsync* This,ULARGE_INTEGER libNewSize) { return This->lpVtbl->SetSize(This,libNewSize); } static FORCEINLINE HRESULT IStreamAsync_CopyTo(IStreamAsync* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) { return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten); } static FORCEINLINE HRESULT IStreamAsync_Commit(IStreamAsync* This,DWORD grfCommitFlags) { return This->lpVtbl->Commit(This,grfCommitFlags); } static FORCEINLINE HRESULT IStreamAsync_Revert(IStreamAsync* This) { return This->lpVtbl->Revert(This); } static FORCEINLINE HRESULT IStreamAsync_LockRegion(IStreamAsync* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType); } static FORCEINLINE HRESULT IStreamAsync_UnlockRegion(IStreamAsync* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType); } static FORCEINLINE HRESULT IStreamAsync_Stat(IStreamAsync* This,STATSTG *pstatstg,DWORD grfStatFlag) { return This->lpVtbl->Stat(This,pstatstg,grfStatFlag); } static FORCEINLINE HRESULT IStreamAsync_Clone(IStreamAsync* This,IStream **ppstm) { return This->lpVtbl->Clone(This,ppstm); } /*** IStreamAsync methods ***/ static FORCEINLINE HRESULT IStreamAsync_ReadAsync(IStreamAsync* This,void *pv,DWORD cb,LPDWORD pcbRead,LPOVERLAPPED lpOverlapped) { return This->lpVtbl->ReadAsync(This,pv,cb,pcbRead,lpOverlapped); } static FORCEINLINE HRESULT IStreamAsync_WriteAsync(IStreamAsync* This,const void *lpBuffer,DWORD cb,LPDWORD pcbWritten,LPOVERLAPPED lpOverlapped) { return This->lpVtbl->WriteAsync(This,lpBuffer,cb,pcbWritten,lpOverlapped); } static FORCEINLINE HRESULT IStreamAsync_OverlappedResult(IStreamAsync* This,LPOVERLAPPED lpOverlapped,LPDWORD lpNumberOfBytesTransferred,WINBOOL bWait) { return This->lpVtbl->OverlappedResult(This,lpOverlapped,lpNumberOfBytesTransferred,bWait); } static FORCEINLINE HRESULT IStreamAsync_CancelIo(IStreamAsync* This) { return This->lpVtbl->CancelIo(This); } #endif #endif #endif #endif /* __IStreamAsync_INTERFACE_DEFINED__ */ /***************************************************************************** * IStreamUnbufferedInfo interface */ #ifndef __IStreamUnbufferedInfo_INTERFACE_DEFINED__ #define __IStreamUnbufferedInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_IStreamUnbufferedInfo, 0x8a68fdda, 0x1fdc, 0x4c20, 0x8c,0xeb, 0x41,0x66,0x43,0xb5,0xa6,0x25); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8a68fdda-1fdc-4c20-8ceb-416643b5a625") IStreamUnbufferedInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetSectorSize( ULONG *pcbSectorSize) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IStreamUnbufferedInfo, 0x8a68fdda, 0x1fdc, 0x4c20, 0x8c,0xeb, 0x41,0x66,0x43,0xb5,0xa6,0x25) #endif #else typedef struct IStreamUnbufferedInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IStreamUnbufferedInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IStreamUnbufferedInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IStreamUnbufferedInfo *This); /*** IStreamUnbufferedInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetSectorSize)( IStreamUnbufferedInfo *This, ULONG *pcbSectorSize); END_INTERFACE } IStreamUnbufferedInfoVtbl; interface IStreamUnbufferedInfo { CONST_VTBL IStreamUnbufferedInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IStreamUnbufferedInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IStreamUnbufferedInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IStreamUnbufferedInfo_Release(This) (This)->lpVtbl->Release(This) /*** IStreamUnbufferedInfo methods ***/ #define IStreamUnbufferedInfo_GetSectorSize(This,pcbSectorSize) (This)->lpVtbl->GetSectorSize(This,pcbSectorSize) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IStreamUnbufferedInfo_QueryInterface(IStreamUnbufferedInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IStreamUnbufferedInfo_AddRef(IStreamUnbufferedInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IStreamUnbufferedInfo_Release(IStreamUnbufferedInfo* This) { return This->lpVtbl->Release(This); } /*** IStreamUnbufferedInfo methods ***/ static FORCEINLINE HRESULT IStreamUnbufferedInfo_GetSectorSize(IStreamUnbufferedInfo* This,ULONG *pcbSectorSize) { return This->lpVtbl->GetSectorSize(This,pcbSectorSize); } #endif #endif #endif #endif /* __IStreamUnbufferedInfo_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * IFileOperationProgressSink interface */ #ifndef __IFileOperationProgressSink_INTERFACE_DEFINED__ #define __IFileOperationProgressSink_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileOperationProgressSink, 0x04b0f1a7, 0x9490, 0x44bc, 0x96,0xe1, 0x42,0x96,0xa3,0x12,0x52,0xe2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("04b0f1a7-9490-44bc-96e1-4296a31252e2") IFileOperationProgressSink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE StartOperations( ) = 0; virtual HRESULT STDMETHODCALLTYPE FinishOperations( HRESULT hrResult) = 0; virtual HRESULT STDMETHODCALLTYPE PreRenameItem( DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostRenameItem( DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName, HRESULT hrRename, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreMoveItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostMoveItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrMove, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreCopyItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostCopyItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrCopy, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreDeleteItem( DWORD dwFlags, IShellItem *psiItem) = 0; virtual HRESULT STDMETHODCALLTYPE PostDeleteItem( DWORD dwFlags, IShellItem *psiItem, HRESULT hrDelete, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreNewItem( DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostNewItem( DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, LPCWSTR pszTemplateName, DWORD dwFileAttributes, HRESULT hrNew, IShellItem *psiNewItem) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateProgress( UINT iWorkTotal, UINT iWorkSoFar) = 0; virtual HRESULT STDMETHODCALLTYPE ResetTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE PauseTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE ResumeTimer( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileOperationProgressSink, 0x04b0f1a7, 0x9490, 0x44bc, 0x96,0xe1, 0x42,0x96,0xa3,0x12,0x52,0xe2) #endif #else typedef struct IFileOperationProgressSinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileOperationProgressSink *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileOperationProgressSink *This); ULONG (STDMETHODCALLTYPE *Release)( IFileOperationProgressSink *This); /*** IFileOperationProgressSink methods ***/ HRESULT (STDMETHODCALLTYPE *StartOperations)( IFileOperationProgressSink *This); HRESULT (STDMETHODCALLTYPE *FinishOperations)( IFileOperationProgressSink *This, HRESULT hrResult); HRESULT (STDMETHODCALLTYPE *PreRenameItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostRenameItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName, HRESULT hrRename, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreMoveItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostMoveItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrMove, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreCopyItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostCopyItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrCopy, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreDeleteItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem); HRESULT (STDMETHODCALLTYPE *PostDeleteItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, HRESULT hrDelete, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreNewItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostNewItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, LPCWSTR pszTemplateName, DWORD dwFileAttributes, HRESULT hrNew, IShellItem *psiNewItem); HRESULT (STDMETHODCALLTYPE *UpdateProgress)( IFileOperationProgressSink *This, UINT iWorkTotal, UINT iWorkSoFar); HRESULT (STDMETHODCALLTYPE *ResetTimer)( IFileOperationProgressSink *This); HRESULT (STDMETHODCALLTYPE *PauseTimer)( IFileOperationProgressSink *This); HRESULT (STDMETHODCALLTYPE *ResumeTimer)( IFileOperationProgressSink *This); END_INTERFACE } IFileOperationProgressSinkVtbl; interface IFileOperationProgressSink { CONST_VTBL IFileOperationProgressSinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileOperationProgressSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileOperationProgressSink_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileOperationProgressSink_Release(This) (This)->lpVtbl->Release(This) /*** IFileOperationProgressSink methods ***/ #define IFileOperationProgressSink_StartOperations(This) (This)->lpVtbl->StartOperations(This) #define IFileOperationProgressSink_FinishOperations(This,hrResult) (This)->lpVtbl->FinishOperations(This,hrResult) #define IFileOperationProgressSink_PreRenameItem(This,dwFlags,psiItem,pszNewName) (This)->lpVtbl->PreRenameItem(This,dwFlags,psiItem,pszNewName) #define IFileOperationProgressSink_PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated) (This)->lpVtbl->PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated) #define IFileOperationProgressSink_PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) #define IFileOperationProgressSink_PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated) (This)->lpVtbl->PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated) #define IFileOperationProgressSink_PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) #define IFileOperationProgressSink_PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated) (This)->lpVtbl->PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated) #define IFileOperationProgressSink_PreDeleteItem(This,dwFlags,psiItem) (This)->lpVtbl->PreDeleteItem(This,dwFlags,psiItem) #define IFileOperationProgressSink_PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated) (This)->lpVtbl->PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated) #define IFileOperationProgressSink_PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName) #define IFileOperationProgressSink_PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem) (This)->lpVtbl->PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem) #define IFileOperationProgressSink_UpdateProgress(This,iWorkTotal,iWorkSoFar) (This)->lpVtbl->UpdateProgress(This,iWorkTotal,iWorkSoFar) #define IFileOperationProgressSink_ResetTimer(This) (This)->lpVtbl->ResetTimer(This) #define IFileOperationProgressSink_PauseTimer(This) (This)->lpVtbl->PauseTimer(This) #define IFileOperationProgressSink_ResumeTimer(This) (This)->lpVtbl->ResumeTimer(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileOperationProgressSink_QueryInterface(IFileOperationProgressSink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileOperationProgressSink_AddRef(IFileOperationProgressSink* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileOperationProgressSink_Release(IFileOperationProgressSink* This) { return This->lpVtbl->Release(This); } /*** IFileOperationProgressSink methods ***/ static FORCEINLINE HRESULT IFileOperationProgressSink_StartOperations(IFileOperationProgressSink* This) { return This->lpVtbl->StartOperations(This); } static FORCEINLINE HRESULT IFileOperationProgressSink_FinishOperations(IFileOperationProgressSink* This,HRESULT hrResult) { return This->lpVtbl->FinishOperations(This,hrResult); } static FORCEINLINE HRESULT IFileOperationProgressSink_PreRenameItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,LPCWSTR pszNewName) { return This->lpVtbl->PreRenameItem(This,dwFlags,psiItem,pszNewName); } static FORCEINLINE HRESULT IFileOperationProgressSink_PostRenameItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,LPCWSTR pszNewName,HRESULT hrRename,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated); } static FORCEINLINE HRESULT IFileOperationProgressSink_PreMoveItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { return This->lpVtbl->PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName); } static FORCEINLINE HRESULT IFileOperationProgressSink_PostMoveItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,HRESULT hrMove,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated); } static FORCEINLINE HRESULT IFileOperationProgressSink_PreCopyItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { return This->lpVtbl->PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName); } static FORCEINLINE HRESULT IFileOperationProgressSink_PostCopyItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,HRESULT hrCopy,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated); } static FORCEINLINE HRESULT IFileOperationProgressSink_PreDeleteItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem) { return This->lpVtbl->PreDeleteItem(This,dwFlags,psiItem); } static FORCEINLINE HRESULT IFileOperationProgressSink_PostDeleteItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,HRESULT hrDelete,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated); } static FORCEINLINE HRESULT IFileOperationProgressSink_PreNewItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { return This->lpVtbl->PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName); } static FORCEINLINE HRESULT IFileOperationProgressSink_PostNewItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,LPCWSTR pszTemplateName,DWORD dwFileAttributes,HRESULT hrNew,IShellItem *psiNewItem) { return This->lpVtbl->PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem); } static FORCEINLINE HRESULT IFileOperationProgressSink_UpdateProgress(IFileOperationProgressSink* This,UINT iWorkTotal,UINT iWorkSoFar) { return This->lpVtbl->UpdateProgress(This,iWorkTotal,iWorkSoFar); } static FORCEINLINE HRESULT IFileOperationProgressSink_ResetTimer(IFileOperationProgressSink* This) { return This->lpVtbl->ResetTimer(This); } static FORCEINLINE HRESULT IFileOperationProgressSink_PauseTimer(IFileOperationProgressSink* This) { return This->lpVtbl->PauseTimer(This); } static FORCEINLINE HRESULT IFileOperationProgressSink_ResumeTimer(IFileOperationProgressSink* This) { return This->lpVtbl->ResumeTimer(This); } #endif #endif #endif #endif /* __IFileOperationProgressSink_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IShellItemArray interface */ #ifndef __IShellItemArray_INTERFACE_DEFINED__ #define __IShellItemArray_INTERFACE_DEFINED__ typedef enum SIATTRIBFLAGS { SIATTRIBFLAGS_AND = 0x1, SIATTRIBFLAGS_OR = 0x2, SIATTRIBFLAGS_APPCOMPAT = 0x3, SIATTRIBFLAGS_MASK = 0x3, SIATTRIBFLAGS_ALLITEMS = 0x4000 } SIATTRIBFLAGS; DEFINE_ENUM_FLAG_OPERATORS(SIATTRIBFLAGS) DEFINE_GUID(IID_IShellItemArray, 0xb63ea76d, 0x1f85, 0x456f, 0xa1,0x9c, 0x48,0x15,0x9e,0xfa,0x85,0x8b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b63ea76d-1f85-456f-a19c-48159efa858b") IShellItemArray : public IUnknown { virtual HRESULT STDMETHODCALLTYPE BindToHandler( IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppvOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionList( REFPROPERTYKEY keyType, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetAttributes( SIATTRIBFLAGS AttribFlags, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs) = 0; virtual HRESULT STDMETHODCALLTYPE GetCount( DWORD *pdwNumItems) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemAt( DWORD dwIndex, IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE EnumItems( IEnumShellItems **ppenumShellItems) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemArray, 0xb63ea76d, 0x1f85, 0x456f, 0xa1,0x9c, 0x48,0x15,0x9e,0xfa,0x85,0x8b) #endif #else typedef struct IShellItemArrayVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemArray *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemArray *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemArray *This); /*** IShellItemArray methods ***/ HRESULT (STDMETHODCALLTYPE *BindToHandler)( IShellItemArray *This, IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( IShellItemArray *This, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionList)( IShellItemArray *This, REFPROPERTYKEY keyType, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItemArray *This, SIATTRIBFLAGS AttribFlags, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs); HRESULT (STDMETHODCALLTYPE *GetCount)( IShellItemArray *This, DWORD *pdwNumItems); HRESULT (STDMETHODCALLTYPE *GetItemAt)( IShellItemArray *This, DWORD dwIndex, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *EnumItems)( IShellItemArray *This, IEnumShellItems **ppenumShellItems); END_INTERFACE } IShellItemArrayVtbl; interface IShellItemArray { CONST_VTBL IShellItemArrayVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemArray_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemArray_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemArray methods ***/ #define IShellItemArray_BindToHandler(This,pbc,bhid,riid,ppvOut) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppvOut) #define IShellItemArray_GetPropertyStore(This,flags,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,riid,ppv) #define IShellItemArray_GetPropertyDescriptionList(This,keyType,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv) #define IShellItemArray_GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs) #define IShellItemArray_GetCount(This,pdwNumItems) (This)->lpVtbl->GetCount(This,pdwNumItems) #define IShellItemArray_GetItemAt(This,dwIndex,ppsi) (This)->lpVtbl->GetItemAt(This,dwIndex,ppsi) #define IShellItemArray_EnumItems(This,ppenumShellItems) (This)->lpVtbl->EnumItems(This,ppenumShellItems) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellItemArray_QueryInterface(IShellItemArray* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellItemArray_AddRef(IShellItemArray* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellItemArray_Release(IShellItemArray* This) { return This->lpVtbl->Release(This); } /*** IShellItemArray methods ***/ static FORCEINLINE HRESULT IShellItemArray_BindToHandler(IShellItemArray* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppvOut) { return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppvOut); } static FORCEINLINE HRESULT IShellItemArray_GetPropertyStore(IShellItemArray* This,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStore(This,flags,riid,ppv); } static FORCEINLINE HRESULT IShellItemArray_GetPropertyDescriptionList(IShellItemArray* This,REFPROPERTYKEY keyType,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv); } static FORCEINLINE HRESULT IShellItemArray_GetAttributes(IShellItemArray* This,SIATTRIBFLAGS AttribFlags,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { return This->lpVtbl->GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs); } static FORCEINLINE HRESULT IShellItemArray_GetCount(IShellItemArray* This,DWORD *pdwNumItems) { return This->lpVtbl->GetCount(This,pdwNumItems); } static FORCEINLINE HRESULT IShellItemArray_GetItemAt(IShellItemArray* This,DWORD dwIndex,IShellItem **ppsi) { return This->lpVtbl->GetItemAt(This,dwIndex,ppsi); } static FORCEINLINE HRESULT IShellItemArray_EnumItems(IShellItemArray* This,IEnumShellItems **ppenumShellItems) { return This->lpVtbl->EnumItems(This,ppenumShellItems); } #endif #endif #endif #endif /* __IShellItemArray_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE70 SHSTDAPI SHCreateShellItemArray(PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psf, UINT cidl, PCUITEMID_CHILD_ARRAY ppidl, IShellItemArray **ppsiItemArray); SHSTDAPI SHCreateShellItemArrayFromDataObject(IDataObject *pdo, REFIID riid, void **ppv); SHSTDAPI SHCreateShellItemArrayFromIDLists(UINT cidl, PCIDLIST_ABSOLUTE_ARRAY rgpidl, IShellItemArray **ppsiItemArray); SHSTDAPI SHCreateShellItemArrayFromShellItem(IShellItem *psi, REFIID riid, void **ppv); #endif /***************************************************************************** * IInitializeWithItem interface */ #ifndef __IInitializeWithItem_INTERFACE_DEFINED__ #define __IInitializeWithItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeWithItem, 0x7f73be3f, 0xfb79, 0x493c, 0xa6,0xc7, 0x7e,0xe1,0x4e,0x24,0x58,0x41); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7f73be3f-fb79-493c-a6c7-7ee14e245841") IInitializeWithItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( IShellItem *psi, DWORD grfMode) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeWithItem, 0x7f73be3f, 0xfb79, 0x493c, 0xa6,0xc7, 0x7e,0xe1,0x4e,0x24,0x58,0x41) #endif #else typedef struct IInitializeWithItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeWithItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeWithItem *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeWithItem *This); /*** IInitializeWithItem methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeWithItem *This, IShellItem *psi, DWORD grfMode); END_INTERFACE } IInitializeWithItemVtbl; interface IInitializeWithItem { CONST_VTBL IInitializeWithItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeWithItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeWithItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeWithItem_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeWithItem methods ***/ #define IInitializeWithItem_Initialize(This,psi,grfMode) (This)->lpVtbl->Initialize(This,psi,grfMode) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeWithItem_QueryInterface(IInitializeWithItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeWithItem_AddRef(IInitializeWithItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeWithItem_Release(IInitializeWithItem* This) { return This->lpVtbl->Release(This); } /*** IInitializeWithItem methods ***/ static FORCEINLINE HRESULT IInitializeWithItem_Initialize(IInitializeWithItem* This,IShellItem *psi,DWORD grfMode) { return This->lpVtbl->Initialize(This,psi,grfMode); } #endif #endif #endif #endif /* __IInitializeWithItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IObjectWithSelection interface */ #ifndef __IObjectWithSelection_INTERFACE_DEFINED__ #define __IObjectWithSelection_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithSelection, 0x1c9cd5bb, 0x98e9, 0x4491, 0xa6,0x0f, 0x31,0xaa,0xcc,0x72,0xb8,0x3c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1c9cd5bb-98e9-4491-a60f-31aacc72b83c") IObjectWithSelection : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetSelection( IShellItemArray *psia) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelection( REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithSelection, 0x1c9cd5bb, 0x98e9, 0x4491, 0xa6,0x0f, 0x31,0xaa,0xcc,0x72,0xb8,0x3c) #endif #else typedef struct IObjectWithSelectionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithSelection *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithSelection *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithSelection *This); /*** IObjectWithSelection methods ***/ HRESULT (STDMETHODCALLTYPE *SetSelection)( IObjectWithSelection *This, IShellItemArray *psia); HRESULT (STDMETHODCALLTYPE *GetSelection)( IObjectWithSelection *This, REFIID riid, void **ppv); END_INTERFACE } IObjectWithSelectionVtbl; interface IObjectWithSelection { CONST_VTBL IObjectWithSelectionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithSelection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithSelection_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithSelection_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithSelection methods ***/ #define IObjectWithSelection_SetSelection(This,psia) (This)->lpVtbl->SetSelection(This,psia) #define IObjectWithSelection_GetSelection(This,riid,ppv) (This)->lpVtbl->GetSelection(This,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithSelection_QueryInterface(IObjectWithSelection* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithSelection_AddRef(IObjectWithSelection* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithSelection_Release(IObjectWithSelection* This) { return This->lpVtbl->Release(This); } /*** IObjectWithSelection methods ***/ static FORCEINLINE HRESULT IObjectWithSelection_SetSelection(IObjectWithSelection* This,IShellItemArray *psia) { return This->lpVtbl->SetSelection(This,psia); } static FORCEINLINE HRESULT IObjectWithSelection_GetSelection(IObjectWithSelection* This,REFIID riid,void **ppv) { return This->lpVtbl->GetSelection(This,riid,ppv); } #endif #endif #endif #endif /* __IObjectWithSelection_INTERFACE_DEFINED__ */ /***************************************************************************** * IObjectWithBackReferences interface */ #ifndef __IObjectWithBackReferences_INTERFACE_DEFINED__ #define __IObjectWithBackReferences_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithBackReferences, 0x321a6a6a, 0xd61f, 0x4bf3, 0x97,0xae, 0x14,0xbe,0x29,0x86,0xbb,0x36); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("321a6a6a-d61f-4bf3-97ae-14be2986bb36") IObjectWithBackReferences : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RemoveBackReferences( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithBackReferences, 0x321a6a6a, 0xd61f, 0x4bf3, 0x97,0xae, 0x14,0xbe,0x29,0x86,0xbb,0x36) #endif #else typedef struct IObjectWithBackReferencesVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithBackReferences *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithBackReferences *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithBackReferences *This); /*** IObjectWithBackReferences methods ***/ HRESULT (STDMETHODCALLTYPE *RemoveBackReferences)( IObjectWithBackReferences *This); END_INTERFACE } IObjectWithBackReferencesVtbl; interface IObjectWithBackReferences { CONST_VTBL IObjectWithBackReferencesVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithBackReferences_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithBackReferences_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithBackReferences_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithBackReferences methods ***/ #define IObjectWithBackReferences_RemoveBackReferences(This) (This)->lpVtbl->RemoveBackReferences(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithBackReferences_QueryInterface(IObjectWithBackReferences* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithBackReferences_AddRef(IObjectWithBackReferences* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithBackReferences_Release(IObjectWithBackReferences* This) { return This->lpVtbl->Release(This); } /*** IObjectWithBackReferences methods ***/ static FORCEINLINE HRESULT IObjectWithBackReferences_RemoveBackReferences(IObjectWithBackReferences* This) { return This->lpVtbl->RemoveBackReferences(This); } #endif #endif #endif #endif /* __IObjectWithBackReferences_INTERFACE_DEFINED__ */ enum _PROPERTYUI_NAME_FLAGS { PUIFNF_DEFAULT = 0x0, PUIFNF_MNEMONIC = 0x1 }; typedef DWORD PROPERTYUI_NAME_FLAGS; enum _PROPERTYUI_FLAGS { PUIF_DEFAULT = 0x0, PUIF_RIGHTALIGN = 0x1, PUIF_NOLABELININFOTIP = 0x2 }; typedef DWORD PROPERTYUI_FLAGS; enum _PROPERTYUI_FORMAT_FLAGS { PUIFFDF_DEFAULT = 0x0, PUIFFDF_RIGHTTOLEFT = 0x1, PUIFFDF_SHORTFORMAT = 0x2, PUIFFDF_NOTIME = 0x4, PUIFFDF_FRIENDLYDATE = 0x8 }; typedef DWORD PROPERTYUI_FORMAT_FLAGS; /***************************************************************************** * IPropertyUI interface */ #ifndef __IPropertyUI_INTERFACE_DEFINED__ #define __IPropertyUI_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyUI, 0x757a7d9f, 0x919a, 0x4118, 0x99,0xd7, 0xdb,0xb2,0x08,0xc8,0xcc,0x66); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("757a7d9f-919a-4118-99d7-dbb208c8cc66") IPropertyUI : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ParsePropertyName( LPCWSTR pszName, FMTID *pfmtid, PROPID *ppid, ULONG *pchEaten) = 0; virtual HRESULT STDMETHODCALLTYPE GetCannonicalName( REFFMTID fmtid, PROPID pid, LPWSTR pwszText, DWORD cchText) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayName( REFFMTID fmtid, PROPID pid, PROPERTYUI_NAME_FLAGS flags, LPWSTR pwszText, DWORD cchText) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescription( REFFMTID fmtid, PROPID pid, LPWSTR pwszText, DWORD cchText) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultWidth( REFFMTID fmtid, PROPID pid, ULONG *pcxChars) = 0; virtual HRESULT STDMETHODCALLTYPE GetFlags( REFFMTID fmtid, PROPID pid, PROPERTYUI_FLAGS *pflags) = 0; virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( REFFMTID fmtid, PROPID pid, const PROPVARIANT *ppropvar, PROPERTYUI_FORMAT_FLAGS puiff, LPWSTR pwszText, DWORD cchText) = 0; virtual HRESULT STDMETHODCALLTYPE GetHelpInfo( REFFMTID fmtid, PROPID pid, LPWSTR pwszHelpFile, DWORD cch, UINT *puHelpID) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyUI, 0x757a7d9f, 0x919a, 0x4118, 0x99,0xd7, 0xdb,0xb2,0x08,0xc8,0xcc,0x66) #endif #else typedef struct IPropertyUIVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyUI *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyUI *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyUI *This); /*** IPropertyUI methods ***/ HRESULT (STDMETHODCALLTYPE *ParsePropertyName)( IPropertyUI *This, LPCWSTR pszName, FMTID *pfmtid, PROPID *ppid, ULONG *pchEaten); HRESULT (STDMETHODCALLTYPE *GetCannonicalName)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, LPWSTR pwszText, DWORD cchText); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, PROPERTYUI_NAME_FLAGS flags, LPWSTR pwszText, DWORD cchText); HRESULT (STDMETHODCALLTYPE *GetPropertyDescription)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, LPWSTR pwszText, DWORD cchText); HRESULT (STDMETHODCALLTYPE *GetDefaultWidth)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, ULONG *pcxChars); HRESULT (STDMETHODCALLTYPE *GetFlags)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, PROPERTYUI_FLAGS *pflags); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, const PROPVARIANT *ppropvar, PROPERTYUI_FORMAT_FLAGS puiff, LPWSTR pwszText, DWORD cchText); HRESULT (STDMETHODCALLTYPE *GetHelpInfo)( IPropertyUI *This, REFFMTID fmtid, PROPID pid, LPWSTR pwszHelpFile, DWORD cch, UINT *puHelpID); END_INTERFACE } IPropertyUIVtbl; interface IPropertyUI { CONST_VTBL IPropertyUIVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyUI_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyUI_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyUI methods ***/ #define IPropertyUI_ParsePropertyName(This,pszName,pfmtid,ppid,pchEaten) (This)->lpVtbl->ParsePropertyName(This,pszName,pfmtid,ppid,pchEaten) #define IPropertyUI_GetCannonicalName(This,fmtid,pid,pwszText,cchText) (This)->lpVtbl->GetCannonicalName(This,fmtid,pid,pwszText,cchText) #define IPropertyUI_GetDisplayName(This,fmtid,pid,flags,pwszText,cchText) (This)->lpVtbl->GetDisplayName(This,fmtid,pid,flags,pwszText,cchText) #define IPropertyUI_GetPropertyDescription(This,fmtid,pid,pwszText,cchText) (This)->lpVtbl->GetPropertyDescription(This,fmtid,pid,pwszText,cchText) #define IPropertyUI_GetDefaultWidth(This,fmtid,pid,pcxChars) (This)->lpVtbl->GetDefaultWidth(This,fmtid,pid,pcxChars) #define IPropertyUI_GetFlags(This,fmtid,pid,pflags) (This)->lpVtbl->GetFlags(This,fmtid,pid,pflags) #define IPropertyUI_FormatForDisplay(This,fmtid,pid,ppropvar,puiff,pwszText,cchText) (This)->lpVtbl->FormatForDisplay(This,fmtid,pid,ppropvar,puiff,pwszText,cchText) #define IPropertyUI_GetHelpInfo(This,fmtid,pid,pwszHelpFile,cch,puHelpID) (This)->lpVtbl->GetHelpInfo(This,fmtid,pid,pwszHelpFile,cch,puHelpID) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyUI_QueryInterface(IPropertyUI* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyUI_AddRef(IPropertyUI* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyUI_Release(IPropertyUI* This) { return This->lpVtbl->Release(This); } /*** IPropertyUI methods ***/ static FORCEINLINE HRESULT IPropertyUI_ParsePropertyName(IPropertyUI* This,LPCWSTR pszName,FMTID *pfmtid,PROPID *ppid,ULONG *pchEaten) { return This->lpVtbl->ParsePropertyName(This,pszName,pfmtid,ppid,pchEaten); } static FORCEINLINE HRESULT IPropertyUI_GetCannonicalName(IPropertyUI* This,REFFMTID fmtid,PROPID pid,LPWSTR pwszText,DWORD cchText) { return This->lpVtbl->GetCannonicalName(This,fmtid,pid,pwszText,cchText); } static FORCEINLINE HRESULT IPropertyUI_GetDisplayName(IPropertyUI* This,REFFMTID fmtid,PROPID pid,PROPERTYUI_NAME_FLAGS flags,LPWSTR pwszText,DWORD cchText) { return This->lpVtbl->GetDisplayName(This,fmtid,pid,flags,pwszText,cchText); } static FORCEINLINE HRESULT IPropertyUI_GetPropertyDescription(IPropertyUI* This,REFFMTID fmtid,PROPID pid,LPWSTR pwszText,DWORD cchText) { return This->lpVtbl->GetPropertyDescription(This,fmtid,pid,pwszText,cchText); } static FORCEINLINE HRESULT IPropertyUI_GetDefaultWidth(IPropertyUI* This,REFFMTID fmtid,PROPID pid,ULONG *pcxChars) { return This->lpVtbl->GetDefaultWidth(This,fmtid,pid,pcxChars); } static FORCEINLINE HRESULT IPropertyUI_GetFlags(IPropertyUI* This,REFFMTID fmtid,PROPID pid,PROPERTYUI_FLAGS *pflags) { return This->lpVtbl->GetFlags(This,fmtid,pid,pflags); } static FORCEINLINE HRESULT IPropertyUI_FormatForDisplay(IPropertyUI* This,REFFMTID fmtid,PROPID pid,const PROPVARIANT *ppropvar,PROPERTYUI_FORMAT_FLAGS puiff,LPWSTR pwszText,DWORD cchText) { return This->lpVtbl->FormatForDisplay(This,fmtid,pid,ppropvar,puiff,pwszText,cchText); } static FORCEINLINE HRESULT IPropertyUI_GetHelpInfo(IPropertyUI* This,REFFMTID fmtid,PROPID pid,LPWSTR pwszHelpFile,DWORD cch,UINT *puHelpID) { return This->lpVtbl->GetHelpInfo(This,fmtid,pid,pwszHelpFile,cch,puHelpID); } #endif #endif #endif #endif /* __IPropertyUI_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE70 SHSTDAPI SHRemovePersonalPropertyValues(IShellItemArray *psia); SHSTDAPI SHAddDefaultPropertiesByExt(PCWSTR pszExt, IPropertyStore *pPropStore); SHSTDAPI SHCreateDefaultPropertiesOp(IShellItem *psi, IFileOperation **ppFileOp); SHSTDAPI SHSetDefaultProperties(HWND hwnd, IShellItem *psi, DWORD dwFileOpFlags, IFileOperationProgressSink *pfops); #endif /***************************************************************************** * ICategoryProvider interface */ #ifndef __ICategoryProvider_INTERFACE_DEFINED__ #define __ICategoryProvider_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICategoryProvider, 0x9af64809, 0x5864, 0x4c26, 0xa7,0x20, 0xc1,0xf7,0x8c,0x08,0x6e,0xe3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9af64809-5864-4c26-a720-c1f78c086ee3") ICategoryProvider : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CanCategorizeOnSCID( const SHCOLUMNID *pscid) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultCategory( GUID *pguid, SHCOLUMNID *pscid) = 0; virtual HRESULT STDMETHODCALLTYPE GetCategoryForSCID( const SHCOLUMNID *pscid, GUID *pguid) = 0; virtual HRESULT STDMETHODCALLTYPE EnumCategories( IEnumGUID **penum) = 0; virtual HRESULT STDMETHODCALLTYPE GetCategoryName( const GUID *pguid, LPWSTR pszName, UINT cch) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCategory( const GUID *pguid, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICategoryProvider, 0x9af64809, 0x5864, 0x4c26, 0xa7,0x20, 0xc1,0xf7,0x8c,0x08,0x6e,0xe3) #endif #else typedef struct ICategoryProviderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICategoryProvider *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICategoryProvider *This); ULONG (STDMETHODCALLTYPE *Release)( ICategoryProvider *This); /*** ICategoryProvider methods ***/ HRESULT (STDMETHODCALLTYPE *CanCategorizeOnSCID)( ICategoryProvider *This, const SHCOLUMNID *pscid); HRESULT (STDMETHODCALLTYPE *GetDefaultCategory)( ICategoryProvider *This, GUID *pguid, SHCOLUMNID *pscid); HRESULT (STDMETHODCALLTYPE *GetCategoryForSCID)( ICategoryProvider *This, const SHCOLUMNID *pscid, GUID *pguid); HRESULT (STDMETHODCALLTYPE *EnumCategories)( ICategoryProvider *This, IEnumGUID **penum); HRESULT (STDMETHODCALLTYPE *GetCategoryName)( ICategoryProvider *This, const GUID *pguid, LPWSTR pszName, UINT cch); HRESULT (STDMETHODCALLTYPE *CreateCategory)( ICategoryProvider *This, const GUID *pguid, REFIID riid, void **ppv); END_INTERFACE } ICategoryProviderVtbl; interface ICategoryProvider { CONST_VTBL ICategoryProviderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICategoryProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICategoryProvider_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICategoryProvider_Release(This) (This)->lpVtbl->Release(This) /*** ICategoryProvider methods ***/ #define ICategoryProvider_CanCategorizeOnSCID(This,pscid) (This)->lpVtbl->CanCategorizeOnSCID(This,pscid) #define ICategoryProvider_GetDefaultCategory(This,pguid,pscid) (This)->lpVtbl->GetDefaultCategory(This,pguid,pscid) #define ICategoryProvider_GetCategoryForSCID(This,pscid,pguid) (This)->lpVtbl->GetCategoryForSCID(This,pscid,pguid) #define ICategoryProvider_EnumCategories(This,penum) (This)->lpVtbl->EnumCategories(This,penum) #define ICategoryProvider_GetCategoryName(This,pguid,pszName,cch) (This)->lpVtbl->GetCategoryName(This,pguid,pszName,cch) #define ICategoryProvider_CreateCategory(This,pguid,riid,ppv) (This)->lpVtbl->CreateCategory(This,pguid,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICategoryProvider_QueryInterface(ICategoryProvider* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICategoryProvider_AddRef(ICategoryProvider* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICategoryProvider_Release(ICategoryProvider* This) { return This->lpVtbl->Release(This); } /*** ICategoryProvider methods ***/ static FORCEINLINE HRESULT ICategoryProvider_CanCategorizeOnSCID(ICategoryProvider* This,const SHCOLUMNID *pscid) { return This->lpVtbl->CanCategorizeOnSCID(This,pscid); } static FORCEINLINE HRESULT ICategoryProvider_GetDefaultCategory(ICategoryProvider* This,GUID *pguid,SHCOLUMNID *pscid) { return This->lpVtbl->GetDefaultCategory(This,pguid,pscid); } static FORCEINLINE HRESULT ICategoryProvider_GetCategoryForSCID(ICategoryProvider* This,const SHCOLUMNID *pscid,GUID *pguid) { return This->lpVtbl->GetCategoryForSCID(This,pscid,pguid); } static FORCEINLINE HRESULT ICategoryProvider_EnumCategories(ICategoryProvider* This,IEnumGUID **penum) { return This->lpVtbl->EnumCategories(This,penum); } static FORCEINLINE HRESULT ICategoryProvider_GetCategoryName(ICategoryProvider* This,const GUID *pguid,LPWSTR pszName,UINT cch) { return This->lpVtbl->GetCategoryName(This,pguid,pszName,cch); } static FORCEINLINE HRESULT ICategoryProvider_CreateCategory(ICategoryProvider* This,const GUID *pguid,REFIID riid,void **ppv) { return This->lpVtbl->CreateCategory(This,pguid,riid,ppv); } #endif #endif #endif #endif /* __ICategoryProvider_INTERFACE_DEFINED__ */ typedef enum CATEGORYINFO_FLAGS { CATINFO_NORMAL = 0x0, CATINFO_COLLAPSED = 0x1, CATINFO_HIDDEN = 0x2, CATINFO_EXPANDED = 0x4, CATINFO_NOHEADER = 0x8, CATINFO_NOTCOLLAPSIBLE = 0x10, CATINFO_NOHEADERCOUNT = 0x20, CATINFO_SUBSETTED = 0x40 } CATEGORYINFO_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(CATEGORYINFO_FLAGS) typedef enum CATSORT_FLAGS { CATSORT_DEFAULT = 0x0, CATSORT_NAME = 0x1 } CATSORT_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(CATSORT_FLAGS) typedef struct CATEGORY_INFO { CATEGORYINFO_FLAGS cif; WCHAR wszName[260]; } CATEGORY_INFO; /***************************************************************************** * ICategorizer interface */ #ifndef __ICategorizer_INTERFACE_DEFINED__ #define __ICategorizer_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICategorizer, 0xa3b14589, 0x9174, 0x49a8, 0x89,0xa3, 0x06,0xa1,0xae,0x2b,0x9b,0xa7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a3b14589-9174-49a8-89a3-06a1ae2b9ba7") ICategorizer : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDescription( LPWSTR pszDesc, UINT cch) = 0; virtual HRESULT STDMETHODCALLTYPE GetCategory( UINT cidl, PCUITEMID_CHILD_ARRAY apidl, DWORD *rgCategoryIds) = 0; virtual HRESULT STDMETHODCALLTYPE GetCategoryInfo( DWORD dwCategoryId, CATEGORY_INFO *pci) = 0; virtual HRESULT STDMETHODCALLTYPE CompareCategory( CATSORT_FLAGS csfFlags, DWORD dwCategoryId1, DWORD dwCategoryId2) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICategorizer, 0xa3b14589, 0x9174, 0x49a8, 0x89,0xa3, 0x06,0xa1,0xae,0x2b,0x9b,0xa7) #endif #else typedef struct ICategorizerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICategorizer *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICategorizer *This); ULONG (STDMETHODCALLTYPE *Release)( ICategorizer *This); /*** ICategorizer methods ***/ HRESULT (STDMETHODCALLTYPE *GetDescription)( ICategorizer *This, LPWSTR pszDesc, UINT cch); HRESULT (STDMETHODCALLTYPE *GetCategory)( ICategorizer *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, DWORD *rgCategoryIds); HRESULT (STDMETHODCALLTYPE *GetCategoryInfo)( ICategorizer *This, DWORD dwCategoryId, CATEGORY_INFO *pci); HRESULT (STDMETHODCALLTYPE *CompareCategory)( ICategorizer *This, CATSORT_FLAGS csfFlags, DWORD dwCategoryId1, DWORD dwCategoryId2); END_INTERFACE } ICategorizerVtbl; interface ICategorizer { CONST_VTBL ICategorizerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICategorizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICategorizer_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICategorizer_Release(This) (This)->lpVtbl->Release(This) /*** ICategorizer methods ***/ #define ICategorizer_GetDescription(This,pszDesc,cch) (This)->lpVtbl->GetDescription(This,pszDesc,cch) #define ICategorizer_GetCategory(This,cidl,apidl,rgCategoryIds) (This)->lpVtbl->GetCategory(This,cidl,apidl,rgCategoryIds) #define ICategorizer_GetCategoryInfo(This,dwCategoryId,pci) (This)->lpVtbl->GetCategoryInfo(This,dwCategoryId,pci) #define ICategorizer_CompareCategory(This,csfFlags,dwCategoryId1,dwCategoryId2) (This)->lpVtbl->CompareCategory(This,csfFlags,dwCategoryId1,dwCategoryId2) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICategorizer_QueryInterface(ICategorizer* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICategorizer_AddRef(ICategorizer* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICategorizer_Release(ICategorizer* This) { return This->lpVtbl->Release(This); } /*** ICategorizer methods ***/ static FORCEINLINE HRESULT ICategorizer_GetDescription(ICategorizer* This,LPWSTR pszDesc,UINT cch) { return This->lpVtbl->GetDescription(This,pszDesc,cch); } static FORCEINLINE HRESULT ICategorizer_GetCategory(ICategorizer* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,DWORD *rgCategoryIds) { return This->lpVtbl->GetCategory(This,cidl,apidl,rgCategoryIds); } static FORCEINLINE HRESULT ICategorizer_GetCategoryInfo(ICategorizer* This,DWORD dwCategoryId,CATEGORY_INFO *pci) { return This->lpVtbl->GetCategoryInfo(This,dwCategoryId,pci); } static FORCEINLINE HRESULT ICategorizer_CompareCategory(ICategorizer* This,CATSORT_FLAGS csfFlags,DWORD dwCategoryId1,DWORD dwCategoryId2) { return This->lpVtbl->CompareCategory(This,csfFlags,dwCategoryId1,dwCategoryId2); } #endif #endif #endif #endif /* __ICategorizer_INTERFACE_DEFINED__ */ #include typedef struct SHDRAGIMAGE { SIZE sizeDragImage; POINT ptOffset; HBITMAP hbmpDragImage; COLORREF crColorKey; } SHDRAGIMAGE; typedef struct SHDRAGIMAGE *LPSHDRAGIMAGE; #include #define DI_GETDRAGIMAGE TEXT("ShellGetDragImage") /***************************************************************************** * IDropTargetHelper interface */ #ifndef __IDropTargetHelper_INTERFACE_DEFINED__ #define __IDropTargetHelper_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83,0x9a, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4657278b-411b-11d2-839a-00c04fd918d0") IDropTargetHelper : public IUnknown { virtual HRESULT STDMETHODCALLTYPE DragEnter( HWND hwndTarget, IDataObject *pDataObject, POINT *ppt, DWORD dwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE DragLeave( ) = 0; virtual HRESULT STDMETHODCALLTYPE DragOver( POINT *ppt, DWORD dwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE Drop( IDataObject *pDataObject, POINT *ppt, DWORD dwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE Show( WINBOOL fShow) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83,0x9a, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) #endif #else typedef struct IDropTargetHelperVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDropTargetHelper *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDropTargetHelper *This); ULONG (STDMETHODCALLTYPE *Release)( IDropTargetHelper *This); /*** IDropTargetHelper methods ***/ HRESULT (STDMETHODCALLTYPE *DragEnter)( IDropTargetHelper *This, HWND hwndTarget, IDataObject *pDataObject, POINT *ppt, DWORD dwEffect); HRESULT (STDMETHODCALLTYPE *DragLeave)( IDropTargetHelper *This); HRESULT (STDMETHODCALLTYPE *DragOver)( IDropTargetHelper *This, POINT *ppt, DWORD dwEffect); HRESULT (STDMETHODCALLTYPE *Drop)( IDropTargetHelper *This, IDataObject *pDataObject, POINT *ppt, DWORD dwEffect); HRESULT (STDMETHODCALLTYPE *Show)( IDropTargetHelper *This, WINBOOL fShow); END_INTERFACE } IDropTargetHelperVtbl; interface IDropTargetHelper { CONST_VTBL IDropTargetHelperVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDropTargetHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDropTargetHelper_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDropTargetHelper_Release(This) (This)->lpVtbl->Release(This) /*** IDropTargetHelper methods ***/ #define IDropTargetHelper_DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect) (This)->lpVtbl->DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect) #define IDropTargetHelper_DragLeave(This) (This)->lpVtbl->DragLeave(This) #define IDropTargetHelper_DragOver(This,ppt,dwEffect) (This)->lpVtbl->DragOver(This,ppt,dwEffect) #define IDropTargetHelper_Drop(This,pDataObject,ppt,dwEffect) (This)->lpVtbl->Drop(This,pDataObject,ppt,dwEffect) #define IDropTargetHelper_Show(This,fShow) (This)->lpVtbl->Show(This,fShow) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDropTargetHelper_QueryInterface(IDropTargetHelper* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDropTargetHelper_AddRef(IDropTargetHelper* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDropTargetHelper_Release(IDropTargetHelper* This) { return This->lpVtbl->Release(This); } /*** IDropTargetHelper methods ***/ static FORCEINLINE HRESULT IDropTargetHelper_DragEnter(IDropTargetHelper* This,HWND hwndTarget,IDataObject *pDataObject,POINT *ppt,DWORD dwEffect) { return This->lpVtbl->DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect); } static FORCEINLINE HRESULT IDropTargetHelper_DragLeave(IDropTargetHelper* This) { return This->lpVtbl->DragLeave(This); } static FORCEINLINE HRESULT IDropTargetHelper_DragOver(IDropTargetHelper* This,POINT *ppt,DWORD dwEffect) { return This->lpVtbl->DragOver(This,ppt,dwEffect); } static FORCEINLINE HRESULT IDropTargetHelper_Drop(IDropTargetHelper* This,IDataObject *pDataObject,POINT *ppt,DWORD dwEffect) { return This->lpVtbl->Drop(This,pDataObject,ppt,dwEffect); } static FORCEINLINE HRESULT IDropTargetHelper_Show(IDropTargetHelper* This,WINBOOL fShow) { return This->lpVtbl->Show(This,fShow); } #endif #endif #endif #endif /* __IDropTargetHelper_INTERFACE_DEFINED__ */ /***************************************************************************** * IDragSourceHelper interface */ #ifndef __IDragSourceHelper_INTERFACE_DEFINED__ #define __IDragSourceHelper_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83,0x9d, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("de5bf786-477a-11d2-839d-00c04fd918d0") IDragSourceHelper : public IUnknown { virtual HRESULT STDMETHODCALLTYPE InitializeFromBitmap( LPSHDRAGIMAGE pshdi, IDataObject *pDataObject) = 0; virtual HRESULT STDMETHODCALLTYPE InitializeFromWindow( HWND hwnd, POINT *ppt, IDataObject *pDataObject) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83,0x9d, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) #endif #else typedef struct IDragSourceHelperVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDragSourceHelper *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDragSourceHelper *This); ULONG (STDMETHODCALLTYPE *Release)( IDragSourceHelper *This); /*** IDragSourceHelper methods ***/ HRESULT (STDMETHODCALLTYPE *InitializeFromBitmap)( IDragSourceHelper *This, LPSHDRAGIMAGE pshdi, IDataObject *pDataObject); HRESULT (STDMETHODCALLTYPE *InitializeFromWindow)( IDragSourceHelper *This, HWND hwnd, POINT *ppt, IDataObject *pDataObject); END_INTERFACE } IDragSourceHelperVtbl; interface IDragSourceHelper { CONST_VTBL IDragSourceHelperVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDragSourceHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDragSourceHelper_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDragSourceHelper_Release(This) (This)->lpVtbl->Release(This) /*** IDragSourceHelper methods ***/ #define IDragSourceHelper_InitializeFromBitmap(This,pshdi,pDataObject) (This)->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject) #define IDragSourceHelper_InitializeFromWindow(This,hwnd,ppt,pDataObject) (This)->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDragSourceHelper_QueryInterface(IDragSourceHelper* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDragSourceHelper_AddRef(IDragSourceHelper* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDragSourceHelper_Release(IDragSourceHelper* This) { return This->lpVtbl->Release(This); } /*** IDragSourceHelper methods ***/ static FORCEINLINE HRESULT IDragSourceHelper_InitializeFromBitmap(IDragSourceHelper* This,LPSHDRAGIMAGE pshdi,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject); } static FORCEINLINE HRESULT IDragSourceHelper_InitializeFromWindow(IDragSourceHelper* This,HWND hwnd,POINT *ppt,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject); } #endif #endif #endif #endif /* __IDragSourceHelper_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA typedef enum DSH_FLAGS { DSH_ALLOWDROPDESCRIPTIONTEXT = 0x1 } DSH_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(DSH_FLAGS) /***************************************************************************** * IDragSourceHelper2 interface */ #ifndef __IDragSourceHelper2_INTERFACE_DEFINED__ #define __IDragSourceHelper2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDragSourceHelper2, 0x83e07d0d, 0x0c5f, 0x4163, 0xbf,0x1a, 0x60,0xb2,0x74,0x05,0x1e,0x40); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("83e07d0d-0c5f-4163-bf1a-60b274051e40") IDragSourceHelper2 : public IDragSourceHelper { virtual HRESULT STDMETHODCALLTYPE SetFlags( DWORD dwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDragSourceHelper2, 0x83e07d0d, 0x0c5f, 0x4163, 0xbf,0x1a, 0x60,0xb2,0x74,0x05,0x1e,0x40) #endif #else typedef struct IDragSourceHelper2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDragSourceHelper2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDragSourceHelper2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDragSourceHelper2 *This); /*** IDragSourceHelper methods ***/ HRESULT (STDMETHODCALLTYPE *InitializeFromBitmap)( IDragSourceHelper2 *This, LPSHDRAGIMAGE pshdi, IDataObject *pDataObject); HRESULT (STDMETHODCALLTYPE *InitializeFromWindow)( IDragSourceHelper2 *This, HWND hwnd, POINT *ppt, IDataObject *pDataObject); /*** IDragSourceHelper2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetFlags)( IDragSourceHelper2 *This, DWORD dwFlags); END_INTERFACE } IDragSourceHelper2Vtbl; interface IDragSourceHelper2 { CONST_VTBL IDragSourceHelper2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDragSourceHelper2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDragSourceHelper2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDragSourceHelper2_Release(This) (This)->lpVtbl->Release(This) /*** IDragSourceHelper methods ***/ #define IDragSourceHelper2_InitializeFromBitmap(This,pshdi,pDataObject) (This)->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject) #define IDragSourceHelper2_InitializeFromWindow(This,hwnd,ppt,pDataObject) (This)->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject) /*** IDragSourceHelper2 methods ***/ #define IDragSourceHelper2_SetFlags(This,dwFlags) (This)->lpVtbl->SetFlags(This,dwFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDragSourceHelper2_QueryInterface(IDragSourceHelper2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDragSourceHelper2_AddRef(IDragSourceHelper2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDragSourceHelper2_Release(IDragSourceHelper2* This) { return This->lpVtbl->Release(This); } /*** IDragSourceHelper methods ***/ static FORCEINLINE HRESULT IDragSourceHelper2_InitializeFromBitmap(IDragSourceHelper2* This,LPSHDRAGIMAGE pshdi,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject); } static FORCEINLINE HRESULT IDragSourceHelper2_InitializeFromWindow(IDragSourceHelper2* This,HWND hwnd,POINT *ppt,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject); } /*** IDragSourceHelper2 methods ***/ static FORCEINLINE HRESULT IDragSourceHelper2_SetFlags(IDragSourceHelper2* This,DWORD dwFlags) { return This->lpVtbl->SetFlags(This,dwFlags); } #endif #endif #endif #endif /* __IDragSourceHelper2_INTERFACE_DEFINED__ */ #endif #define IShellLink __MINGW_NAME_AW(IShellLink) typedef enum SLR_FLAGS { SLR_NO_UI = 0x1, SLR_ANY_MATCH = 0x2, SLR_UPDATE = 0x4, SLR_NOUPDATE = 0x8, SLR_NOSEARCH = 0x10, SLR_NOTRACK = 0x20, SLR_NOLINKINFO = 0x40, SLR_INVOKE_MSI = 0x80, SLR_NO_UI_WITH_MSG_PUMP = 0x101, SLR_OFFER_DELETE_WITHOUT_FILE = 0x200, SLR_KNOWNFOLDER = 0x400, SLR_MACHINE_IN_LOCAL_TARGET = 0x800, SLR_UPDATE_MACHINE_AND_SID = 0x1000 } SLR_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(SLR_FLAGS) typedef enum SLGP_FLAGS { SLGP_SHORTPATH = 0x1, SLGP_UNCPRIORITY = 0x2, SLGP_RAWPATH = 0x4, SLGP_RELATIVEPRIORITY = 0x8 } SLGP_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(SLGP_FLAGS) /***************************************************************************** * IShellLinkA interface */ #ifndef __IShellLinkA_INTERFACE_DEFINED__ #define __IShellLinkA_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellLinkA, 0x000214ee, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214ee-0000-0000-c000-000000000046") IShellLinkA : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPath( LPSTR pszFile, int cch, WIN32_FIND_DATAA *pfd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( PIDLIST_ABSOLUTE *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE SetIDList( PCIDLIST_ABSOLUTE pidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetDescription( LPSTR pszName, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetDescription( LPCSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory( LPSTR pszDir, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetWorkingDirectory( LPCSTR pszDir) = 0; virtual HRESULT STDMETHODCALLTYPE GetArguments( LPSTR pszArgs, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetArguments( LPCSTR pszArgs) = 0; virtual HRESULT STDMETHODCALLTYPE GetHotkey( WORD *pwHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE SetHotkey( WORD wHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE GetShowCmd( int *piShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE SetShowCmd( int iShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconLocation( LPSTR pszIconPath, int cch, int *piIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconLocation( LPCSTR pszIconPath, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetRelativePath( LPCSTR pszPathRel, DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE Resolve( HWND hwnd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetPath( LPCSTR pszFile) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLinkA, 0x000214ee, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellLinkAVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLinkA *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLinkA *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLinkA *This); /*** IShellLinkA methods ***/ HRESULT (STDMETHODCALLTYPE *GetPath)( IShellLinkA *This, LPSTR pszFile, int cch, WIN32_FIND_DATAA *pfd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *GetIDList)( IShellLinkA *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *SetIDList)( IShellLinkA *This, PCIDLIST_ABSOLUTE pidl); HRESULT (STDMETHODCALLTYPE *GetDescription)( IShellLinkA *This, LPSTR pszName, int cch); HRESULT (STDMETHODCALLTYPE *SetDescription)( IShellLinkA *This, LPCSTR pszName); HRESULT (STDMETHODCALLTYPE *GetWorkingDirectory)( IShellLinkA *This, LPSTR pszDir, int cch); HRESULT (STDMETHODCALLTYPE *SetWorkingDirectory)( IShellLinkA *This, LPCSTR pszDir); HRESULT (STDMETHODCALLTYPE *GetArguments)( IShellLinkA *This, LPSTR pszArgs, int cch); HRESULT (STDMETHODCALLTYPE *SetArguments)( IShellLinkA *This, LPCSTR pszArgs); HRESULT (STDMETHODCALLTYPE *GetHotkey)( IShellLinkA *This, WORD *pwHotkey); HRESULT (STDMETHODCALLTYPE *SetHotkey)( IShellLinkA *This, WORD wHotkey); HRESULT (STDMETHODCALLTYPE *GetShowCmd)( IShellLinkA *This, int *piShowCmd); HRESULT (STDMETHODCALLTYPE *SetShowCmd)( IShellLinkA *This, int iShowCmd); HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IShellLinkA *This, LPSTR pszIconPath, int cch, int *piIcon); HRESULT (STDMETHODCALLTYPE *SetIconLocation)( IShellLinkA *This, LPCSTR pszIconPath, int iIcon); HRESULT (STDMETHODCALLTYPE *SetRelativePath)( IShellLinkA *This, LPCSTR pszPathRel, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *Resolve)( IShellLinkA *This, HWND hwnd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *SetPath)( IShellLinkA *This, LPCSTR pszFile); END_INTERFACE } IShellLinkAVtbl; interface IShellLinkA { CONST_VTBL IShellLinkAVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLinkA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLinkA_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLinkA_Release(This) (This)->lpVtbl->Release(This) /*** IShellLinkA methods ***/ #define IShellLinkA_GetPath(This,pszFile,cch,pfd,fFlags) (This)->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags) #define IShellLinkA_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #define IShellLinkA_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) #define IShellLinkA_GetDescription(This,pszName,cch) (This)->lpVtbl->GetDescription(This,pszName,cch) #define IShellLinkA_SetDescription(This,pszName) (This)->lpVtbl->SetDescription(This,pszName) #define IShellLinkA_GetWorkingDirectory(This,pszDir,cch) (This)->lpVtbl->GetWorkingDirectory(This,pszDir,cch) #define IShellLinkA_SetWorkingDirectory(This,pszDir) (This)->lpVtbl->SetWorkingDirectory(This,pszDir) #define IShellLinkA_GetArguments(This,pszArgs,cch) (This)->lpVtbl->GetArguments(This,pszArgs,cch) #define IShellLinkA_SetArguments(This,pszArgs) (This)->lpVtbl->SetArguments(This,pszArgs) #define IShellLinkA_GetHotkey(This,pwHotkey) (This)->lpVtbl->GetHotkey(This,pwHotkey) #define IShellLinkA_SetHotkey(This,wHotkey) (This)->lpVtbl->SetHotkey(This,wHotkey) #define IShellLinkA_GetShowCmd(This,piShowCmd) (This)->lpVtbl->GetShowCmd(This,piShowCmd) #define IShellLinkA_SetShowCmd(This,iShowCmd) (This)->lpVtbl->SetShowCmd(This,iShowCmd) #define IShellLinkA_GetIconLocation(This,pszIconPath,cch,piIcon) (This)->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon) #define IShellLinkA_SetIconLocation(This,pszIconPath,iIcon) (This)->lpVtbl->SetIconLocation(This,pszIconPath,iIcon) #define IShellLinkA_SetRelativePath(This,pszPathRel,dwReserved) (This)->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved) #define IShellLinkA_Resolve(This,hwnd,fFlags) (This)->lpVtbl->Resolve(This,hwnd,fFlags) #define IShellLinkA_SetPath(This,pszFile) (This)->lpVtbl->SetPath(This,pszFile) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellLinkA_QueryInterface(IShellLinkA* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellLinkA_AddRef(IShellLinkA* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellLinkA_Release(IShellLinkA* This) { return This->lpVtbl->Release(This); } /*** IShellLinkA methods ***/ static FORCEINLINE HRESULT IShellLinkA_GetPath(IShellLinkA* This,LPSTR pszFile,int cch,WIN32_FIND_DATAA *pfd,DWORD fFlags) { return This->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags); } static FORCEINLINE HRESULT IShellLinkA_GetIDList(IShellLinkA* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } static FORCEINLINE HRESULT IShellLinkA_SetIDList(IShellLinkA* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->SetIDList(This,pidl); } static FORCEINLINE HRESULT IShellLinkA_GetDescription(IShellLinkA* This,LPSTR pszName,int cch) { return This->lpVtbl->GetDescription(This,pszName,cch); } static FORCEINLINE HRESULT IShellLinkA_SetDescription(IShellLinkA* This,LPCSTR pszName) { return This->lpVtbl->SetDescription(This,pszName); } static FORCEINLINE HRESULT IShellLinkA_GetWorkingDirectory(IShellLinkA* This,LPSTR pszDir,int cch) { return This->lpVtbl->GetWorkingDirectory(This,pszDir,cch); } static FORCEINLINE HRESULT IShellLinkA_SetWorkingDirectory(IShellLinkA* This,LPCSTR pszDir) { return This->lpVtbl->SetWorkingDirectory(This,pszDir); } static FORCEINLINE HRESULT IShellLinkA_GetArguments(IShellLinkA* This,LPSTR pszArgs,int cch) { return This->lpVtbl->GetArguments(This,pszArgs,cch); } static FORCEINLINE HRESULT IShellLinkA_SetArguments(IShellLinkA* This,LPCSTR pszArgs) { return This->lpVtbl->SetArguments(This,pszArgs); } static FORCEINLINE HRESULT IShellLinkA_GetHotkey(IShellLinkA* This,WORD *pwHotkey) { return This->lpVtbl->GetHotkey(This,pwHotkey); } static FORCEINLINE HRESULT IShellLinkA_SetHotkey(IShellLinkA* This,WORD wHotkey) { return This->lpVtbl->SetHotkey(This,wHotkey); } static FORCEINLINE HRESULT IShellLinkA_GetShowCmd(IShellLinkA* This,int *piShowCmd) { return This->lpVtbl->GetShowCmd(This,piShowCmd); } static FORCEINLINE HRESULT IShellLinkA_SetShowCmd(IShellLinkA* This,int iShowCmd) { return This->lpVtbl->SetShowCmd(This,iShowCmd); } static FORCEINLINE HRESULT IShellLinkA_GetIconLocation(IShellLinkA* This,LPSTR pszIconPath,int cch,int *piIcon) { return This->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon); } static FORCEINLINE HRESULT IShellLinkA_SetIconLocation(IShellLinkA* This,LPCSTR pszIconPath,int iIcon) { return This->lpVtbl->SetIconLocation(This,pszIconPath,iIcon); } static FORCEINLINE HRESULT IShellLinkA_SetRelativePath(IShellLinkA* This,LPCSTR pszPathRel,DWORD dwReserved) { return This->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved); } static FORCEINLINE HRESULT IShellLinkA_Resolve(IShellLinkA* This,HWND hwnd,DWORD fFlags) { return This->lpVtbl->Resolve(This,hwnd,fFlags); } static FORCEINLINE HRESULT IShellLinkA_SetPath(IShellLinkA* This,LPCSTR pszFile) { return This->lpVtbl->SetPath(This,pszFile); } #endif #endif #endif #endif /* __IShellLinkA_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellLinkW interface */ #ifndef __IShellLinkW_INTERFACE_DEFINED__ #define __IShellLinkW_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellLinkW, 0x000214f9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f9-0000-0000-c000-000000000046") IShellLinkW : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPath( LPWSTR pszFile, int cch, WIN32_FIND_DATAW *pfd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( PIDLIST_ABSOLUTE *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE SetIDList( PCIDLIST_ABSOLUTE pidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetDescription( LPWSTR pszName, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetDescription( LPCWSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory( LPWSTR pszDir, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetWorkingDirectory( LPCWSTR pszDir) = 0; virtual HRESULT STDMETHODCALLTYPE GetArguments( LPWSTR pszArgs, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetArguments( LPCWSTR pszArgs) = 0; virtual HRESULT STDMETHODCALLTYPE GetHotkey( WORD *pwHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE SetHotkey( WORD wHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE GetShowCmd( int *piShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE SetShowCmd( int iShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconLocation( LPWSTR pszIconPath, int cch, int *piIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconLocation( LPCWSTR pszIconPath, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetRelativePath( LPCWSTR pszPathRel, DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE Resolve( HWND hwnd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetPath( LPCWSTR pszFile) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLinkW, 0x000214f9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellLinkWVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLinkW *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLinkW *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLinkW *This); /*** IShellLinkW methods ***/ HRESULT (STDMETHODCALLTYPE *GetPath)( IShellLinkW *This, LPWSTR pszFile, int cch, WIN32_FIND_DATAW *pfd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *GetIDList)( IShellLinkW *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *SetIDList)( IShellLinkW *This, PCIDLIST_ABSOLUTE pidl); HRESULT (STDMETHODCALLTYPE *GetDescription)( IShellLinkW *This, LPWSTR pszName, int cch); HRESULT (STDMETHODCALLTYPE *SetDescription)( IShellLinkW *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetWorkingDirectory)( IShellLinkW *This, LPWSTR pszDir, int cch); HRESULT (STDMETHODCALLTYPE *SetWorkingDirectory)( IShellLinkW *This, LPCWSTR pszDir); HRESULT (STDMETHODCALLTYPE *GetArguments)( IShellLinkW *This, LPWSTR pszArgs, int cch); HRESULT (STDMETHODCALLTYPE *SetArguments)( IShellLinkW *This, LPCWSTR pszArgs); HRESULT (STDMETHODCALLTYPE *GetHotkey)( IShellLinkW *This, WORD *pwHotkey); HRESULT (STDMETHODCALLTYPE *SetHotkey)( IShellLinkW *This, WORD wHotkey); HRESULT (STDMETHODCALLTYPE *GetShowCmd)( IShellLinkW *This, int *piShowCmd); HRESULT (STDMETHODCALLTYPE *SetShowCmd)( IShellLinkW *This, int iShowCmd); HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IShellLinkW *This, LPWSTR pszIconPath, int cch, int *piIcon); HRESULT (STDMETHODCALLTYPE *SetIconLocation)( IShellLinkW *This, LPCWSTR pszIconPath, int iIcon); HRESULT (STDMETHODCALLTYPE *SetRelativePath)( IShellLinkW *This, LPCWSTR pszPathRel, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *Resolve)( IShellLinkW *This, HWND hwnd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *SetPath)( IShellLinkW *This, LPCWSTR pszFile); END_INTERFACE } IShellLinkWVtbl; interface IShellLinkW { CONST_VTBL IShellLinkWVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLinkW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLinkW_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLinkW_Release(This) (This)->lpVtbl->Release(This) /*** IShellLinkW methods ***/ #define IShellLinkW_GetPath(This,pszFile,cch,pfd,fFlags) (This)->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags) #define IShellLinkW_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #define IShellLinkW_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) #define IShellLinkW_GetDescription(This,pszName,cch) (This)->lpVtbl->GetDescription(This,pszName,cch) #define IShellLinkW_SetDescription(This,pszName) (This)->lpVtbl->SetDescription(This,pszName) #define IShellLinkW_GetWorkingDirectory(This,pszDir,cch) (This)->lpVtbl->GetWorkingDirectory(This,pszDir,cch) #define IShellLinkW_SetWorkingDirectory(This,pszDir) (This)->lpVtbl->SetWorkingDirectory(This,pszDir) #define IShellLinkW_GetArguments(This,pszArgs,cch) (This)->lpVtbl->GetArguments(This,pszArgs,cch) #define IShellLinkW_SetArguments(This,pszArgs) (This)->lpVtbl->SetArguments(This,pszArgs) #define IShellLinkW_GetHotkey(This,pwHotkey) (This)->lpVtbl->GetHotkey(This,pwHotkey) #define IShellLinkW_SetHotkey(This,wHotkey) (This)->lpVtbl->SetHotkey(This,wHotkey) #define IShellLinkW_GetShowCmd(This,piShowCmd) (This)->lpVtbl->GetShowCmd(This,piShowCmd) #define IShellLinkW_SetShowCmd(This,iShowCmd) (This)->lpVtbl->SetShowCmd(This,iShowCmd) #define IShellLinkW_GetIconLocation(This,pszIconPath,cch,piIcon) (This)->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon) #define IShellLinkW_SetIconLocation(This,pszIconPath,iIcon) (This)->lpVtbl->SetIconLocation(This,pszIconPath,iIcon) #define IShellLinkW_SetRelativePath(This,pszPathRel,dwReserved) (This)->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved) #define IShellLinkW_Resolve(This,hwnd,fFlags) (This)->lpVtbl->Resolve(This,hwnd,fFlags) #define IShellLinkW_SetPath(This,pszFile) (This)->lpVtbl->SetPath(This,pszFile) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellLinkW_QueryInterface(IShellLinkW* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellLinkW_AddRef(IShellLinkW* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellLinkW_Release(IShellLinkW* This) { return This->lpVtbl->Release(This); } /*** IShellLinkW methods ***/ static FORCEINLINE HRESULT IShellLinkW_GetPath(IShellLinkW* This,LPWSTR pszFile,int cch,WIN32_FIND_DATAW *pfd,DWORD fFlags) { return This->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags); } static FORCEINLINE HRESULT IShellLinkW_GetIDList(IShellLinkW* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } static FORCEINLINE HRESULT IShellLinkW_SetIDList(IShellLinkW* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->SetIDList(This,pidl); } static FORCEINLINE HRESULT IShellLinkW_GetDescription(IShellLinkW* This,LPWSTR pszName,int cch) { return This->lpVtbl->GetDescription(This,pszName,cch); } static FORCEINLINE HRESULT IShellLinkW_SetDescription(IShellLinkW* This,LPCWSTR pszName) { return This->lpVtbl->SetDescription(This,pszName); } static FORCEINLINE HRESULT IShellLinkW_GetWorkingDirectory(IShellLinkW* This,LPWSTR pszDir,int cch) { return This->lpVtbl->GetWorkingDirectory(This,pszDir,cch); } static FORCEINLINE HRESULT IShellLinkW_SetWorkingDirectory(IShellLinkW* This,LPCWSTR pszDir) { return This->lpVtbl->SetWorkingDirectory(This,pszDir); } static FORCEINLINE HRESULT IShellLinkW_GetArguments(IShellLinkW* This,LPWSTR pszArgs,int cch) { return This->lpVtbl->GetArguments(This,pszArgs,cch); } static FORCEINLINE HRESULT IShellLinkW_SetArguments(IShellLinkW* This,LPCWSTR pszArgs) { return This->lpVtbl->SetArguments(This,pszArgs); } static FORCEINLINE HRESULT IShellLinkW_GetHotkey(IShellLinkW* This,WORD *pwHotkey) { return This->lpVtbl->GetHotkey(This,pwHotkey); } static FORCEINLINE HRESULT IShellLinkW_SetHotkey(IShellLinkW* This,WORD wHotkey) { return This->lpVtbl->SetHotkey(This,wHotkey); } static FORCEINLINE HRESULT IShellLinkW_GetShowCmd(IShellLinkW* This,int *piShowCmd) { return This->lpVtbl->GetShowCmd(This,piShowCmd); } static FORCEINLINE HRESULT IShellLinkW_SetShowCmd(IShellLinkW* This,int iShowCmd) { return This->lpVtbl->SetShowCmd(This,iShowCmd); } static FORCEINLINE HRESULT IShellLinkW_GetIconLocation(IShellLinkW* This,LPWSTR pszIconPath,int cch,int *piIcon) { return This->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon); } static FORCEINLINE HRESULT IShellLinkW_SetIconLocation(IShellLinkW* This,LPCWSTR pszIconPath,int iIcon) { return This->lpVtbl->SetIconLocation(This,pszIconPath,iIcon); } static FORCEINLINE HRESULT IShellLinkW_SetRelativePath(IShellLinkW* This,LPCWSTR pszPathRel,DWORD dwReserved) { return This->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved); } static FORCEINLINE HRESULT IShellLinkW_Resolve(IShellLinkW* This,HWND hwnd,DWORD fFlags) { return This->lpVtbl->Resolve(This,hwnd,fFlags); } static FORCEINLINE HRESULT IShellLinkW_SetPath(IShellLinkW* This,LPCWSTR pszFile) { return This->lpVtbl->SetPath(This,pszFile); } #endif #endif #endif #endif /* __IShellLinkW_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellLinkDataList interface */ #ifndef __IShellLinkDataList_INTERFACE_DEFINED__ #define __IShellLinkDataList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellLinkDataList, 0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9,0x2f, 0x00,0xa0,0xc9,0x03,0x12,0xe1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("45e2b4ae-b1c3-11d0-b92f-00a0c90312e1") IShellLinkDataList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddDataBlock( void *pDataBlock) = 0; virtual HRESULT STDMETHODCALLTYPE CopyDataBlock( DWORD dwSig, void **ppDataBlock) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveDataBlock( DWORD dwSig) = 0; virtual HRESULT STDMETHODCALLTYPE GetFlags( DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetFlags( DWORD dwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLinkDataList, 0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9,0x2f, 0x00,0xa0,0xc9,0x03,0x12,0xe1) #endif #else typedef struct IShellLinkDataListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLinkDataList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLinkDataList *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLinkDataList *This); /*** IShellLinkDataList methods ***/ HRESULT (STDMETHODCALLTYPE *AddDataBlock)( IShellLinkDataList *This, void *pDataBlock); HRESULT (STDMETHODCALLTYPE *CopyDataBlock)( IShellLinkDataList *This, DWORD dwSig, void **ppDataBlock); HRESULT (STDMETHODCALLTYPE *RemoveDataBlock)( IShellLinkDataList *This, DWORD dwSig); HRESULT (STDMETHODCALLTYPE *GetFlags)( IShellLinkDataList *This, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *SetFlags)( IShellLinkDataList *This, DWORD dwFlags); END_INTERFACE } IShellLinkDataListVtbl; interface IShellLinkDataList { CONST_VTBL IShellLinkDataListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLinkDataList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLinkDataList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLinkDataList_Release(This) (This)->lpVtbl->Release(This) /*** IShellLinkDataList methods ***/ #define IShellLinkDataList_AddDataBlock(This,pDataBlock) (This)->lpVtbl->AddDataBlock(This,pDataBlock) #define IShellLinkDataList_CopyDataBlock(This,dwSig,ppDataBlock) (This)->lpVtbl->CopyDataBlock(This,dwSig,ppDataBlock) #define IShellLinkDataList_RemoveDataBlock(This,dwSig) (This)->lpVtbl->RemoveDataBlock(This,dwSig) #define IShellLinkDataList_GetFlags(This,pdwFlags) (This)->lpVtbl->GetFlags(This,pdwFlags) #define IShellLinkDataList_SetFlags(This,dwFlags) (This)->lpVtbl->SetFlags(This,dwFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellLinkDataList_QueryInterface(IShellLinkDataList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellLinkDataList_AddRef(IShellLinkDataList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellLinkDataList_Release(IShellLinkDataList* This) { return This->lpVtbl->Release(This); } /*** IShellLinkDataList methods ***/ static FORCEINLINE HRESULT IShellLinkDataList_AddDataBlock(IShellLinkDataList* This,void *pDataBlock) { return This->lpVtbl->AddDataBlock(This,pDataBlock); } static FORCEINLINE HRESULT IShellLinkDataList_CopyDataBlock(IShellLinkDataList* This,DWORD dwSig,void **ppDataBlock) { return This->lpVtbl->CopyDataBlock(This,dwSig,ppDataBlock); } static FORCEINLINE HRESULT IShellLinkDataList_RemoveDataBlock(IShellLinkDataList* This,DWORD dwSig) { return This->lpVtbl->RemoveDataBlock(This,dwSig); } static FORCEINLINE HRESULT IShellLinkDataList_GetFlags(IShellLinkDataList* This,DWORD *pdwFlags) { return This->lpVtbl->GetFlags(This,pdwFlags); } static FORCEINLINE HRESULT IShellLinkDataList_SetFlags(IShellLinkDataList* This,DWORD dwFlags) { return This->lpVtbl->SetFlags(This,dwFlags); } #endif #endif #endif #endif /* __IShellLinkDataList_INTERFACE_DEFINED__ */ /***************************************************************************** * IResolveShellLink interface */ #ifndef __IResolveShellLink_INTERFACE_DEFINED__ #define __IResolveShellLink_INTERFACE_DEFINED__ DEFINE_GUID(IID_IResolveShellLink, 0x5cd52983, 0x9449, 0x11d2, 0x96,0x3a, 0x00,0xc0,0x4f,0x79,0xad,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5cd52983-9449-11d2-963a-00c04f79adf0") IResolveShellLink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ResolveShellLink( IUnknown *punkLink, HWND hwnd, DWORD fFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IResolveShellLink, 0x5cd52983, 0x9449, 0x11d2, 0x96,0x3a, 0x00,0xc0,0x4f,0x79,0xad,0xf0) #endif #else typedef struct IResolveShellLinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IResolveShellLink *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IResolveShellLink *This); ULONG (STDMETHODCALLTYPE *Release)( IResolveShellLink *This); /*** IResolveShellLink methods ***/ HRESULT (STDMETHODCALLTYPE *ResolveShellLink)( IResolveShellLink *This, IUnknown *punkLink, HWND hwnd, DWORD fFlags); END_INTERFACE } IResolveShellLinkVtbl; interface IResolveShellLink { CONST_VTBL IResolveShellLinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IResolveShellLink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IResolveShellLink_AddRef(This) (This)->lpVtbl->AddRef(This) #define IResolveShellLink_Release(This) (This)->lpVtbl->Release(This) /*** IResolveShellLink methods ***/ #define IResolveShellLink_ResolveShellLink(This,punkLink,hwnd,fFlags) (This)->lpVtbl->ResolveShellLink(This,punkLink,hwnd,fFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IResolveShellLink_QueryInterface(IResolveShellLink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IResolveShellLink_AddRef(IResolveShellLink* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IResolveShellLink_Release(IResolveShellLink* This) { return This->lpVtbl->Release(This); } /*** IResolveShellLink methods ***/ static FORCEINLINE HRESULT IResolveShellLink_ResolveShellLink(IResolveShellLink* This,IUnknown *punkLink,HWND hwnd,DWORD fFlags) { return This->lpVtbl->ResolveShellLink(This,punkLink,hwnd,fFlags); } #endif #endif #endif #endif /* __IResolveShellLink_INTERFACE_DEFINED__ */ /***************************************************************************** * IActionProgressDialog interface */ #ifndef __IActionProgressDialog_INTERFACE_DEFINED__ #define __IActionProgressDialog_INTERFACE_DEFINED__ enum _SPINITF { SPINITF_NORMAL = 0x0, SPINITF_MODAL = 0x1, SPINITF_NOMINIMIZE = 0x8 }; typedef DWORD SPINITF; DEFINE_GUID(IID_IActionProgressDialog, 0x49ff1172, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("49ff1172-eadc-446d-9285-156453a6431c") IActionProgressDialog : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( SPINITF flags, LPCWSTR pszTitle, LPCWSTR pszCancel) = 0; virtual HRESULT STDMETHODCALLTYPE Stop( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IActionProgressDialog, 0x49ff1172, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c) #endif #else typedef struct IActionProgressDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IActionProgressDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IActionProgressDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IActionProgressDialog *This); /*** IActionProgressDialog methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IActionProgressDialog *This, SPINITF flags, LPCWSTR pszTitle, LPCWSTR pszCancel); HRESULT (STDMETHODCALLTYPE *Stop)( IActionProgressDialog *This); END_INTERFACE } IActionProgressDialogVtbl; interface IActionProgressDialog { CONST_VTBL IActionProgressDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IActionProgressDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IActionProgressDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IActionProgressDialog_Release(This) (This)->lpVtbl->Release(This) /*** IActionProgressDialog methods ***/ #define IActionProgressDialog_Initialize(This,flags,pszTitle,pszCancel) (This)->lpVtbl->Initialize(This,flags,pszTitle,pszCancel) #define IActionProgressDialog_Stop(This) (This)->lpVtbl->Stop(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IActionProgressDialog_QueryInterface(IActionProgressDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IActionProgressDialog_AddRef(IActionProgressDialog* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IActionProgressDialog_Release(IActionProgressDialog* This) { return This->lpVtbl->Release(This); } /*** IActionProgressDialog methods ***/ static FORCEINLINE HRESULT IActionProgressDialog_Initialize(IActionProgressDialog* This,SPINITF flags,LPCWSTR pszTitle,LPCWSTR pszCancel) { return This->lpVtbl->Initialize(This,flags,pszTitle,pszCancel); } static FORCEINLINE HRESULT IActionProgressDialog_Stop(IActionProgressDialog* This) { return This->lpVtbl->Stop(This); } #endif #endif #endif #endif /* __IActionProgressDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IHWEventHandler interface */ #ifndef __IHWEventHandler_INTERFACE_DEFINED__ #define __IHWEventHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IHWEventHandler, 0xc1fb73d0, 0xec3a, 0x4ba2, 0xb5,0x12, 0x8c,0xdb,0x91,0x87,0xb6,0xd1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c1fb73d0-ec3a-4ba2-b512-8cdb9187b6d1") IHWEventHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( LPCWSTR pszParams) = 0; virtual HRESULT STDMETHODCALLTYPE HandleEvent( LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType) = 0; virtual HRESULT STDMETHODCALLTYPE HandleEventWithContent( LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType, LPCWSTR pszContentTypeHandler, IDataObject *pdataobject) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IHWEventHandler, 0xc1fb73d0, 0xec3a, 0x4ba2, 0xb5,0x12, 0x8c,0xdb,0x91,0x87,0xb6,0xd1) #endif #else typedef struct IHWEventHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IHWEventHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IHWEventHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IHWEventHandler *This); /*** IHWEventHandler methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IHWEventHandler *This, LPCWSTR pszParams); HRESULT (STDMETHODCALLTYPE *HandleEvent)( IHWEventHandler *This, LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType); HRESULT (STDMETHODCALLTYPE *HandleEventWithContent)( IHWEventHandler *This, LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType, LPCWSTR pszContentTypeHandler, IDataObject *pdataobject); END_INTERFACE } IHWEventHandlerVtbl; interface IHWEventHandler { CONST_VTBL IHWEventHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IHWEventHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IHWEventHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IHWEventHandler_Release(This) (This)->lpVtbl->Release(This) /*** IHWEventHandler methods ***/ #define IHWEventHandler_Initialize(This,pszParams) (This)->lpVtbl->Initialize(This,pszParams) #define IHWEventHandler_HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) (This)->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) #define IHWEventHandler_HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) (This)->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IHWEventHandler_QueryInterface(IHWEventHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IHWEventHandler_AddRef(IHWEventHandler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IHWEventHandler_Release(IHWEventHandler* This) { return This->lpVtbl->Release(This); } /*** IHWEventHandler methods ***/ static FORCEINLINE HRESULT IHWEventHandler_Initialize(IHWEventHandler* This,LPCWSTR pszParams) { return This->lpVtbl->Initialize(This,pszParams); } static FORCEINLINE HRESULT IHWEventHandler_HandleEvent(IHWEventHandler* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType) { return This->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType); } static FORCEINLINE HRESULT IHWEventHandler_HandleEventWithContent(IHWEventHandler* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType,LPCWSTR pszContentTypeHandler,IDataObject *pdataobject) { return This->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject); } #endif #endif #endif #endif /* __IHWEventHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * IHWEventHandler2 interface */ #ifndef __IHWEventHandler2_INTERFACE_DEFINED__ #define __IHWEventHandler2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IHWEventHandler2, 0xcfcc809f, 0x295d, 0x42e8, 0x9f,0xfc, 0x42,0x4b,0x33,0xc4,0x87,0xe6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cfcc809f-295d-42e8-9ffc-424b33c487e6") IHWEventHandler2 : public IHWEventHandler { virtual HRESULT STDMETHODCALLTYPE HandleEventWithHWND( LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType, HWND hwndOwner) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IHWEventHandler2, 0xcfcc809f, 0x295d, 0x42e8, 0x9f,0xfc, 0x42,0x4b,0x33,0xc4,0x87,0xe6) #endif #else typedef struct IHWEventHandler2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IHWEventHandler2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IHWEventHandler2 *This); ULONG (STDMETHODCALLTYPE *Release)( IHWEventHandler2 *This); /*** IHWEventHandler methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IHWEventHandler2 *This, LPCWSTR pszParams); HRESULT (STDMETHODCALLTYPE *HandleEvent)( IHWEventHandler2 *This, LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType); HRESULT (STDMETHODCALLTYPE *HandleEventWithContent)( IHWEventHandler2 *This, LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType, LPCWSTR pszContentTypeHandler, IDataObject *pdataobject); /*** IHWEventHandler2 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleEventWithHWND)( IHWEventHandler2 *This, LPCWSTR pszDeviceID, LPCWSTR pszAltDeviceID, LPCWSTR pszEventType, HWND hwndOwner); END_INTERFACE } IHWEventHandler2Vtbl; interface IHWEventHandler2 { CONST_VTBL IHWEventHandler2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IHWEventHandler2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IHWEventHandler2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IHWEventHandler2_Release(This) (This)->lpVtbl->Release(This) /*** IHWEventHandler methods ***/ #define IHWEventHandler2_Initialize(This,pszParams) (This)->lpVtbl->Initialize(This,pszParams) #define IHWEventHandler2_HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) (This)->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) #define IHWEventHandler2_HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) (This)->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) /*** IHWEventHandler2 methods ***/ #define IHWEventHandler2_HandleEventWithHWND(This,pszDeviceID,pszAltDeviceID,pszEventType,hwndOwner) (This)->lpVtbl->HandleEventWithHWND(This,pszDeviceID,pszAltDeviceID,pszEventType,hwndOwner) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IHWEventHandler2_QueryInterface(IHWEventHandler2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IHWEventHandler2_AddRef(IHWEventHandler2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IHWEventHandler2_Release(IHWEventHandler2* This) { return This->lpVtbl->Release(This); } /*** IHWEventHandler methods ***/ static FORCEINLINE HRESULT IHWEventHandler2_Initialize(IHWEventHandler2* This,LPCWSTR pszParams) { return This->lpVtbl->Initialize(This,pszParams); } static FORCEINLINE HRESULT IHWEventHandler2_HandleEvent(IHWEventHandler2* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType) { return This->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType); } static FORCEINLINE HRESULT IHWEventHandler2_HandleEventWithContent(IHWEventHandler2* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType,LPCWSTR pszContentTypeHandler,IDataObject *pdataobject) { return This->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject); } /*** IHWEventHandler2 methods ***/ static FORCEINLINE HRESULT IHWEventHandler2_HandleEventWithHWND(IHWEventHandler2* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType,HWND hwndOwner) { return This->lpVtbl->HandleEventWithHWND(This,pszDeviceID,pszAltDeviceID,pszEventType,hwndOwner); } #endif #endif #endif #endif /* __IHWEventHandler2_INTERFACE_DEFINED__ */ #define ARCONTENT_AUTORUNINF 0x00000002 #define ARCONTENT_AUDIOCD 0x00000004 #define ARCONTENT_DVDMOVIE 0x00000008 #define ARCONTENT_BLANKCD 0x00000010 #define ARCONTENT_BLANKDVD 0x00000020 #define ARCONTENT_UNKNOWNCONTENT 0x00000040 #define ARCONTENT_AUTOPLAYPIX 0x00000080 #define ARCONTENT_AUTOPLAYMUSIC 0x00000100 #define ARCONTENT_AUTOPLAYVIDEO 0x00000200 #if NTDDI_VERSION >= NTDDI_VISTA #define ARCONTENT_VCD 0x00000400 #define ARCONTENT_SVCD 0x00000800 #define ARCONTENT_DVDAUDIO 0x00001000 #define ARCONTENT_BLANKBD 0x00002000 #define ARCONTENT_BLURAY 0x00004000 #define ARCONTENT_CAMERASTORAGE 0x00008000 #define ARCONTENT_CUSTOMEVENT 0x00010000 #define ARCONTENT_NONE 0x00000000 #define ARCONTENT_MASK 0x0001FFFE #define ARCONTENT_PHASE_UNKNOWN 0x00000000 #define ARCONTENT_PHASE_PRESNIFF 0x10000000 #define ARCONTENT_PHASE_SNIFFING 0x20000000 #define ARCONTENT_PHASE_FINAL 0x40000000 #define ARCONTENT_PHASE_MASK 0x70000000 #endif /***************************************************************************** * IQueryCancelAutoPlay interface */ #ifndef __IQueryCancelAutoPlay_INTERFACE_DEFINED__ #define __IQueryCancelAutoPlay_INTERFACE_DEFINED__ DEFINE_GUID(IID_IQueryCancelAutoPlay, 0xddefe873, 0x6997, 0x4e68, 0xbe,0x26, 0x39,0xb6,0x33,0xad,0xbe,0x12); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ddefe873-6997-4e68-be26-39b633adbe12") IQueryCancelAutoPlay : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AllowAutoPlay( LPCWSTR pszPath, DWORD dwContentType, LPCWSTR pszLabel, DWORD dwSerialNumber) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IQueryCancelAutoPlay, 0xddefe873, 0x6997, 0x4e68, 0xbe,0x26, 0x39,0xb6,0x33,0xad,0xbe,0x12) #endif #else typedef struct IQueryCancelAutoPlayVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IQueryCancelAutoPlay *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IQueryCancelAutoPlay *This); ULONG (STDMETHODCALLTYPE *Release)( IQueryCancelAutoPlay *This); /*** IQueryCancelAutoPlay methods ***/ HRESULT (STDMETHODCALLTYPE *AllowAutoPlay)( IQueryCancelAutoPlay *This, LPCWSTR pszPath, DWORD dwContentType, LPCWSTR pszLabel, DWORD dwSerialNumber); END_INTERFACE } IQueryCancelAutoPlayVtbl; interface IQueryCancelAutoPlay { CONST_VTBL IQueryCancelAutoPlayVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IQueryCancelAutoPlay_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IQueryCancelAutoPlay_AddRef(This) (This)->lpVtbl->AddRef(This) #define IQueryCancelAutoPlay_Release(This) (This)->lpVtbl->Release(This) /*** IQueryCancelAutoPlay methods ***/ #define IQueryCancelAutoPlay_AllowAutoPlay(This,pszPath,dwContentType,pszLabel,dwSerialNumber) (This)->lpVtbl->AllowAutoPlay(This,pszPath,dwContentType,pszLabel,dwSerialNumber) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IQueryCancelAutoPlay_QueryInterface(IQueryCancelAutoPlay* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IQueryCancelAutoPlay_AddRef(IQueryCancelAutoPlay* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IQueryCancelAutoPlay_Release(IQueryCancelAutoPlay* This) { return This->lpVtbl->Release(This); } /*** IQueryCancelAutoPlay methods ***/ static FORCEINLINE HRESULT IQueryCancelAutoPlay_AllowAutoPlay(IQueryCancelAutoPlay* This,LPCWSTR pszPath,DWORD dwContentType,LPCWSTR pszLabel,DWORD dwSerialNumber) { return This->lpVtbl->AllowAutoPlay(This,pszPath,dwContentType,pszLabel,dwSerialNumber); } #endif #endif #endif #endif /* __IQueryCancelAutoPlay_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * IDynamicHWHandler interface */ #ifndef __IDynamicHWHandler_INTERFACE_DEFINED__ #define __IDynamicHWHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDynamicHWHandler, 0xdc2601d7, 0x059e, 0x42fc, 0xa0,0x9d, 0x2a,0xfd,0x21,0xb6,0xd5,0xf7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dc2601d7-059e-42fc-a09d-2afd21b6d5f7") IDynamicHWHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDynamicInfo( LPCWSTR pszDeviceID, DWORD dwContentType, LPWSTR *ppszAction) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDynamicHWHandler, 0xdc2601d7, 0x059e, 0x42fc, 0xa0,0x9d, 0x2a,0xfd,0x21,0xb6,0xd5,0xf7) #endif #else typedef struct IDynamicHWHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDynamicHWHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDynamicHWHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IDynamicHWHandler *This); /*** IDynamicHWHandler methods ***/ HRESULT (STDMETHODCALLTYPE *GetDynamicInfo)( IDynamicHWHandler *This, LPCWSTR pszDeviceID, DWORD dwContentType, LPWSTR *ppszAction); END_INTERFACE } IDynamicHWHandlerVtbl; interface IDynamicHWHandler { CONST_VTBL IDynamicHWHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDynamicHWHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDynamicHWHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDynamicHWHandler_Release(This) (This)->lpVtbl->Release(This) /*** IDynamicHWHandler methods ***/ #define IDynamicHWHandler_GetDynamicInfo(This,pszDeviceID,dwContentType,ppszAction) (This)->lpVtbl->GetDynamicInfo(This,pszDeviceID,dwContentType,ppszAction) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDynamicHWHandler_QueryInterface(IDynamicHWHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDynamicHWHandler_AddRef(IDynamicHWHandler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDynamicHWHandler_Release(IDynamicHWHandler* This) { return This->lpVtbl->Release(This); } /*** IDynamicHWHandler methods ***/ static FORCEINLINE HRESULT IDynamicHWHandler_GetDynamicInfo(IDynamicHWHandler* This,LPCWSTR pszDeviceID,DWORD dwContentType,LPWSTR *ppszAction) { return This->lpVtbl->GetDynamicInfo(This,pszDeviceID,dwContentType,ppszAction); } #endif #endif #endif #endif /* __IDynamicHWHandler_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IActionProgress interface */ #ifndef __IActionProgress_INTERFACE_DEFINED__ #define __IActionProgress_INTERFACE_DEFINED__ enum _SPBEGINF { SPBEGINF_NORMAL = 0x0, SPBEGINF_AUTOTIME = 0x2, SPBEGINF_NOPROGRESSBAR = 0x10, SPBEGINF_MARQUEEPROGRESS = 0x20, SPBEGINF_NOCANCELBUTTON = 0x40 }; typedef DWORD SPBEGINF; typedef enum _SPACTION { SPACTION_NONE = 0, SPACTION_MOVING = 1, SPACTION_COPYING = 2, SPACTION_RECYCLING = 3, SPACTION_APPLYINGATTRIBS = 4, SPACTION_DOWNLOADING = 5, SPACTION_SEARCHING_INTERNET = 6, SPACTION_CALCULATING = 7, SPACTION_UPLOADING = 8, SPACTION_SEARCHING_FILES = 9, SPACTION_DELETING = 10, SPACTION_RENAMING = 11, SPACTION_FORMATTING = 12, SPACTION_COPY_MOVING = 13 } SPACTION; typedef enum _SPTEXT { SPTEXT_ACTIONDESCRIPTION = 1, SPTEXT_ACTIONDETAIL = 2 } SPTEXT; DEFINE_GUID(IID_IActionProgress, 0x49ff1173, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("49ff1173-eadc-446d-9285-156453a6431c") IActionProgress : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Begin( SPACTION action, SPBEGINF flags) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateProgress( ULONGLONG ulCompleted, ULONGLONG ulTotal) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateText( SPTEXT sptext, LPCWSTR pszText, WINBOOL fMayCompact) = 0; virtual HRESULT STDMETHODCALLTYPE QueryCancel( WINBOOL *pfCancelled) = 0; virtual HRESULT STDMETHODCALLTYPE ResetCancel( ) = 0; virtual HRESULT STDMETHODCALLTYPE End( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IActionProgress, 0x49ff1173, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c) #endif #else typedef struct IActionProgressVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IActionProgress *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IActionProgress *This); ULONG (STDMETHODCALLTYPE *Release)( IActionProgress *This); /*** IActionProgress methods ***/ HRESULT (STDMETHODCALLTYPE *Begin)( IActionProgress *This, SPACTION action, SPBEGINF flags); HRESULT (STDMETHODCALLTYPE *UpdateProgress)( IActionProgress *This, ULONGLONG ulCompleted, ULONGLONG ulTotal); HRESULT (STDMETHODCALLTYPE *UpdateText)( IActionProgress *This, SPTEXT sptext, LPCWSTR pszText, WINBOOL fMayCompact); HRESULT (STDMETHODCALLTYPE *QueryCancel)( IActionProgress *This, WINBOOL *pfCancelled); HRESULT (STDMETHODCALLTYPE *ResetCancel)( IActionProgress *This); HRESULT (STDMETHODCALLTYPE *End)( IActionProgress *This); END_INTERFACE } IActionProgressVtbl; interface IActionProgress { CONST_VTBL IActionProgressVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IActionProgress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IActionProgress_AddRef(This) (This)->lpVtbl->AddRef(This) #define IActionProgress_Release(This) (This)->lpVtbl->Release(This) /*** IActionProgress methods ***/ #define IActionProgress_Begin(This,action,flags) (This)->lpVtbl->Begin(This,action,flags) #define IActionProgress_UpdateProgress(This,ulCompleted,ulTotal) (This)->lpVtbl->UpdateProgress(This,ulCompleted,ulTotal) #define IActionProgress_UpdateText(This,sptext,pszText,fMayCompact) (This)->lpVtbl->UpdateText(This,sptext,pszText,fMayCompact) #define IActionProgress_QueryCancel(This,pfCancelled) (This)->lpVtbl->QueryCancel(This,pfCancelled) #define IActionProgress_ResetCancel(This) (This)->lpVtbl->ResetCancel(This) #define IActionProgress_End(This) (This)->lpVtbl->End(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IActionProgress_QueryInterface(IActionProgress* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IActionProgress_AddRef(IActionProgress* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IActionProgress_Release(IActionProgress* This) { return This->lpVtbl->Release(This); } /*** IActionProgress methods ***/ static FORCEINLINE HRESULT IActionProgress_Begin(IActionProgress* This,SPACTION action,SPBEGINF flags) { return This->lpVtbl->Begin(This,action,flags); } static FORCEINLINE HRESULT IActionProgress_UpdateProgress(IActionProgress* This,ULONGLONG ulCompleted,ULONGLONG ulTotal) { return This->lpVtbl->UpdateProgress(This,ulCompleted,ulTotal); } static FORCEINLINE HRESULT IActionProgress_UpdateText(IActionProgress* This,SPTEXT sptext,LPCWSTR pszText,WINBOOL fMayCompact) { return This->lpVtbl->UpdateText(This,sptext,pszText,fMayCompact); } static FORCEINLINE HRESULT IActionProgress_QueryCancel(IActionProgress* This,WINBOOL *pfCancelled) { return This->lpVtbl->QueryCancel(This,pfCancelled); } static FORCEINLINE HRESULT IActionProgress_ResetCancel(IActionProgress* This) { return This->lpVtbl->ResetCancel(This); } static FORCEINLINE HRESULT IActionProgress_End(IActionProgress* This) { return This->lpVtbl->End(This); } #endif #endif #endif #endif /* __IActionProgress_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellExtInit interface */ #ifndef __IShellExtInit_INTERFACE_DEFINED__ #define __IShellExtInit_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellExtInit, 0x000214e8, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e8-0000-0000-c000-000000000046") IShellExtInit : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( PCIDLIST_ABSOLUTE pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellExtInit, 0x000214e8, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellExtInitVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellExtInit *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellExtInit *This); ULONG (STDMETHODCALLTYPE *Release)( IShellExtInit *This); /*** IShellExtInit methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IShellExtInit *This, PCIDLIST_ABSOLUTE pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID); END_INTERFACE } IShellExtInitVtbl; interface IShellExtInit { CONST_VTBL IShellExtInitVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellExtInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellExtInit_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellExtInit_Release(This) (This)->lpVtbl->Release(This) /*** IShellExtInit methods ***/ #define IShellExtInit_Initialize(This,pidlFolder,pdtobj,hkeyProgID) (This)->lpVtbl->Initialize(This,pidlFolder,pdtobj,hkeyProgID) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellExtInit_QueryInterface(IShellExtInit* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellExtInit_AddRef(IShellExtInit* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellExtInit_Release(IShellExtInit* This) { return This->lpVtbl->Release(This); } /*** IShellExtInit methods ***/ static FORCEINLINE HRESULT IShellExtInit_Initialize(IShellExtInit* This,PCIDLIST_ABSOLUTE pidlFolder,IDataObject *pdtobj,HKEY hkeyProgID) { return This->lpVtbl->Initialize(This,pidlFolder,pdtobj,hkeyProgID); } #endif #endif #endif #endif /* __IShellExtInit_INTERFACE_DEFINED__ */ typedef IShellExtInit *LPSHELLEXTINIT; /***************************************************************************** * IShellPropSheetExt interface */ #ifndef __IShellPropSheetExt_INTERFACE_DEFINED__ #define __IShellPropSheetExt_INTERFACE_DEFINED__ enum _EXPPS { EXPPS_FILETYPES = 0x1 }; typedef UINT EXPPS; DEFINE_GUID(IID_IShellPropSheetExt, 0x000214e9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e9-0000-0000-c000-000000000046") IShellPropSheetExt : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddPages( LPFNSVADDPROPSHEETPAGE pfnAddPage, LPARAM lParam) = 0; virtual HRESULT STDMETHODCALLTYPE ReplacePage( EXPPS uPageID, LPFNSVADDPROPSHEETPAGE pfnReplaceWith, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellPropSheetExt, 0x000214e9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellPropSheetExtVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellPropSheetExt *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellPropSheetExt *This); ULONG (STDMETHODCALLTYPE *Release)( IShellPropSheetExt *This); /*** IShellPropSheetExt methods ***/ HRESULT (STDMETHODCALLTYPE *AddPages)( IShellPropSheetExt *This, LPFNSVADDPROPSHEETPAGE pfnAddPage, LPARAM lParam); HRESULT (STDMETHODCALLTYPE *ReplacePage)( IShellPropSheetExt *This, EXPPS uPageID, LPFNSVADDPROPSHEETPAGE pfnReplaceWith, LPARAM lParam); END_INTERFACE } IShellPropSheetExtVtbl; interface IShellPropSheetExt { CONST_VTBL IShellPropSheetExtVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellPropSheetExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellPropSheetExt_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellPropSheetExt_Release(This) (This)->lpVtbl->Release(This) /*** IShellPropSheetExt methods ***/ #define IShellPropSheetExt_AddPages(This,pfnAddPage,lParam) (This)->lpVtbl->AddPages(This,pfnAddPage,lParam) #define IShellPropSheetExt_ReplacePage(This,uPageID,pfnReplaceWith,lParam) (This)->lpVtbl->ReplacePage(This,uPageID,pfnReplaceWith,lParam) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellPropSheetExt_QueryInterface(IShellPropSheetExt* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellPropSheetExt_AddRef(IShellPropSheetExt* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellPropSheetExt_Release(IShellPropSheetExt* This) { return This->lpVtbl->Release(This); } /*** IShellPropSheetExt methods ***/ static FORCEINLINE HRESULT IShellPropSheetExt_AddPages(IShellPropSheetExt* This,LPFNSVADDPROPSHEETPAGE pfnAddPage,LPARAM lParam) { return This->lpVtbl->AddPages(This,pfnAddPage,lParam); } static FORCEINLINE HRESULT IShellPropSheetExt_ReplacePage(IShellPropSheetExt* This,EXPPS uPageID,LPFNSVADDPROPSHEETPAGE pfnReplaceWith,LPARAM lParam) { return This->lpVtbl->ReplacePage(This,uPageID,pfnReplaceWith,lParam); } #endif #endif #endif #endif /* __IShellPropSheetExt_INTERFACE_DEFINED__ */ typedef IShellPropSheetExt *LPSHELLPROPSHEETEXT; /***************************************************************************** * IRemoteComputer interface */ #ifndef __IRemoteComputer_INTERFACE_DEFINED__ #define __IRemoteComputer_INTERFACE_DEFINED__ DEFINE_GUID(IID_IRemoteComputer, 0x000214fe, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214fe-0000-0000-c000-000000000046") IRemoteComputer : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( LPCWSTR pszMachine, WINBOOL bEnumerating) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IRemoteComputer, 0x000214fe, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IRemoteComputerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IRemoteComputer *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IRemoteComputer *This); ULONG (STDMETHODCALLTYPE *Release)( IRemoteComputer *This); /*** IRemoteComputer methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IRemoteComputer *This, LPCWSTR pszMachine, WINBOOL bEnumerating); END_INTERFACE } IRemoteComputerVtbl; interface IRemoteComputer { CONST_VTBL IRemoteComputerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IRemoteComputer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IRemoteComputer_AddRef(This) (This)->lpVtbl->AddRef(This) #define IRemoteComputer_Release(This) (This)->lpVtbl->Release(This) /*** IRemoteComputer methods ***/ #define IRemoteComputer_Initialize(This,pszMachine,bEnumerating) (This)->lpVtbl->Initialize(This,pszMachine,bEnumerating) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IRemoteComputer_QueryInterface(IRemoteComputer* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IRemoteComputer_AddRef(IRemoteComputer* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IRemoteComputer_Release(IRemoteComputer* This) { return This->lpVtbl->Release(This); } /*** IRemoteComputer methods ***/ static FORCEINLINE HRESULT IRemoteComputer_Initialize(IRemoteComputer* This,LPCWSTR pszMachine,WINBOOL bEnumerating) { return This->lpVtbl->Initialize(This,pszMachine,bEnumerating); } #endif #endif #endif #endif /* __IRemoteComputer_INTERFACE_DEFINED__ */ /***************************************************************************** * IQueryContinue interface */ #ifndef __IQueryContinue_INTERFACE_DEFINED__ #define __IQueryContinue_INTERFACE_DEFINED__ DEFINE_GUID(IID_IQueryContinue, 0x7307055c, 0xb24a, 0x486b, 0x9f,0x25, 0x16,0x3e,0x59,0x7a,0x28,0xa9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7307055c-b24a-486b-9f25-163e597a28a9") IQueryContinue : public IUnknown { virtual HRESULT STDMETHODCALLTYPE QueryContinue( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IQueryContinue, 0x7307055c, 0xb24a, 0x486b, 0x9f,0x25, 0x16,0x3e,0x59,0x7a,0x28,0xa9) #endif #else typedef struct IQueryContinueVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IQueryContinue *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IQueryContinue *This); ULONG (STDMETHODCALLTYPE *Release)( IQueryContinue *This); /*** IQueryContinue methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContinue)( IQueryContinue *This); END_INTERFACE } IQueryContinueVtbl; interface IQueryContinue { CONST_VTBL IQueryContinueVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IQueryContinue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IQueryContinue_AddRef(This) (This)->lpVtbl->AddRef(This) #define IQueryContinue_Release(This) (This)->lpVtbl->Release(This) /*** IQueryContinue methods ***/ #define IQueryContinue_QueryContinue(This) (This)->lpVtbl->QueryContinue(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IQueryContinue_QueryInterface(IQueryContinue* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IQueryContinue_AddRef(IQueryContinue* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IQueryContinue_Release(IQueryContinue* This) { return This->lpVtbl->Release(This); } /*** IQueryContinue methods ***/ static FORCEINLINE HRESULT IQueryContinue_QueryContinue(IQueryContinue* This) { return This->lpVtbl->QueryContinue(This); } #endif #endif #endif #endif /* __IQueryContinue_INTERFACE_DEFINED__ */ /***************************************************************************** * IObjectWithCancelEvent interface */ #ifndef __IObjectWithCancelEvent_INTERFACE_DEFINED__ #define __IObjectWithCancelEvent_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithCancelEvent, 0xf279b885, 0x0ae9, 0x4b85, 0xac,0x06, 0xdd,0xec,0xf9,0x40,0x89,0x41); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f279b885-0ae9-4b85-ac06-ddecf9408941") IObjectWithCancelEvent : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCancelEvent( HANDLE *phEvent) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithCancelEvent, 0xf279b885, 0x0ae9, 0x4b85, 0xac,0x06, 0xdd,0xec,0xf9,0x40,0x89,0x41) #endif #else typedef struct IObjectWithCancelEventVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithCancelEvent *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithCancelEvent *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithCancelEvent *This); /*** IObjectWithCancelEvent methods ***/ HRESULT (STDMETHODCALLTYPE *GetCancelEvent)( IObjectWithCancelEvent *This, HANDLE *phEvent); END_INTERFACE } IObjectWithCancelEventVtbl; interface IObjectWithCancelEvent { CONST_VTBL IObjectWithCancelEventVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithCancelEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithCancelEvent_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithCancelEvent_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithCancelEvent methods ***/ #define IObjectWithCancelEvent_GetCancelEvent(This,phEvent) (This)->lpVtbl->GetCancelEvent(This,phEvent) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithCancelEvent_QueryInterface(IObjectWithCancelEvent* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithCancelEvent_AddRef(IObjectWithCancelEvent* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithCancelEvent_Release(IObjectWithCancelEvent* This) { return This->lpVtbl->Release(This); } /*** IObjectWithCancelEvent methods ***/ static FORCEINLINE HRESULT IObjectWithCancelEvent_GetCancelEvent(IObjectWithCancelEvent* This,HANDLE *phEvent) { return This->lpVtbl->GetCancelEvent(This,phEvent); } #endif #endif #endif #endif /* __IObjectWithCancelEvent_INTERFACE_DEFINED__ */ /***************************************************************************** * IUserNotification interface */ #ifndef __IUserNotification_INTERFACE_DEFINED__ #define __IUserNotification_INTERFACE_DEFINED__ DEFINE_GUID(IID_IUserNotification, 0xba9711ba, 0x5893, 0x4787, 0xa7,0xe1, 0x41,0x27,0x71,0x51,0x55,0x0b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ba9711ba-5893-4787-a7e1-41277151550b") IUserNotification : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetBalloonInfo( LPCWSTR pszTitle, LPCWSTR pszText, DWORD dwInfoFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetBalloonRetry( DWORD dwShowTime, DWORD dwInterval, UINT cRetryCount) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconInfo( HICON hIcon, LPCWSTR pszToolTip) = 0; virtual HRESULT STDMETHODCALLTYPE Show( IQueryContinue *pqc, DWORD dwContinuePollInterval) = 0; virtual HRESULT STDMETHODCALLTYPE PlaySound( LPCWSTR pszSoundName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IUserNotification, 0xba9711ba, 0x5893, 0x4787, 0xa7,0xe1, 0x41,0x27,0x71,0x51,0x55,0x0b) #endif #else typedef struct IUserNotificationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IUserNotification *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IUserNotification *This); ULONG (STDMETHODCALLTYPE *Release)( IUserNotification *This); /*** IUserNotification methods ***/ HRESULT (STDMETHODCALLTYPE *SetBalloonInfo)( IUserNotification *This, LPCWSTR pszTitle, LPCWSTR pszText, DWORD dwInfoFlags); HRESULT (STDMETHODCALLTYPE *SetBalloonRetry)( IUserNotification *This, DWORD dwShowTime, DWORD dwInterval, UINT cRetryCount); HRESULT (STDMETHODCALLTYPE *SetIconInfo)( IUserNotification *This, HICON hIcon, LPCWSTR pszToolTip); HRESULT (STDMETHODCALLTYPE *Show)( IUserNotification *This, IQueryContinue *pqc, DWORD dwContinuePollInterval); HRESULT (STDMETHODCALLTYPE *PlaySound)( IUserNotification *This, LPCWSTR pszSoundName); END_INTERFACE } IUserNotificationVtbl; interface IUserNotification { CONST_VTBL IUserNotificationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IUserNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IUserNotification_AddRef(This) (This)->lpVtbl->AddRef(This) #define IUserNotification_Release(This) (This)->lpVtbl->Release(This) /*** IUserNotification methods ***/ #define IUserNotification_SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) (This)->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) #define IUserNotification_SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) (This)->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) #define IUserNotification_SetIconInfo(This,hIcon,pszToolTip) (This)->lpVtbl->SetIconInfo(This,hIcon,pszToolTip) #define IUserNotification_Show(This,pqc,dwContinuePollInterval) (This)->lpVtbl->Show(This,pqc,dwContinuePollInterval) #define IUserNotification_PlaySound(This,pszSoundName) (This)->lpVtbl->PlaySound(This,pszSoundName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IUserNotification_QueryInterface(IUserNotification* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IUserNotification_AddRef(IUserNotification* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IUserNotification_Release(IUserNotification* This) { return This->lpVtbl->Release(This); } /*** IUserNotification methods ***/ static FORCEINLINE HRESULT IUserNotification_SetBalloonInfo(IUserNotification* This,LPCWSTR pszTitle,LPCWSTR pszText,DWORD dwInfoFlags) { return This->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags); } static FORCEINLINE HRESULT IUserNotification_SetBalloonRetry(IUserNotification* This,DWORD dwShowTime,DWORD dwInterval,UINT cRetryCount) { return This->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount); } static FORCEINLINE HRESULT IUserNotification_SetIconInfo(IUserNotification* This,HICON hIcon,LPCWSTR pszToolTip) { return This->lpVtbl->SetIconInfo(This,hIcon,pszToolTip); } static FORCEINLINE HRESULT IUserNotification_Show(IUserNotification* This,IQueryContinue *pqc,DWORD dwContinuePollInterval) { return This->lpVtbl->Show(This,pqc,dwContinuePollInterval); } static FORCEINLINE HRESULT IUserNotification_PlaySound(IUserNotification* This,LPCWSTR pszSoundName) { return This->lpVtbl->PlaySound(This,pszSoundName); } #endif #endif #endif #endif /* __IUserNotification_INTERFACE_DEFINED__ */ /***************************************************************************** * IUserNotificationCallback interface */ #ifndef __IUserNotificationCallback_INTERFACE_DEFINED__ #define __IUserNotificationCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IUserNotificationCallback, 0x19108294, 0x0441, 0x4aff, 0x80,0x13, 0xfa,0x0a,0x73,0x0b,0x0b,0xea); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("19108294-0441-4aff-8013-fa0a730b0bea") IUserNotificationCallback : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnBalloonUserClick( POINT *pt) = 0; virtual HRESULT STDMETHODCALLTYPE OnLeftClick( POINT *pt) = 0; virtual HRESULT STDMETHODCALLTYPE OnContextMenu( POINT *pt) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IUserNotificationCallback, 0x19108294, 0x0441, 0x4aff, 0x80,0x13, 0xfa,0x0a,0x73,0x0b,0x0b,0xea) #endif #else typedef struct IUserNotificationCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IUserNotificationCallback *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IUserNotificationCallback *This); ULONG (STDMETHODCALLTYPE *Release)( IUserNotificationCallback *This); /*** IUserNotificationCallback methods ***/ HRESULT (STDMETHODCALLTYPE *OnBalloonUserClick)( IUserNotificationCallback *This, POINT *pt); HRESULT (STDMETHODCALLTYPE *OnLeftClick)( IUserNotificationCallback *This, POINT *pt); HRESULT (STDMETHODCALLTYPE *OnContextMenu)( IUserNotificationCallback *This, POINT *pt); END_INTERFACE } IUserNotificationCallbackVtbl; interface IUserNotificationCallback { CONST_VTBL IUserNotificationCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IUserNotificationCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IUserNotificationCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IUserNotificationCallback_Release(This) (This)->lpVtbl->Release(This) /*** IUserNotificationCallback methods ***/ #define IUserNotificationCallback_OnBalloonUserClick(This,pt) (This)->lpVtbl->OnBalloonUserClick(This,pt) #define IUserNotificationCallback_OnLeftClick(This,pt) (This)->lpVtbl->OnLeftClick(This,pt) #define IUserNotificationCallback_OnContextMenu(This,pt) (This)->lpVtbl->OnContextMenu(This,pt) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IUserNotificationCallback_QueryInterface(IUserNotificationCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IUserNotificationCallback_AddRef(IUserNotificationCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IUserNotificationCallback_Release(IUserNotificationCallback* This) { return This->lpVtbl->Release(This); } /*** IUserNotificationCallback methods ***/ static FORCEINLINE HRESULT IUserNotificationCallback_OnBalloonUserClick(IUserNotificationCallback* This,POINT *pt) { return This->lpVtbl->OnBalloonUserClick(This,pt); } static FORCEINLINE HRESULT IUserNotificationCallback_OnLeftClick(IUserNotificationCallback* This,POINT *pt) { return This->lpVtbl->OnLeftClick(This,pt); } static FORCEINLINE HRESULT IUserNotificationCallback_OnContextMenu(IUserNotificationCallback* This,POINT *pt) { return This->lpVtbl->OnContextMenu(This,pt); } #endif #endif #endif #endif /* __IUserNotificationCallback_INTERFACE_DEFINED__ */ /***************************************************************************** * IUserNotification2 interface */ #ifndef __IUserNotification2_INTERFACE_DEFINED__ #define __IUserNotification2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IUserNotification2, 0x215913cc, 0x57eb, 0x4fab, 0xab,0x5a, 0xe5,0xfa,0x7b,0xea,0x2a,0x6c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("215913cc-57eb-4fab-ab5a-e5fa7bea2a6c") IUserNotification2 : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetBalloonInfo( LPCWSTR pszTitle, LPCWSTR pszText, DWORD dwInfoFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetBalloonRetry( DWORD dwShowTime, DWORD dwInterval, UINT cRetryCount) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconInfo( HICON hIcon, LPCWSTR pszToolTip) = 0; virtual HRESULT STDMETHODCALLTYPE Show( IQueryContinue *pqc, DWORD dwContinuePollInterval, IUserNotificationCallback *pSink) = 0; virtual HRESULT STDMETHODCALLTYPE PlaySound( LPCWSTR pszSoundName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IUserNotification2, 0x215913cc, 0x57eb, 0x4fab, 0xab,0x5a, 0xe5,0xfa,0x7b,0xea,0x2a,0x6c) #endif #else typedef struct IUserNotification2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IUserNotification2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IUserNotification2 *This); ULONG (STDMETHODCALLTYPE *Release)( IUserNotification2 *This); /*** IUserNotification2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetBalloonInfo)( IUserNotification2 *This, LPCWSTR pszTitle, LPCWSTR pszText, DWORD dwInfoFlags); HRESULT (STDMETHODCALLTYPE *SetBalloonRetry)( IUserNotification2 *This, DWORD dwShowTime, DWORD dwInterval, UINT cRetryCount); HRESULT (STDMETHODCALLTYPE *SetIconInfo)( IUserNotification2 *This, HICON hIcon, LPCWSTR pszToolTip); HRESULT (STDMETHODCALLTYPE *Show)( IUserNotification2 *This, IQueryContinue *pqc, DWORD dwContinuePollInterval, IUserNotificationCallback *pSink); HRESULT (STDMETHODCALLTYPE *PlaySound)( IUserNotification2 *This, LPCWSTR pszSoundName); END_INTERFACE } IUserNotification2Vtbl; interface IUserNotification2 { CONST_VTBL IUserNotification2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IUserNotification2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IUserNotification2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IUserNotification2_Release(This) (This)->lpVtbl->Release(This) /*** IUserNotification2 methods ***/ #define IUserNotification2_SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) (This)->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) #define IUserNotification2_SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) (This)->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) #define IUserNotification2_SetIconInfo(This,hIcon,pszToolTip) (This)->lpVtbl->SetIconInfo(This,hIcon,pszToolTip) #define IUserNotification2_Show(This,pqc,dwContinuePollInterval,pSink) (This)->lpVtbl->Show(This,pqc,dwContinuePollInterval,pSink) #define IUserNotification2_PlaySound(This,pszSoundName) (This)->lpVtbl->PlaySound(This,pszSoundName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IUserNotification2_QueryInterface(IUserNotification2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IUserNotification2_AddRef(IUserNotification2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IUserNotification2_Release(IUserNotification2* This) { return This->lpVtbl->Release(This); } /*** IUserNotification2 methods ***/ static FORCEINLINE HRESULT IUserNotification2_SetBalloonInfo(IUserNotification2* This,LPCWSTR pszTitle,LPCWSTR pszText,DWORD dwInfoFlags) { return This->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags); } static FORCEINLINE HRESULT IUserNotification2_SetBalloonRetry(IUserNotification2* This,DWORD dwShowTime,DWORD dwInterval,UINT cRetryCount) { return This->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount); } static FORCEINLINE HRESULT IUserNotification2_SetIconInfo(IUserNotification2* This,HICON hIcon,LPCWSTR pszToolTip) { return This->lpVtbl->SetIconInfo(This,hIcon,pszToolTip); } static FORCEINLINE HRESULT IUserNotification2_Show(IUserNotification2* This,IQueryContinue *pqc,DWORD dwContinuePollInterval,IUserNotificationCallback *pSink) { return This->lpVtbl->Show(This,pqc,dwContinuePollInterval,pSink); } static FORCEINLINE HRESULT IUserNotification2_PlaySound(IUserNotification2* This,LPCWSTR pszSoundName) { return This->lpVtbl->PlaySound(This,pszSoundName); } #endif #endif #endif #endif /* __IUserNotification2_INTERFACE_DEFINED__ */ /***************************************************************************** * IItemNameLimits interface */ #ifndef __IItemNameLimits_INTERFACE_DEFINED__ #define __IItemNameLimits_INTERFACE_DEFINED__ DEFINE_GUID(IID_IItemNameLimits, 0x1df0d7f1, 0xb267, 0x4d28, 0x8b,0x10, 0x12,0xe2,0x32,0x02,0xa5,0xc4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1df0d7f1-b267-4d28-8b10-12e23202a5c4") IItemNameLimits : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetValidCharacters( LPWSTR *ppwszValidChars, LPWSTR *ppwszInvalidChars) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxLength( LPCWSTR pszName, int *piMaxNameLen) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IItemNameLimits, 0x1df0d7f1, 0xb267, 0x4d28, 0x8b,0x10, 0x12,0xe2,0x32,0x02,0xa5,0xc4) #endif #else typedef struct IItemNameLimitsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IItemNameLimits *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IItemNameLimits *This); ULONG (STDMETHODCALLTYPE *Release)( IItemNameLimits *This); /*** IItemNameLimits methods ***/ HRESULT (STDMETHODCALLTYPE *GetValidCharacters)( IItemNameLimits *This, LPWSTR *ppwszValidChars, LPWSTR *ppwszInvalidChars); HRESULT (STDMETHODCALLTYPE *GetMaxLength)( IItemNameLimits *This, LPCWSTR pszName, int *piMaxNameLen); END_INTERFACE } IItemNameLimitsVtbl; interface IItemNameLimits { CONST_VTBL IItemNameLimitsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IItemNameLimits_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IItemNameLimits_AddRef(This) (This)->lpVtbl->AddRef(This) #define IItemNameLimits_Release(This) (This)->lpVtbl->Release(This) /*** IItemNameLimits methods ***/ #define IItemNameLimits_GetValidCharacters(This,ppwszValidChars,ppwszInvalidChars) (This)->lpVtbl->GetValidCharacters(This,ppwszValidChars,ppwszInvalidChars) #define IItemNameLimits_GetMaxLength(This,pszName,piMaxNameLen) (This)->lpVtbl->GetMaxLength(This,pszName,piMaxNameLen) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IItemNameLimits_QueryInterface(IItemNameLimits* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IItemNameLimits_AddRef(IItemNameLimits* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IItemNameLimits_Release(IItemNameLimits* This) { return This->lpVtbl->Release(This); } /*** IItemNameLimits methods ***/ static FORCEINLINE HRESULT IItemNameLimits_GetValidCharacters(IItemNameLimits* This,LPWSTR *ppwszValidChars,LPWSTR *ppwszInvalidChars) { return This->lpVtbl->GetValidCharacters(This,ppwszValidChars,ppwszInvalidChars); } static FORCEINLINE HRESULT IItemNameLimits_GetMaxLength(IItemNameLimits* This,LPCWSTR pszName,int *piMaxNameLen) { return This->lpVtbl->GetMaxLength(This,pszName,piMaxNameLen); } #endif #endif #endif #endif /* __IItemNameLimits_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA #ifndef __ICondition_FWD_DEFINED__ #define __ICondition_FWD_DEFINED__ typedef interface ICondition ICondition; #ifdef __cplusplus interface ICondition; #endif /* __cplusplus */ #endif /***************************************************************************** * ISearchFolderItemFactory interface */ #ifndef __ISearchFolderItemFactory_INTERFACE_DEFINED__ #define __ISearchFolderItemFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_ISearchFolderItemFactory, 0xa0ffbc28, 0x5482, 0x4366, 0xbe,0x27, 0x3e,0x81,0xe7,0x8e,0x06,0xc2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a0ffbc28-5482-4366-be27-3e81e78e06c2") ISearchFolderItemFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetDisplayName( LPCWSTR pszDisplayName) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolderTypeID( FOLDERTYPEID ftid) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolderLogicalViewMode( FOLDERLOGICALVIEWMODE flvm) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconSize( int iIconSize) = 0; virtual HRESULT STDMETHODCALLTYPE SetVisibleColumns( UINT cVisibleColumns, PROPERTYKEY *rgKey) = 0; virtual HRESULT STDMETHODCALLTYPE SetSortColumns( UINT cSortColumns, SORTCOLUMN *rgSortColumns) = 0; virtual HRESULT STDMETHODCALLTYPE SetGroupColumn( REFPROPERTYKEY keyGroup) = 0; virtual HRESULT STDMETHODCALLTYPE SetStacks( UINT cStackKeys, PROPERTYKEY *rgStackKeys) = 0; virtual HRESULT STDMETHODCALLTYPE SetScope( IShellItemArray *psiaScope) = 0; virtual HRESULT STDMETHODCALLTYPE SetCondition( ICondition *pCondition) = 0; virtual HRESULT STDMETHODCALLTYPE GetShellItem( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( PIDLIST_ABSOLUTE *ppidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ISearchFolderItemFactory, 0xa0ffbc28, 0x5482, 0x4366, 0xbe,0x27, 0x3e,0x81,0xe7,0x8e,0x06,0xc2) #endif #else typedef struct ISearchFolderItemFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ISearchFolderItemFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ISearchFolderItemFactory *This); ULONG (STDMETHODCALLTYPE *Release)( ISearchFolderItemFactory *This); /*** ISearchFolderItemFactory methods ***/ HRESULT (STDMETHODCALLTYPE *SetDisplayName)( ISearchFolderItemFactory *This, LPCWSTR pszDisplayName); HRESULT (STDMETHODCALLTYPE *SetFolderTypeID)( ISearchFolderItemFactory *This, FOLDERTYPEID ftid); HRESULT (STDMETHODCALLTYPE *SetFolderLogicalViewMode)( ISearchFolderItemFactory *This, FOLDERLOGICALVIEWMODE flvm); HRESULT (STDMETHODCALLTYPE *SetIconSize)( ISearchFolderItemFactory *This, int iIconSize); HRESULT (STDMETHODCALLTYPE *SetVisibleColumns)( ISearchFolderItemFactory *This, UINT cVisibleColumns, PROPERTYKEY *rgKey); HRESULT (STDMETHODCALLTYPE *SetSortColumns)( ISearchFolderItemFactory *This, UINT cSortColumns, SORTCOLUMN *rgSortColumns); HRESULT (STDMETHODCALLTYPE *SetGroupColumn)( ISearchFolderItemFactory *This, REFPROPERTYKEY keyGroup); HRESULT (STDMETHODCALLTYPE *SetStacks)( ISearchFolderItemFactory *This, UINT cStackKeys, PROPERTYKEY *rgStackKeys); HRESULT (STDMETHODCALLTYPE *SetScope)( ISearchFolderItemFactory *This, IShellItemArray *psiaScope); HRESULT (STDMETHODCALLTYPE *SetCondition)( ISearchFolderItemFactory *This, ICondition *pCondition); HRESULT (STDMETHODCALLTYPE *GetShellItem)( ISearchFolderItemFactory *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetIDList)( ISearchFolderItemFactory *This, PIDLIST_ABSOLUTE *ppidl); END_INTERFACE } ISearchFolderItemFactoryVtbl; interface ISearchFolderItemFactory { CONST_VTBL ISearchFolderItemFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ISearchFolderItemFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ISearchFolderItemFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define ISearchFolderItemFactory_Release(This) (This)->lpVtbl->Release(This) /*** ISearchFolderItemFactory methods ***/ #define ISearchFolderItemFactory_SetDisplayName(This,pszDisplayName) (This)->lpVtbl->SetDisplayName(This,pszDisplayName) #define ISearchFolderItemFactory_SetFolderTypeID(This,ftid) (This)->lpVtbl->SetFolderTypeID(This,ftid) #define ISearchFolderItemFactory_SetFolderLogicalViewMode(This,flvm) (This)->lpVtbl->SetFolderLogicalViewMode(This,flvm) #define ISearchFolderItemFactory_SetIconSize(This,iIconSize) (This)->lpVtbl->SetIconSize(This,iIconSize) #define ISearchFolderItemFactory_SetVisibleColumns(This,cVisibleColumns,rgKey) (This)->lpVtbl->SetVisibleColumns(This,cVisibleColumns,rgKey) #define ISearchFolderItemFactory_SetSortColumns(This,cSortColumns,rgSortColumns) (This)->lpVtbl->SetSortColumns(This,cSortColumns,rgSortColumns) #define ISearchFolderItemFactory_SetGroupColumn(This,keyGroup) (This)->lpVtbl->SetGroupColumn(This,keyGroup) #define ISearchFolderItemFactory_SetStacks(This,cStackKeys,rgStackKeys) (This)->lpVtbl->SetStacks(This,cStackKeys,rgStackKeys) #define ISearchFolderItemFactory_SetScope(This,psiaScope) (This)->lpVtbl->SetScope(This,psiaScope) #define ISearchFolderItemFactory_SetCondition(This,pCondition) (This)->lpVtbl->SetCondition(This,pCondition) #define ISearchFolderItemFactory_GetShellItem(This,riid,ppv) (This)->lpVtbl->GetShellItem(This,riid,ppv) #define ISearchFolderItemFactory_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ISearchFolderItemFactory_QueryInterface(ISearchFolderItemFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ISearchFolderItemFactory_AddRef(ISearchFolderItemFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ISearchFolderItemFactory_Release(ISearchFolderItemFactory* This) { return This->lpVtbl->Release(This); } /*** ISearchFolderItemFactory methods ***/ static FORCEINLINE HRESULT ISearchFolderItemFactory_SetDisplayName(ISearchFolderItemFactory* This,LPCWSTR pszDisplayName) { return This->lpVtbl->SetDisplayName(This,pszDisplayName); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetFolderTypeID(ISearchFolderItemFactory* This,FOLDERTYPEID ftid) { return This->lpVtbl->SetFolderTypeID(This,ftid); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetFolderLogicalViewMode(ISearchFolderItemFactory* This,FOLDERLOGICALVIEWMODE flvm) { return This->lpVtbl->SetFolderLogicalViewMode(This,flvm); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetIconSize(ISearchFolderItemFactory* This,int iIconSize) { return This->lpVtbl->SetIconSize(This,iIconSize); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetVisibleColumns(ISearchFolderItemFactory* This,UINT cVisibleColumns,PROPERTYKEY *rgKey) { return This->lpVtbl->SetVisibleColumns(This,cVisibleColumns,rgKey); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetSortColumns(ISearchFolderItemFactory* This,UINT cSortColumns,SORTCOLUMN *rgSortColumns) { return This->lpVtbl->SetSortColumns(This,cSortColumns,rgSortColumns); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetGroupColumn(ISearchFolderItemFactory* This,REFPROPERTYKEY keyGroup) { return This->lpVtbl->SetGroupColumn(This,keyGroup); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetStacks(ISearchFolderItemFactory* This,UINT cStackKeys,PROPERTYKEY *rgStackKeys) { return This->lpVtbl->SetStacks(This,cStackKeys,rgStackKeys); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetScope(ISearchFolderItemFactory* This,IShellItemArray *psiaScope) { return This->lpVtbl->SetScope(This,psiaScope); } static FORCEINLINE HRESULT ISearchFolderItemFactory_SetCondition(ISearchFolderItemFactory* This,ICondition *pCondition) { return This->lpVtbl->SetCondition(This,pCondition); } static FORCEINLINE HRESULT ISearchFolderItemFactory_GetShellItem(ISearchFolderItemFactory* This,REFIID riid,void **ppv) { return This->lpVtbl->GetShellItem(This,riid,ppv); } static FORCEINLINE HRESULT ISearchFolderItemFactory_GetIDList(ISearchFolderItemFactory* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } #endif #endif #endif #endif /* __ISearchFolderItemFactory_INTERFACE_DEFINED__ */ #endif #define IEI_PRIORITY_MAX ITSAT_MAX_PRIORITY #define IEI_PRIORITY_MIN ITSAT_MIN_PRIORITY #define IEIT_PRIORITY_NORMAL ITSAT_DEFAULT_PRIORITY #define IEIFLAG_ASYNC 0x0001 #define IEIFLAG_CACHE 0x0002 #define IEIFLAG_ASPECT 0x0004 #define IEIFLAG_OFFLINE 0x0008 #define IEIFLAG_GLEAM 0x0010 #define IEIFLAG_SCREEN 0x0020 #define IEIFLAG_ORIGSIZE 0x0040 #define IEIFLAG_NOSTAMP 0x0080 #define IEIFLAG_NOBORDER 0x0100 #define IEIFLAG_QUALITY 0x0200 #define IEIFLAG_REFRESH 0x0400 /***************************************************************************** * IExtractImage interface */ #ifndef __IExtractImage_INTERFACE_DEFINED__ #define __IExtractImage_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExtractImage, 0xbb2e617c, 0x0920, 0x11d1, 0x9a,0x0b, 0x00,0xc0,0x4f,0xc2,0xd6,0xc1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bb2e617c-0920-11d1-9a0b-00c04fc2d6c1") IExtractImage : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetLocation( LPWSTR pszPathBuffer, DWORD cch, DWORD *pdwPriority, const SIZE *prgSize, DWORD dwRecClrDepth, DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE Extract( HBITMAP *phBmpThumbnail) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExtractImage, 0xbb2e617c, 0x0920, 0x11d1, 0x9a,0x0b, 0x00,0xc0,0x4f,0xc2,0xd6,0xc1) #endif #else typedef struct IExtractImageVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExtractImage *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExtractImage *This); ULONG (STDMETHODCALLTYPE *Release)( IExtractImage *This); /*** IExtractImage methods ***/ HRESULT (STDMETHODCALLTYPE *GetLocation)( IExtractImage *This, LPWSTR pszPathBuffer, DWORD cch, DWORD *pdwPriority, const SIZE *prgSize, DWORD dwRecClrDepth, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *Extract)( IExtractImage *This, HBITMAP *phBmpThumbnail); END_INTERFACE } IExtractImageVtbl; interface IExtractImage { CONST_VTBL IExtractImageVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExtractImage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExtractImage_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExtractImage_Release(This) (This)->lpVtbl->Release(This) /*** IExtractImage methods ***/ #define IExtractImage_GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) (This)->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) #define IExtractImage_Extract(This,phBmpThumbnail) (This)->lpVtbl->Extract(This,phBmpThumbnail) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExtractImage_QueryInterface(IExtractImage* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExtractImage_AddRef(IExtractImage* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExtractImage_Release(IExtractImage* This) { return This->lpVtbl->Release(This); } /*** IExtractImage methods ***/ static FORCEINLINE HRESULT IExtractImage_GetLocation(IExtractImage* This,LPWSTR pszPathBuffer,DWORD cch,DWORD *pdwPriority,const SIZE *prgSize,DWORD dwRecClrDepth,DWORD *pdwFlags) { return This->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags); } static FORCEINLINE HRESULT IExtractImage_Extract(IExtractImage* This,HBITMAP *phBmpThumbnail) { return This->lpVtbl->Extract(This,phBmpThumbnail); } #endif #endif #endif #endif /* __IExtractImage_INTERFACE_DEFINED__ */ typedef IExtractImage *LPEXTRACTIMAGE; /***************************************************************************** * IExtractImage2 interface */ #ifndef __IExtractImage2_INTERFACE_DEFINED__ #define __IExtractImage2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExtractImage2, 0x953bb1ee, 0x93b4, 0x11d1, 0x98,0xa3, 0x00,0xc0,0x4f,0xb6,0x87,0xda); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("953bb1ee-93b4-11d1-98a3-00c04fb687da") IExtractImage2 : public IExtractImage { virtual HRESULT STDMETHODCALLTYPE GetDateStamp( FILETIME *pDateStamp) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExtractImage2, 0x953bb1ee, 0x93b4, 0x11d1, 0x98,0xa3, 0x00,0xc0,0x4f,0xb6,0x87,0xda) #endif #else typedef struct IExtractImage2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExtractImage2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExtractImage2 *This); ULONG (STDMETHODCALLTYPE *Release)( IExtractImage2 *This); /*** IExtractImage methods ***/ HRESULT (STDMETHODCALLTYPE *GetLocation)( IExtractImage2 *This, LPWSTR pszPathBuffer, DWORD cch, DWORD *pdwPriority, const SIZE *prgSize, DWORD dwRecClrDepth, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *Extract)( IExtractImage2 *This, HBITMAP *phBmpThumbnail); /*** IExtractImage2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDateStamp)( IExtractImage2 *This, FILETIME *pDateStamp); END_INTERFACE } IExtractImage2Vtbl; interface IExtractImage2 { CONST_VTBL IExtractImage2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExtractImage2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExtractImage2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExtractImage2_Release(This) (This)->lpVtbl->Release(This) /*** IExtractImage methods ***/ #define IExtractImage2_GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) (This)->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) #define IExtractImage2_Extract(This,phBmpThumbnail) (This)->lpVtbl->Extract(This,phBmpThumbnail) /*** IExtractImage2 methods ***/ #define IExtractImage2_GetDateStamp(This,pDateStamp) (This)->lpVtbl->GetDateStamp(This,pDateStamp) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExtractImage2_QueryInterface(IExtractImage2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExtractImage2_AddRef(IExtractImage2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExtractImage2_Release(IExtractImage2* This) { return This->lpVtbl->Release(This); } /*** IExtractImage methods ***/ static FORCEINLINE HRESULT IExtractImage2_GetLocation(IExtractImage2* This,LPWSTR pszPathBuffer,DWORD cch,DWORD *pdwPriority,const SIZE *prgSize,DWORD dwRecClrDepth,DWORD *pdwFlags) { return This->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags); } static FORCEINLINE HRESULT IExtractImage2_Extract(IExtractImage2* This,HBITMAP *phBmpThumbnail) { return This->lpVtbl->Extract(This,phBmpThumbnail); } /*** IExtractImage2 methods ***/ static FORCEINLINE HRESULT IExtractImage2_GetDateStamp(IExtractImage2* This,FILETIME *pDateStamp) { return This->lpVtbl->GetDateStamp(This,pDateStamp); } #endif #endif #endif #endif /* __IExtractImage2_INTERFACE_DEFINED__ */ typedef IExtractImage2 *LPEXTRACTIMAGE2; /***************************************************************************** * IThumbnailHandlerFactory interface */ #ifndef __IThumbnailHandlerFactory_INTERFACE_DEFINED__ #define __IThumbnailHandlerFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_IThumbnailHandlerFactory, 0xe35b4b2e, 0x00da, 0x4bc1, 0x9f,0x13, 0x38,0xbc,0x11,0xf5,0xd4,0x17); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e35b4b2e-00da-4bc1-9f13-38bc11f5d417") IThumbnailHandlerFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetThumbnailHandler( PCUITEMID_CHILD pidlChild, IBindCtx *pbc, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IThumbnailHandlerFactory, 0xe35b4b2e, 0x00da, 0x4bc1, 0x9f,0x13, 0x38,0xbc,0x11,0xf5,0xd4,0x17) #endif #else typedef struct IThumbnailHandlerFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IThumbnailHandlerFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IThumbnailHandlerFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IThumbnailHandlerFactory *This); /*** IThumbnailHandlerFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetThumbnailHandler)( IThumbnailHandlerFactory *This, PCUITEMID_CHILD pidlChild, IBindCtx *pbc, REFIID riid, void **ppv); END_INTERFACE } IThumbnailHandlerFactoryVtbl; interface IThumbnailHandlerFactory { CONST_VTBL IThumbnailHandlerFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IThumbnailHandlerFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IThumbnailHandlerFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IThumbnailHandlerFactory_Release(This) (This)->lpVtbl->Release(This) /*** IThumbnailHandlerFactory methods ***/ #define IThumbnailHandlerFactory_GetThumbnailHandler(This,pidlChild,pbc,riid,ppv) (This)->lpVtbl->GetThumbnailHandler(This,pidlChild,pbc,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IThumbnailHandlerFactory_QueryInterface(IThumbnailHandlerFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IThumbnailHandlerFactory_AddRef(IThumbnailHandlerFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IThumbnailHandlerFactory_Release(IThumbnailHandlerFactory* This) { return This->lpVtbl->Release(This); } /*** IThumbnailHandlerFactory methods ***/ static FORCEINLINE HRESULT IThumbnailHandlerFactory_GetThumbnailHandler(IThumbnailHandlerFactory* This,PCUITEMID_CHILD pidlChild,IBindCtx *pbc,REFIID riid,void **ppv) { return This->lpVtbl->GetThumbnailHandler(This,pidlChild,pbc,riid,ppv); } #endif #endif #endif #endif /* __IThumbnailHandlerFactory_INTERFACE_DEFINED__ */ /***************************************************************************** * IParentAndItem interface */ #ifndef __IParentAndItem_INTERFACE_DEFINED__ #define __IParentAndItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IParentAndItem, 0xb3a4b685, 0xb685, 0x4805, 0x99,0xd9, 0x5d,0xea,0xd2,0x87,0x32,0x36); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b3a4b685-b685-4805-99d9-5dead2873236") IParentAndItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetParentAndItem( PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psf, PCUITEMID_CHILD pidlChild) = 0; virtual HRESULT STDMETHODCALLTYPE GetParentAndItem( PIDLIST_ABSOLUTE *ppidlParent, IShellFolder **ppsf, PITEMID_CHILD *ppidlChild) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IParentAndItem, 0xb3a4b685, 0xb685, 0x4805, 0x99,0xd9, 0x5d,0xea,0xd2,0x87,0x32,0x36) #endif #else typedef struct IParentAndItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IParentAndItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IParentAndItem *This); ULONG (STDMETHODCALLTYPE *Release)( IParentAndItem *This); /*** IParentAndItem methods ***/ HRESULT (STDMETHODCALLTYPE *SetParentAndItem)( IParentAndItem *This, PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psf, PCUITEMID_CHILD pidlChild); HRESULT (STDMETHODCALLTYPE *GetParentAndItem)( IParentAndItem *This, PIDLIST_ABSOLUTE *ppidlParent, IShellFolder **ppsf, PITEMID_CHILD *ppidlChild); END_INTERFACE } IParentAndItemVtbl; interface IParentAndItem { CONST_VTBL IParentAndItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IParentAndItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IParentAndItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IParentAndItem_Release(This) (This)->lpVtbl->Release(This) /*** IParentAndItem methods ***/ #define IParentAndItem_SetParentAndItem(This,pidlParent,psf,pidlChild) (This)->lpVtbl->SetParentAndItem(This,pidlParent,psf,pidlChild) #define IParentAndItem_GetParentAndItem(This,ppidlParent,ppsf,ppidlChild) (This)->lpVtbl->GetParentAndItem(This,ppidlParent,ppsf,ppidlChild) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IParentAndItem_QueryInterface(IParentAndItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IParentAndItem_AddRef(IParentAndItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IParentAndItem_Release(IParentAndItem* This) { return This->lpVtbl->Release(This); } /*** IParentAndItem methods ***/ static FORCEINLINE HRESULT IParentAndItem_SetParentAndItem(IParentAndItem* This,PCIDLIST_ABSOLUTE pidlParent,IShellFolder *psf,PCUITEMID_CHILD pidlChild) { return This->lpVtbl->SetParentAndItem(This,pidlParent,psf,pidlChild); } static FORCEINLINE HRESULT IParentAndItem_GetParentAndItem(IParentAndItem* This,PIDLIST_ABSOLUTE *ppidlParent,IShellFolder **ppsf,PITEMID_CHILD *ppidlChild) { return This->lpVtbl->GetParentAndItem(This,ppidlParent,ppsf,ppidlChild); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IParentAndItem_RemoteGetParentAndItem_Proxy( IParentAndItem* This, PIDLIST_ABSOLUTE *ppidlParent, IShellFolder **ppsf, PITEMID_CHILD *ppidlChild); void __RPC_STUB IParentAndItem_RemoteGetParentAndItem_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IParentAndItem_GetParentAndItem_Proxy( IParentAndItem* This, PIDLIST_ABSOLUTE *ppidlParent, IShellFolder **ppsf, PITEMID_CHILD *ppidlChild); HRESULT __RPC_STUB IParentAndItem_GetParentAndItem_Stub( IParentAndItem* This, PIDLIST_ABSOLUTE *ppidlParent, IShellFolder **ppsf, PITEMID_CHILD *ppidlChild); #endif /* __IParentAndItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IDockingWindow interface */ #ifndef __IDockingWindow_INTERFACE_DEFINED__ #define __IDockingWindow_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDockingWindow, 0x012dd920, 0x7b26, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("012dd920-7b26-11d0-8ca9-00a0c92dbfe8") IDockingWindow : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE ShowDW( WINBOOL fShow) = 0; virtual HRESULT STDMETHODCALLTYPE CloseDW( DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE ResizeBorderDW( LPCRECT prcBorder, IUnknown *punkToolbarSite, WINBOOL fReserved) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDockingWindow, 0x012dd920, 0x7b26, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8) #endif #else typedef struct IDockingWindowVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDockingWindow *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDockingWindow *This); ULONG (STDMETHODCALLTYPE *Release)( IDockingWindow *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IDockingWindow *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IDockingWindow *This, WINBOOL fEnterMode); /*** IDockingWindow methods ***/ HRESULT (STDMETHODCALLTYPE *ShowDW)( IDockingWindow *This, WINBOOL fShow); HRESULT (STDMETHODCALLTYPE *CloseDW)( IDockingWindow *This, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( IDockingWindow *This, LPCRECT prcBorder, IUnknown *punkToolbarSite, WINBOOL fReserved); END_INTERFACE } IDockingWindowVtbl; interface IDockingWindow { CONST_VTBL IDockingWindowVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDockingWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDockingWindow_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDockingWindow_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IDockingWindow_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IDockingWindow_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDockingWindow methods ***/ #define IDockingWindow_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) #define IDockingWindow_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) #define IDockingWindow_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDockingWindow_QueryInterface(IDockingWindow* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDockingWindow_AddRef(IDockingWindow* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDockingWindow_Release(IDockingWindow* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IDockingWindow_GetWindow(IDockingWindow* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IDockingWindow_ContextSensitiveHelp(IDockingWindow* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDockingWindow methods ***/ static FORCEINLINE HRESULT IDockingWindow_ShowDW(IDockingWindow* This,WINBOOL fShow) { return This->lpVtbl->ShowDW(This,fShow); } static FORCEINLINE HRESULT IDockingWindow_CloseDW(IDockingWindow* This,DWORD dwReserved) { return This->lpVtbl->CloseDW(This,dwReserved); } static FORCEINLINE HRESULT IDockingWindow_ResizeBorderDW(IDockingWindow* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,WINBOOL fReserved) { return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); } #endif #endif #endif #endif /* __IDockingWindow_INTERFACE_DEFINED__ */ #define DBIM_MINSIZE 0x0001 #define DBIM_MAXSIZE 0x0002 #define DBIM_INTEGRAL 0x0004 #define DBIM_ACTUAL 0x0008 #define DBIM_TITLE 0x0010 #define DBIM_MODEFLAGS 0x0020 #define DBIM_BKCOLOR 0x0040 #include typedef struct DESKBANDINFO { DWORD dwMask; POINTL ptMinSize; POINTL ptMaxSize; POINTL ptIntegral; POINTL ptActual; WCHAR wszTitle[256]; DWORD dwModeFlags; COLORREF crBkgnd; } DESKBANDINFO; #include #define DBIMF_NORMAL 0x0000 #define DBIMF_FIXED 0x0001 #define DBIMF_FIXEDBMP 0x0004 #define DBIMF_VARIABLEHEIGHT 0x0008 #define DBIMF_UNDELETEABLE 0x0010 #define DBIMF_DEBOSSED 0x0020 #define DBIMF_BKCOLOR 0x0040 #define DBIMF_USECHEVRON 0x0080 #define DBIMF_BREAK 0x0100 #define DBIMF_ADDTOFRONT 0x0200 #define DBIMF_TOPALIGN 0x0400 #if NTDDI_VERSION >= NTDDI_VISTA #define DBIMF_NOGRIPPER 0x0800 #define DBIMF_ALWAYSGRIPPER 0x1000 #define DBIMF_NOMARGINS 0x2000 #endif #define DBIF_VIEWMODE_NORMAL 0x0000 #define DBIF_VIEWMODE_VERTICAL 0x0001 #define DBIF_VIEWMODE_FLOATING 0x0002 #define DBIF_VIEWMODE_TRANSPARENT 0x0004 enum tagDESKBANDCID { DBID_BANDINFOCHANGED = 0, DBID_SHOWONLY = 1, DBID_MAXIMIZEBAND = 2, DBID_PUSHCHEVRON = 3, DBID_DELAYINIT = 4, DBID_FINISHINIT = 5, DBID_SETWINDOWTHEME = 6, DBID_PERMITAUTOHIDE = 7 }; #define DBPC_SELECTFIRST (DWORD)-1 #define DBPC_SELECTLAST (DWORD)-2 #define CGID_DeskBand IID_IDeskBand /***************************************************************************** * IDeskBand interface */ #ifndef __IDeskBand_INTERFACE_DEFINED__ #define __IDeskBand_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDeskBand, 0xeb0fe172, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("eb0fe172-1a3a-11d0-89b3-00a0c90a90ac") IDeskBand : public IDockingWindow { virtual HRESULT STDMETHODCALLTYPE GetBandInfo( DWORD dwBandID, DWORD dwViewMode, DESKBANDINFO *pdbi) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDeskBand, 0xeb0fe172, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac) #endif #else typedef struct IDeskBandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDeskBand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDeskBand *This); ULONG (STDMETHODCALLTYPE *Release)( IDeskBand *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IDeskBand *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IDeskBand *This, WINBOOL fEnterMode); /*** IDockingWindow methods ***/ HRESULT (STDMETHODCALLTYPE *ShowDW)( IDeskBand *This, WINBOOL fShow); HRESULT (STDMETHODCALLTYPE *CloseDW)( IDeskBand *This, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( IDeskBand *This, LPCRECT prcBorder, IUnknown *punkToolbarSite, WINBOOL fReserved); /*** IDeskBand methods ***/ HRESULT (STDMETHODCALLTYPE *GetBandInfo)( IDeskBand *This, DWORD dwBandID, DWORD dwViewMode, DESKBANDINFO *pdbi); END_INTERFACE } IDeskBandVtbl; interface IDeskBand { CONST_VTBL IDeskBandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDeskBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDeskBand_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDeskBand_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IDeskBand_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IDeskBand_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDockingWindow methods ***/ #define IDeskBand_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) #define IDeskBand_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) #define IDeskBand_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) /*** IDeskBand methods ***/ #define IDeskBand_GetBandInfo(This,dwBandID,dwViewMode,pdbi) (This)->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDeskBand_QueryInterface(IDeskBand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDeskBand_AddRef(IDeskBand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDeskBand_Release(IDeskBand* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IDeskBand_GetWindow(IDeskBand* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IDeskBand_ContextSensitiveHelp(IDeskBand* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDockingWindow methods ***/ static FORCEINLINE HRESULT IDeskBand_ShowDW(IDeskBand* This,WINBOOL fShow) { return This->lpVtbl->ShowDW(This,fShow); } static FORCEINLINE HRESULT IDeskBand_CloseDW(IDeskBand* This,DWORD dwReserved) { return This->lpVtbl->CloseDW(This,dwReserved); } static FORCEINLINE HRESULT IDeskBand_ResizeBorderDW(IDeskBand* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,WINBOOL fReserved) { return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); } /*** IDeskBand methods ***/ static FORCEINLINE HRESULT IDeskBand_GetBandInfo(IDeskBand* This,DWORD dwBandID,DWORD dwViewMode,DESKBANDINFO *pdbi) { return This->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi); } #endif #endif #endif #endif /* __IDeskBand_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * IDeskBandInfo interface */ #ifndef __IDeskBandInfo_INTERFACE_DEFINED__ #define __IDeskBandInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDeskBandInfo, 0x77e425fc, 0xcbf9, 0x4307, 0xba,0x6a, 0xbb,0x57,0x27,0x74,0x56,0x61); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("77e425fc-cbf9-4307-ba6a-bb5727745661") IDeskBandInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDefaultBandWidth( DWORD dwBandID, DWORD dwViewMode, int *pnWidth) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDeskBandInfo, 0x77e425fc, 0xcbf9, 0x4307, 0xba,0x6a, 0xbb,0x57,0x27,0x74,0x56,0x61) #endif #else typedef struct IDeskBandInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDeskBandInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDeskBandInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IDeskBandInfo *This); /*** IDeskBandInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetDefaultBandWidth)( IDeskBandInfo *This, DWORD dwBandID, DWORD dwViewMode, int *pnWidth); END_INTERFACE } IDeskBandInfoVtbl; interface IDeskBandInfo { CONST_VTBL IDeskBandInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDeskBandInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDeskBandInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDeskBandInfo_Release(This) (This)->lpVtbl->Release(This) /*** IDeskBandInfo methods ***/ #define IDeskBandInfo_GetDefaultBandWidth(This,dwBandID,dwViewMode,pnWidth) (This)->lpVtbl->GetDefaultBandWidth(This,dwBandID,dwViewMode,pnWidth) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDeskBandInfo_QueryInterface(IDeskBandInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDeskBandInfo_AddRef(IDeskBandInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDeskBandInfo_Release(IDeskBandInfo* This) { return This->lpVtbl->Release(This); } /*** IDeskBandInfo methods ***/ static FORCEINLINE HRESULT IDeskBandInfo_GetDefaultBandWidth(IDeskBandInfo* This,DWORD dwBandID,DWORD dwViewMode,int *pnWidth) { return This->lpVtbl->GetDefaultBandWidth(This,dwBandID,dwViewMode,pnWidth); } #endif #endif #endif #endif /* __IDeskBandInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * IDeskBand2 interface */ #ifndef __IDeskBand2_INTERFACE_DEFINED__ #define __IDeskBand2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDeskBand2, 0x79d16de4, 0xabee, 0x4021, 0x8d,0x9d, 0x91,0x69,0xb2,0x61,0xd6,0x57); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("79d16de4-abee-4021-8d9d-9169b261d657") IDeskBand2 : public IDeskBand { virtual HRESULT STDMETHODCALLTYPE CanRenderComposited( WINBOOL *pfCanRenderComposited) = 0; virtual HRESULT STDMETHODCALLTYPE SetCompositionState( WINBOOL fCompositionEnabled) = 0; virtual HRESULT STDMETHODCALLTYPE GetCompositionState( WINBOOL *pfCompositionEnabled) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDeskBand2, 0x79d16de4, 0xabee, 0x4021, 0x8d,0x9d, 0x91,0x69,0xb2,0x61,0xd6,0x57) #endif #else typedef struct IDeskBand2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDeskBand2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDeskBand2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDeskBand2 *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IDeskBand2 *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IDeskBand2 *This, WINBOOL fEnterMode); /*** IDockingWindow methods ***/ HRESULT (STDMETHODCALLTYPE *ShowDW)( IDeskBand2 *This, WINBOOL fShow); HRESULT (STDMETHODCALLTYPE *CloseDW)( IDeskBand2 *This, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( IDeskBand2 *This, LPCRECT prcBorder, IUnknown *punkToolbarSite, WINBOOL fReserved); /*** IDeskBand methods ***/ HRESULT (STDMETHODCALLTYPE *GetBandInfo)( IDeskBand2 *This, DWORD dwBandID, DWORD dwViewMode, DESKBANDINFO *pdbi); /*** IDeskBand2 methods ***/ HRESULT (STDMETHODCALLTYPE *CanRenderComposited)( IDeskBand2 *This, WINBOOL *pfCanRenderComposited); HRESULT (STDMETHODCALLTYPE *SetCompositionState)( IDeskBand2 *This, WINBOOL fCompositionEnabled); HRESULT (STDMETHODCALLTYPE *GetCompositionState)( IDeskBand2 *This, WINBOOL *pfCompositionEnabled); END_INTERFACE } IDeskBand2Vtbl; interface IDeskBand2 { CONST_VTBL IDeskBand2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDeskBand2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDeskBand2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDeskBand2_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IDeskBand2_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IDeskBand2_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDockingWindow methods ***/ #define IDeskBand2_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) #define IDeskBand2_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) #define IDeskBand2_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) /*** IDeskBand methods ***/ #define IDeskBand2_GetBandInfo(This,dwBandID,dwViewMode,pdbi) (This)->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi) /*** IDeskBand2 methods ***/ #define IDeskBand2_CanRenderComposited(This,pfCanRenderComposited) (This)->lpVtbl->CanRenderComposited(This,pfCanRenderComposited) #define IDeskBand2_SetCompositionState(This,fCompositionEnabled) (This)->lpVtbl->SetCompositionState(This,fCompositionEnabled) #define IDeskBand2_GetCompositionState(This,pfCompositionEnabled) (This)->lpVtbl->GetCompositionState(This,pfCompositionEnabled) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDeskBand2_QueryInterface(IDeskBand2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDeskBand2_AddRef(IDeskBand2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDeskBand2_Release(IDeskBand2* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IDeskBand2_GetWindow(IDeskBand2* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IDeskBand2_ContextSensitiveHelp(IDeskBand2* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDockingWindow methods ***/ static FORCEINLINE HRESULT IDeskBand2_ShowDW(IDeskBand2* This,WINBOOL fShow) { return This->lpVtbl->ShowDW(This,fShow); } static FORCEINLINE HRESULT IDeskBand2_CloseDW(IDeskBand2* This,DWORD dwReserved) { return This->lpVtbl->CloseDW(This,dwReserved); } static FORCEINLINE HRESULT IDeskBand2_ResizeBorderDW(IDeskBand2* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,WINBOOL fReserved) { return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); } /*** IDeskBand methods ***/ static FORCEINLINE HRESULT IDeskBand2_GetBandInfo(IDeskBand2* This,DWORD dwBandID,DWORD dwViewMode,DESKBANDINFO *pdbi) { return This->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi); } /*** IDeskBand2 methods ***/ static FORCEINLINE HRESULT IDeskBand2_CanRenderComposited(IDeskBand2* This,WINBOOL *pfCanRenderComposited) { return This->lpVtbl->CanRenderComposited(This,pfCanRenderComposited); } static FORCEINLINE HRESULT IDeskBand2_SetCompositionState(IDeskBand2* This,WINBOOL fCompositionEnabled) { return This->lpVtbl->SetCompositionState(This,fCompositionEnabled); } static FORCEINLINE HRESULT IDeskBand2_GetCompositionState(IDeskBand2* This,WINBOOL *pfCompositionEnabled) { return This->lpVtbl->GetCompositionState(This,pfCompositionEnabled); } #endif #endif #endif #endif /* __IDeskBand2_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * ITaskbarList interface */ #ifndef __ITaskbarList_INTERFACE_DEFINED__ #define __ITaskbarList_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITaskbarList, 0x56fdf342, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("56fdf342-fd6d-11d0-958a-006097c9a090") ITaskbarList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE HrInit( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddTab( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteTab( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateTab( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE SetActiveAlt( HWND hwnd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList, 0x56fdf342, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90) #endif #else typedef struct ITaskbarListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList *This, HWND hwnd); END_INTERFACE } ITaskbarListVtbl; interface ITaskbarList { CONST_VTBL ITaskbarListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITaskbarList_QueryInterface(ITaskbarList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITaskbarList_AddRef(ITaskbarList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITaskbarList_Release(ITaskbarList* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static FORCEINLINE HRESULT ITaskbarList_HrInit(ITaskbarList* This) { return This->lpVtbl->HrInit(This); } static FORCEINLINE HRESULT ITaskbarList_AddTab(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList_DeleteTab(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList_ActivateTab(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList_SetActiveAlt(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } #endif #endif #endif #endif /* __ITaskbarList_INTERFACE_DEFINED__ */ /***************************************************************************** * ITaskbarList2 interface */ #ifndef __ITaskbarList2_INTERFACE_DEFINED__ #define __ITaskbarList2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITaskbarList2, 0x602d4995, 0xb13a, 0x429b, 0xa6,0x6e, 0x19,0x35,0xe4,0x4f,0x43,0x17); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("602d4995-b13a-429b-a66e-1935e44f4317") ITaskbarList2 : public ITaskbarList { virtual HRESULT STDMETHODCALLTYPE MarkFullscreenWindow( HWND hwnd, WINBOOL fFullscreen) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList2, 0x602d4995, 0xb13a, 0x429b, 0xa6,0x6e, 0x19,0x35,0xe4,0x4f,0x43,0x17) #endif #else typedef struct ITaskbarList2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList2 *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList2 *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList2 *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList2 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList2 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList2 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList2 *This, HWND hwnd); /*** ITaskbarList2 methods ***/ HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( ITaskbarList2 *This, HWND hwnd, WINBOOL fFullscreen); END_INTERFACE } ITaskbarList2Vtbl; interface ITaskbarList2 { CONST_VTBL ITaskbarList2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList2_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList2_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList2_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList2_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList2_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList2_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) /*** ITaskbarList2 methods ***/ #define ITaskbarList2_MarkFullscreenWindow(This,hwnd,fFullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITaskbarList2_QueryInterface(ITaskbarList2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITaskbarList2_AddRef(ITaskbarList2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITaskbarList2_Release(ITaskbarList2* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static FORCEINLINE HRESULT ITaskbarList2_HrInit(ITaskbarList2* This) { return This->lpVtbl->HrInit(This); } static FORCEINLINE HRESULT ITaskbarList2_AddTab(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList2_DeleteTab(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList2_ActivateTab(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList2_SetActiveAlt(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } /*** ITaskbarList2 methods ***/ static FORCEINLINE HRESULT ITaskbarList2_MarkFullscreenWindow(ITaskbarList2* This,HWND hwnd,WINBOOL fFullscreen) { return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen); } #endif #endif #endif #endif /* __ITaskbarList2_INTERFACE_DEFINED__ */ #if 0 typedef IUnknown *HIMAGELIST; #endif typedef enum THUMBBUTTONFLAGS { THBF_ENABLED = 0x0, THBF_DISABLED = 0x1, THBF_DISMISSONCLICK = 0x2, THBF_NOBACKGROUND = 0x4, THBF_HIDDEN = 0x8, THBF_NONINTERACTIVE = 0x10 } THUMBBUTTONFLAGS; DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONFLAGS) typedef enum THUMBBUTTONMASK { THB_BITMAP = 0x1, THB_ICON = 0x2, THB_TOOLTIP = 0x4, THB_FLAGS = 0x8 } THUMBBUTTONMASK; DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONMASK) #include typedef struct THUMBBUTTON { THUMBBUTTONMASK dwMask; UINT iId; UINT iBitmap; HICON hIcon; WCHAR szTip[260]; THUMBBUTTONFLAGS dwFlags; } THUMBBUTTON; typedef struct THUMBBUTTON *LPTHUMBBUTTON; #include #define THBN_CLICKED 0x1800 /***************************************************************************** * ITaskbarList3 interface */ #ifndef __ITaskbarList3_INTERFACE_DEFINED__ #define __ITaskbarList3_INTERFACE_DEFINED__ typedef enum TBPFLAG { TBPF_NOPROGRESS = 0x0, TBPF_INDETERMINATE = 0x1, TBPF_NORMAL = 0x2, TBPF_ERROR = 0x4, TBPF_PAUSED = 0x8 } TBPFLAG; DEFINE_ENUM_FLAG_OPERATORS(TBPFLAG) DEFINE_GUID(IID_ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90,0xe9, 0x9e,0x9f,0x8a,0x5e,0xef,0xaf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf") ITaskbarList3 : public ITaskbarList2 { virtual HRESULT STDMETHODCALLTYPE SetProgressValue( HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressState( HWND hwnd, TBPFLAG tbpFlags) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterTab( HWND hwndTab, HWND hwndMDI) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterTab( HWND hwndTab) = 0; virtual HRESULT STDMETHODCALLTYPE SetTabOrder( HWND hwndTab, HWND hwndInsertBefore) = 0; virtual HRESULT STDMETHODCALLTYPE SetTabActive( HWND hwndTab, HWND hwndMDI, DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarAddButtons( HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarUpdateButtons( HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarSetImageList( HWND hwnd, HIMAGELIST himl) = 0; virtual HRESULT STDMETHODCALLTYPE SetOverlayIcon( HWND hwnd, HICON hIcon, LPCWSTR pszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetThumbnailTooltip( HWND hwnd, LPCWSTR pszTip) = 0; virtual HRESULT STDMETHODCALLTYPE SetThumbnailClip( HWND hwnd, RECT *prcClip) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90,0xe9, 0x9e,0x9f,0x8a,0x5e,0xef,0xaf) #endif #else typedef struct ITaskbarList3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList3 *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList3 *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList3 *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList3 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList3 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList3 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList3 *This, HWND hwnd); /*** ITaskbarList2 methods ***/ HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( ITaskbarList3 *This, HWND hwnd, WINBOOL fFullscreen); /*** ITaskbarList3 methods ***/ HRESULT (STDMETHODCALLTYPE *SetProgressValue)( ITaskbarList3 *This, HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal); HRESULT (STDMETHODCALLTYPE *SetProgressState)( ITaskbarList3 *This, HWND hwnd, TBPFLAG tbpFlags); HRESULT (STDMETHODCALLTYPE *RegisterTab)( ITaskbarList3 *This, HWND hwndTab, HWND hwndMDI); HRESULT (STDMETHODCALLTYPE *UnregisterTab)( ITaskbarList3 *This, HWND hwndTab); HRESULT (STDMETHODCALLTYPE *SetTabOrder)( ITaskbarList3 *This, HWND hwndTab, HWND hwndInsertBefore); HRESULT (STDMETHODCALLTYPE *SetTabActive)( ITaskbarList3 *This, HWND hwndTab, HWND hwndMDI, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ThumbBarAddButtons)( ITaskbarList3 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarUpdateButtons)( ITaskbarList3 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarSetImageList)( ITaskbarList3 *This, HWND hwnd, HIMAGELIST himl); HRESULT (STDMETHODCALLTYPE *SetOverlayIcon)( ITaskbarList3 *This, HWND hwnd, HICON hIcon, LPCWSTR pszDescription); HRESULT (STDMETHODCALLTYPE *SetThumbnailTooltip)( ITaskbarList3 *This, HWND hwnd, LPCWSTR pszTip); HRESULT (STDMETHODCALLTYPE *SetThumbnailClip)( ITaskbarList3 *This, HWND hwnd, RECT *prcClip); END_INTERFACE } ITaskbarList3Vtbl; interface ITaskbarList3 { CONST_VTBL ITaskbarList3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList3_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList3_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList3_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList3_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList3_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList3_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList3_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) /*** ITaskbarList2 methods ***/ #define ITaskbarList3_MarkFullscreenWindow(This,hwnd,fFullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen) /*** ITaskbarList3 methods ***/ #define ITaskbarList3_SetProgressValue(This,hwnd,ullCompleted,ullTotal) (This)->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal) #define ITaskbarList3_SetProgressState(This,hwnd,tbpFlags) (This)->lpVtbl->SetProgressState(This,hwnd,tbpFlags) #define ITaskbarList3_RegisterTab(This,hwndTab,hwndMDI) (This)->lpVtbl->RegisterTab(This,hwndTab,hwndMDI) #define ITaskbarList3_UnregisterTab(This,hwndTab) (This)->lpVtbl->UnregisterTab(This,hwndTab) #define ITaskbarList3_SetTabOrder(This,hwndTab,hwndInsertBefore) (This)->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore) #define ITaskbarList3_SetTabActive(This,hwndTab,hwndMDI,dwReserved) (This)->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved) #define ITaskbarList3_ThumbBarAddButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton) #define ITaskbarList3_ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) #define ITaskbarList3_ThumbBarSetImageList(This,hwnd,himl) (This)->lpVtbl->ThumbBarSetImageList(This,hwnd,himl) #define ITaskbarList3_SetOverlayIcon(This,hwnd,hIcon,pszDescription) (This)->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription) #define ITaskbarList3_SetThumbnailTooltip(This,hwnd,pszTip) (This)->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip) #define ITaskbarList3_SetThumbnailClip(This,hwnd,prcClip) (This)->lpVtbl->SetThumbnailClip(This,hwnd,prcClip) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITaskbarList3_QueryInterface(ITaskbarList3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITaskbarList3_AddRef(ITaskbarList3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITaskbarList3_Release(ITaskbarList3* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static FORCEINLINE HRESULT ITaskbarList3_HrInit(ITaskbarList3* This) { return This->lpVtbl->HrInit(This); } static FORCEINLINE HRESULT ITaskbarList3_AddTab(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList3_DeleteTab(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList3_ActivateTab(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList3_SetActiveAlt(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } /*** ITaskbarList2 methods ***/ static FORCEINLINE HRESULT ITaskbarList3_MarkFullscreenWindow(ITaskbarList3* This,HWND hwnd,WINBOOL fFullscreen) { return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen); } /*** ITaskbarList3 methods ***/ static FORCEINLINE HRESULT ITaskbarList3_SetProgressValue(ITaskbarList3* This,HWND hwnd,ULONGLONG ullCompleted,ULONGLONG ullTotal) { return This->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal); } static FORCEINLINE HRESULT ITaskbarList3_SetProgressState(ITaskbarList3* This,HWND hwnd,TBPFLAG tbpFlags) { return This->lpVtbl->SetProgressState(This,hwnd,tbpFlags); } static FORCEINLINE HRESULT ITaskbarList3_RegisterTab(ITaskbarList3* This,HWND hwndTab,HWND hwndMDI) { return This->lpVtbl->RegisterTab(This,hwndTab,hwndMDI); } static FORCEINLINE HRESULT ITaskbarList3_UnregisterTab(ITaskbarList3* This,HWND hwndTab) { return This->lpVtbl->UnregisterTab(This,hwndTab); } static FORCEINLINE HRESULT ITaskbarList3_SetTabOrder(ITaskbarList3* This,HWND hwndTab,HWND hwndInsertBefore) { return This->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore); } static FORCEINLINE HRESULT ITaskbarList3_SetTabActive(ITaskbarList3* This,HWND hwndTab,HWND hwndMDI,DWORD dwReserved) { return This->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved); } static FORCEINLINE HRESULT ITaskbarList3_ThumbBarAddButtons(ITaskbarList3* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton); } static FORCEINLINE HRESULT ITaskbarList3_ThumbBarUpdateButtons(ITaskbarList3* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton); } static FORCEINLINE HRESULT ITaskbarList3_ThumbBarSetImageList(ITaskbarList3* This,HWND hwnd,HIMAGELIST himl) { return This->lpVtbl->ThumbBarSetImageList(This,hwnd,himl); } static FORCEINLINE HRESULT ITaskbarList3_SetOverlayIcon(ITaskbarList3* This,HWND hwnd,HICON hIcon,LPCWSTR pszDescription) { return This->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription); } static FORCEINLINE HRESULT ITaskbarList3_SetThumbnailTooltip(ITaskbarList3* This,HWND hwnd,LPCWSTR pszTip) { return This->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip); } static FORCEINLINE HRESULT ITaskbarList3_SetThumbnailClip(ITaskbarList3* This,HWND hwnd,RECT *prcClip) { return This->lpVtbl->SetThumbnailClip(This,hwnd,prcClip); } #endif #endif #endif #endif /* __ITaskbarList3_INTERFACE_DEFINED__ */ /***************************************************************************** * ITaskbarList4 interface */ #ifndef __ITaskbarList4_INTERFACE_DEFINED__ #define __ITaskbarList4_INTERFACE_DEFINED__ typedef enum STPFLAG { STPF_NONE = 0x0, STPF_USEAPPTHUMBNAILALWAYS = 0x1, STPF_USEAPPTHUMBNAILWHENACTIVE = 0x2, STPF_USEAPPPEEKALWAYS = 0x4, STPF_USEAPPPEEKWHENACTIVE = 0x8 } STPFLAG; DEFINE_ENUM_FLAG_OPERATORS(STPFLAG) DEFINE_GUID(IID_ITaskbarList4, 0xc43dc798, 0x95d1, 0x4bea, 0x90,0x30, 0xbb,0x99,0xe2,0x98,0x3a,0x1a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c43dc798-95d1-4bea-9030-bb99e2983a1a") ITaskbarList4 : public ITaskbarList3 { virtual HRESULT STDMETHODCALLTYPE SetTabProperties( HWND hwndTab, STPFLAG stpFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList4, 0xc43dc798, 0x95d1, 0x4bea, 0x90,0x30, 0xbb,0x99,0xe2,0x98,0x3a,0x1a) #endif #else typedef struct ITaskbarList4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList4 *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList4 *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList4 *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList4 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList4 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList4 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList4 *This, HWND hwnd); /*** ITaskbarList2 methods ***/ HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( ITaskbarList4 *This, HWND hwnd, WINBOOL fFullscreen); /*** ITaskbarList3 methods ***/ HRESULT (STDMETHODCALLTYPE *SetProgressValue)( ITaskbarList4 *This, HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal); HRESULT (STDMETHODCALLTYPE *SetProgressState)( ITaskbarList4 *This, HWND hwnd, TBPFLAG tbpFlags); HRESULT (STDMETHODCALLTYPE *RegisterTab)( ITaskbarList4 *This, HWND hwndTab, HWND hwndMDI); HRESULT (STDMETHODCALLTYPE *UnregisterTab)( ITaskbarList4 *This, HWND hwndTab); HRESULT (STDMETHODCALLTYPE *SetTabOrder)( ITaskbarList4 *This, HWND hwndTab, HWND hwndInsertBefore); HRESULT (STDMETHODCALLTYPE *SetTabActive)( ITaskbarList4 *This, HWND hwndTab, HWND hwndMDI, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ThumbBarAddButtons)( ITaskbarList4 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarUpdateButtons)( ITaskbarList4 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarSetImageList)( ITaskbarList4 *This, HWND hwnd, HIMAGELIST himl); HRESULT (STDMETHODCALLTYPE *SetOverlayIcon)( ITaskbarList4 *This, HWND hwnd, HICON hIcon, LPCWSTR pszDescription); HRESULT (STDMETHODCALLTYPE *SetThumbnailTooltip)( ITaskbarList4 *This, HWND hwnd, LPCWSTR pszTip); HRESULT (STDMETHODCALLTYPE *SetThumbnailClip)( ITaskbarList4 *This, HWND hwnd, RECT *prcClip); /*** ITaskbarList4 methods ***/ HRESULT (STDMETHODCALLTYPE *SetTabProperties)( ITaskbarList4 *This, HWND hwndTab, STPFLAG stpFlags); END_INTERFACE } ITaskbarList4Vtbl; interface ITaskbarList4 { CONST_VTBL ITaskbarList4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList4_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList4_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList4_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList4_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList4_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList4_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList4_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) /*** ITaskbarList2 methods ***/ #define ITaskbarList4_MarkFullscreenWindow(This,hwnd,fFullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen) /*** ITaskbarList3 methods ***/ #define ITaskbarList4_SetProgressValue(This,hwnd,ullCompleted,ullTotal) (This)->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal) #define ITaskbarList4_SetProgressState(This,hwnd,tbpFlags) (This)->lpVtbl->SetProgressState(This,hwnd,tbpFlags) #define ITaskbarList4_RegisterTab(This,hwndTab,hwndMDI) (This)->lpVtbl->RegisterTab(This,hwndTab,hwndMDI) #define ITaskbarList4_UnregisterTab(This,hwndTab) (This)->lpVtbl->UnregisterTab(This,hwndTab) #define ITaskbarList4_SetTabOrder(This,hwndTab,hwndInsertBefore) (This)->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore) #define ITaskbarList4_SetTabActive(This,hwndTab,hwndMDI,dwReserved) (This)->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved) #define ITaskbarList4_ThumbBarAddButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton) #define ITaskbarList4_ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) #define ITaskbarList4_ThumbBarSetImageList(This,hwnd,himl) (This)->lpVtbl->ThumbBarSetImageList(This,hwnd,himl) #define ITaskbarList4_SetOverlayIcon(This,hwnd,hIcon,pszDescription) (This)->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription) #define ITaskbarList4_SetThumbnailTooltip(This,hwnd,pszTip) (This)->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip) #define ITaskbarList4_SetThumbnailClip(This,hwnd,prcClip) (This)->lpVtbl->SetThumbnailClip(This,hwnd,prcClip) /*** ITaskbarList4 methods ***/ #define ITaskbarList4_SetTabProperties(This,hwndTab,stpFlags) (This)->lpVtbl->SetTabProperties(This,hwndTab,stpFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITaskbarList4_QueryInterface(ITaskbarList4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITaskbarList4_AddRef(ITaskbarList4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITaskbarList4_Release(ITaskbarList4* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static FORCEINLINE HRESULT ITaskbarList4_HrInit(ITaskbarList4* This) { return This->lpVtbl->HrInit(This); } static FORCEINLINE HRESULT ITaskbarList4_AddTab(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList4_DeleteTab(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList4_ActivateTab(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static FORCEINLINE HRESULT ITaskbarList4_SetActiveAlt(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } /*** ITaskbarList2 methods ***/ static FORCEINLINE HRESULT ITaskbarList4_MarkFullscreenWindow(ITaskbarList4* This,HWND hwnd,WINBOOL fFullscreen) { return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen); } /*** ITaskbarList3 methods ***/ static FORCEINLINE HRESULT ITaskbarList4_SetProgressValue(ITaskbarList4* This,HWND hwnd,ULONGLONG ullCompleted,ULONGLONG ullTotal) { return This->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal); } static FORCEINLINE HRESULT ITaskbarList4_SetProgressState(ITaskbarList4* This,HWND hwnd,TBPFLAG tbpFlags) { return This->lpVtbl->SetProgressState(This,hwnd,tbpFlags); } static FORCEINLINE HRESULT ITaskbarList4_RegisterTab(ITaskbarList4* This,HWND hwndTab,HWND hwndMDI) { return This->lpVtbl->RegisterTab(This,hwndTab,hwndMDI); } static FORCEINLINE HRESULT ITaskbarList4_UnregisterTab(ITaskbarList4* This,HWND hwndTab) { return This->lpVtbl->UnregisterTab(This,hwndTab); } static FORCEINLINE HRESULT ITaskbarList4_SetTabOrder(ITaskbarList4* This,HWND hwndTab,HWND hwndInsertBefore) { return This->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore); } static FORCEINLINE HRESULT ITaskbarList4_SetTabActive(ITaskbarList4* This,HWND hwndTab,HWND hwndMDI,DWORD dwReserved) { return This->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved); } static FORCEINLINE HRESULT ITaskbarList4_ThumbBarAddButtons(ITaskbarList4* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton); } static FORCEINLINE HRESULT ITaskbarList4_ThumbBarUpdateButtons(ITaskbarList4* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton); } static FORCEINLINE HRESULT ITaskbarList4_ThumbBarSetImageList(ITaskbarList4* This,HWND hwnd,HIMAGELIST himl) { return This->lpVtbl->ThumbBarSetImageList(This,hwnd,himl); } static FORCEINLINE HRESULT ITaskbarList4_SetOverlayIcon(ITaskbarList4* This,HWND hwnd,HICON hIcon,LPCWSTR pszDescription) { return This->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription); } static FORCEINLINE HRESULT ITaskbarList4_SetThumbnailTooltip(ITaskbarList4* This,HWND hwnd,LPCWSTR pszTip) { return This->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip); } static FORCEINLINE HRESULT ITaskbarList4_SetThumbnailClip(ITaskbarList4* This,HWND hwnd,RECT *prcClip) { return This->lpVtbl->SetThumbnailClip(This,hwnd,prcClip); } /*** ITaskbarList4 methods ***/ static FORCEINLINE HRESULT ITaskbarList4_SetTabProperties(ITaskbarList4* This,HWND hwndTab,STPFLAG stpFlags) { return This->lpVtbl->SetTabProperties(This,hwndTab,stpFlags); } #endif #endif #endif #endif /* __ITaskbarList4_INTERFACE_DEFINED__ */ /***************************************************************************** * IStartMenuPinnedList interface */ #ifndef __IStartMenuPinnedList_INTERFACE_DEFINED__ #define __IStartMenuPinnedList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IStartMenuPinnedList, 0x4cd19ada, 0x25a5, 0x4a32, 0xb3,0xb7, 0x34,0x7b,0xee,0x5b,0xe3,0x6b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4cd19ada-25a5-4a32-b3b7-347bee5be36b") IStartMenuPinnedList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RemoveFromList( IShellItem *pitem) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IStartMenuPinnedList, 0x4cd19ada, 0x25a5, 0x4a32, 0xb3,0xb7, 0x34,0x7b,0xee,0x5b,0xe3,0x6b) #endif #else typedef struct IStartMenuPinnedListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IStartMenuPinnedList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IStartMenuPinnedList *This); ULONG (STDMETHODCALLTYPE *Release)( IStartMenuPinnedList *This); /*** IStartMenuPinnedList methods ***/ HRESULT (STDMETHODCALLTYPE *RemoveFromList)( IStartMenuPinnedList *This, IShellItem *pitem); END_INTERFACE } IStartMenuPinnedListVtbl; interface IStartMenuPinnedList { CONST_VTBL IStartMenuPinnedListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IStartMenuPinnedList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IStartMenuPinnedList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IStartMenuPinnedList_Release(This) (This)->lpVtbl->Release(This) /*** IStartMenuPinnedList methods ***/ #define IStartMenuPinnedList_RemoveFromList(This,pitem) (This)->lpVtbl->RemoveFromList(This,pitem) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IStartMenuPinnedList_QueryInterface(IStartMenuPinnedList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IStartMenuPinnedList_AddRef(IStartMenuPinnedList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IStartMenuPinnedList_Release(IStartMenuPinnedList* This) { return This->lpVtbl->Release(This); } /*** IStartMenuPinnedList methods ***/ static FORCEINLINE HRESULT IStartMenuPinnedList_RemoveFromList(IStartMenuPinnedList* This,IShellItem *pitem) { return This->lpVtbl->RemoveFromList(This,pitem); } #endif #endif #endif #endif /* __IStartMenuPinnedList_INTERFACE_DEFINED__ */ /***************************************************************************** * ICDBurn interface */ #ifndef __ICDBurn_INTERFACE_DEFINED__ #define __ICDBurn_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICDBurn, 0x3d73a659, 0xe5d0, 0x4d42, 0xaf,0xc0, 0x51,0x21,0xba,0x42,0x5c,0x8d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3d73a659-e5d0-4d42-afc0-5121ba425c8d") ICDBurn : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetRecorderDriveLetter( LPWSTR pszDrive, UINT cch) = 0; virtual HRESULT STDMETHODCALLTYPE Burn( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE HasRecordableDrive( WINBOOL *pfHasRecorder) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICDBurn, 0x3d73a659, 0xe5d0, 0x4d42, 0xaf,0xc0, 0x51,0x21,0xba,0x42,0x5c,0x8d) #endif #else typedef struct ICDBurnVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICDBurn *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICDBurn *This); ULONG (STDMETHODCALLTYPE *Release)( ICDBurn *This); /*** ICDBurn methods ***/ HRESULT (STDMETHODCALLTYPE *GetRecorderDriveLetter)( ICDBurn *This, LPWSTR pszDrive, UINT cch); HRESULT (STDMETHODCALLTYPE *Burn)( ICDBurn *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *HasRecordableDrive)( ICDBurn *This, WINBOOL *pfHasRecorder); END_INTERFACE } ICDBurnVtbl; interface ICDBurn { CONST_VTBL ICDBurnVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICDBurn_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICDBurn_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICDBurn_Release(This) (This)->lpVtbl->Release(This) /*** ICDBurn methods ***/ #define ICDBurn_GetRecorderDriveLetter(This,pszDrive,cch) (This)->lpVtbl->GetRecorderDriveLetter(This,pszDrive,cch) #define ICDBurn_Burn(This,hwnd) (This)->lpVtbl->Burn(This,hwnd) #define ICDBurn_HasRecordableDrive(This,pfHasRecorder) (This)->lpVtbl->HasRecordableDrive(This,pfHasRecorder) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICDBurn_QueryInterface(ICDBurn* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICDBurn_AddRef(ICDBurn* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICDBurn_Release(ICDBurn* This) { return This->lpVtbl->Release(This); } /*** ICDBurn methods ***/ static FORCEINLINE HRESULT ICDBurn_GetRecorderDriveLetter(ICDBurn* This,LPWSTR pszDrive,UINT cch) { return This->lpVtbl->GetRecorderDriveLetter(This,pszDrive,cch); } static FORCEINLINE HRESULT ICDBurn_Burn(ICDBurn* This,HWND hwnd) { return This->lpVtbl->Burn(This,hwnd); } static FORCEINLINE HRESULT ICDBurn_HasRecordableDrive(ICDBurn* This,WINBOOL *pfHasRecorder) { return This->lpVtbl->HasRecordableDrive(This,pfHasRecorder); } #endif #endif #endif #endif /* __ICDBurn_INTERFACE_DEFINED__ */ #define IDD_WIZEXTN_FIRST 0x5000 #define IDD_WIZEXTN_LAST 0x5100 /***************************************************************************** * IWizardSite interface */ #ifndef __IWizardSite_INTERFACE_DEFINED__ #define __IWizardSite_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWizardSite, 0x88960f5b, 0x422f, 0x4e7b, 0x80,0x13, 0x73,0x41,0x53,0x81,0xc3,0xc3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("88960f5b-422f-4e7b-8013-73415381c3c3") IWizardSite : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPreviousPage( HPROPSHEETPAGE *phpage) = 0; virtual HRESULT STDMETHODCALLTYPE GetNextPage( HPROPSHEETPAGE *phpage) = 0; virtual HRESULT STDMETHODCALLTYPE GetCancelledPage( HPROPSHEETPAGE *phpage) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWizardSite, 0x88960f5b, 0x422f, 0x4e7b, 0x80,0x13, 0x73,0x41,0x53,0x81,0xc3,0xc3) #endif #else typedef struct IWizardSiteVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWizardSite *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWizardSite *This); ULONG (STDMETHODCALLTYPE *Release)( IWizardSite *This); /*** IWizardSite methods ***/ HRESULT (STDMETHODCALLTYPE *GetPreviousPage)( IWizardSite *This, HPROPSHEETPAGE *phpage); HRESULT (STDMETHODCALLTYPE *GetNextPage)( IWizardSite *This, HPROPSHEETPAGE *phpage); HRESULT (STDMETHODCALLTYPE *GetCancelledPage)( IWizardSite *This, HPROPSHEETPAGE *phpage); END_INTERFACE } IWizardSiteVtbl; interface IWizardSite { CONST_VTBL IWizardSiteVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWizardSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWizardSite_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWizardSite_Release(This) (This)->lpVtbl->Release(This) /*** IWizardSite methods ***/ #define IWizardSite_GetPreviousPage(This,phpage) (This)->lpVtbl->GetPreviousPage(This,phpage) #define IWizardSite_GetNextPage(This,phpage) (This)->lpVtbl->GetNextPage(This,phpage) #define IWizardSite_GetCancelledPage(This,phpage) (This)->lpVtbl->GetCancelledPage(This,phpage) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWizardSite_QueryInterface(IWizardSite* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWizardSite_AddRef(IWizardSite* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWizardSite_Release(IWizardSite* This) { return This->lpVtbl->Release(This); } /*** IWizardSite methods ***/ static FORCEINLINE HRESULT IWizardSite_GetPreviousPage(IWizardSite* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetPreviousPage(This,phpage); } static FORCEINLINE HRESULT IWizardSite_GetNextPage(IWizardSite* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetNextPage(This,phpage); } static FORCEINLINE HRESULT IWizardSite_GetCancelledPage(IWizardSite* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetCancelledPage(This,phpage); } #endif #endif #endif #endif /* __IWizardSite_INTERFACE_DEFINED__ */ #define SID_WizardSite IID_IWizardSite /***************************************************************************** * IWizardExtension interface */ #ifndef __IWizardExtension_INTERFACE_DEFINED__ #define __IWizardExtension_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWizardExtension, 0xc02ea696, 0x86cc, 0x491e, 0x9b,0x23, 0x74,0x39,0x4a,0x04,0x44,0xa8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c02ea696-86cc-491e-9b23-74394a0444a8") IWizardExtension : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddPages( HPROPSHEETPAGE *aPages, UINT cPages, UINT *pnPagesAdded) = 0; virtual HRESULT STDMETHODCALLTYPE GetFirstPage( HPROPSHEETPAGE *phpage) = 0; virtual HRESULT STDMETHODCALLTYPE GetLastPage( HPROPSHEETPAGE *phpage) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWizardExtension, 0xc02ea696, 0x86cc, 0x491e, 0x9b,0x23, 0x74,0x39,0x4a,0x04,0x44,0xa8) #endif #else typedef struct IWizardExtensionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWizardExtension *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWizardExtension *This); ULONG (STDMETHODCALLTYPE *Release)( IWizardExtension *This); /*** IWizardExtension methods ***/ HRESULT (STDMETHODCALLTYPE *AddPages)( IWizardExtension *This, HPROPSHEETPAGE *aPages, UINT cPages, UINT *pnPagesAdded); HRESULT (STDMETHODCALLTYPE *GetFirstPage)( IWizardExtension *This, HPROPSHEETPAGE *phpage); HRESULT (STDMETHODCALLTYPE *GetLastPage)( IWizardExtension *This, HPROPSHEETPAGE *phpage); END_INTERFACE } IWizardExtensionVtbl; interface IWizardExtension { CONST_VTBL IWizardExtensionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWizardExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWizardExtension_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWizardExtension_Release(This) (This)->lpVtbl->Release(This) /*** IWizardExtension methods ***/ #define IWizardExtension_AddPages(This,aPages,cPages,pnPagesAdded) (This)->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded) #define IWizardExtension_GetFirstPage(This,phpage) (This)->lpVtbl->GetFirstPage(This,phpage) #define IWizardExtension_GetLastPage(This,phpage) (This)->lpVtbl->GetLastPage(This,phpage) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWizardExtension_QueryInterface(IWizardExtension* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWizardExtension_AddRef(IWizardExtension* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWizardExtension_Release(IWizardExtension* This) { return This->lpVtbl->Release(This); } /*** IWizardExtension methods ***/ static FORCEINLINE HRESULT IWizardExtension_AddPages(IWizardExtension* This,HPROPSHEETPAGE *aPages,UINT cPages,UINT *pnPagesAdded) { return This->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded); } static FORCEINLINE HRESULT IWizardExtension_GetFirstPage(IWizardExtension* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetFirstPage(This,phpage); } static FORCEINLINE HRESULT IWizardExtension_GetLastPage(IWizardExtension* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetLastPage(This,phpage); } #endif #endif #endif #endif /* __IWizardExtension_INTERFACE_DEFINED__ */ /***************************************************************************** * IWebWizardExtension interface */ #ifndef __IWebWizardExtension_INTERFACE_DEFINED__ #define __IWebWizardExtension_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWebWizardExtension, 0x0e6b3f66, 0x98d1, 0x48c0, 0xa2,0x22, 0xfb,0xde,0x74,0xe2,0xfb,0xc5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0e6b3f66-98d1-48c0-a222-fbde74e2fbc5") IWebWizardExtension : public IWizardExtension { virtual HRESULT STDMETHODCALLTYPE SetInitialURL( LPCWSTR pszURL) = 0; virtual HRESULT STDMETHODCALLTYPE SetErrorURL( LPCWSTR pszErrorURL) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWebWizardExtension, 0x0e6b3f66, 0x98d1, 0x48c0, 0xa2,0x22, 0xfb,0xde,0x74,0xe2,0xfb,0xc5) #endif #else typedef struct IWebWizardExtensionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWebWizardExtension *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWebWizardExtension *This); ULONG (STDMETHODCALLTYPE *Release)( IWebWizardExtension *This); /*** IWizardExtension methods ***/ HRESULT (STDMETHODCALLTYPE *AddPages)( IWebWizardExtension *This, HPROPSHEETPAGE *aPages, UINT cPages, UINT *pnPagesAdded); HRESULT (STDMETHODCALLTYPE *GetFirstPage)( IWebWizardExtension *This, HPROPSHEETPAGE *phpage); HRESULT (STDMETHODCALLTYPE *GetLastPage)( IWebWizardExtension *This, HPROPSHEETPAGE *phpage); /*** IWebWizardExtension methods ***/ HRESULT (STDMETHODCALLTYPE *SetInitialURL)( IWebWizardExtension *This, LPCWSTR pszURL); HRESULT (STDMETHODCALLTYPE *SetErrorURL)( IWebWizardExtension *This, LPCWSTR pszErrorURL); END_INTERFACE } IWebWizardExtensionVtbl; interface IWebWizardExtension { CONST_VTBL IWebWizardExtensionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWebWizardExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWebWizardExtension_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWebWizardExtension_Release(This) (This)->lpVtbl->Release(This) /*** IWizardExtension methods ***/ #define IWebWizardExtension_AddPages(This,aPages,cPages,pnPagesAdded) (This)->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded) #define IWebWizardExtension_GetFirstPage(This,phpage) (This)->lpVtbl->GetFirstPage(This,phpage) #define IWebWizardExtension_GetLastPage(This,phpage) (This)->lpVtbl->GetLastPage(This,phpage) /*** IWebWizardExtension methods ***/ #define IWebWizardExtension_SetInitialURL(This,pszURL) (This)->lpVtbl->SetInitialURL(This,pszURL) #define IWebWizardExtension_SetErrorURL(This,pszErrorURL) (This)->lpVtbl->SetErrorURL(This,pszErrorURL) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWebWizardExtension_QueryInterface(IWebWizardExtension* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWebWizardExtension_AddRef(IWebWizardExtension* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWebWizardExtension_Release(IWebWizardExtension* This) { return This->lpVtbl->Release(This); } /*** IWizardExtension methods ***/ static FORCEINLINE HRESULT IWebWizardExtension_AddPages(IWebWizardExtension* This,HPROPSHEETPAGE *aPages,UINT cPages,UINT *pnPagesAdded) { return This->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded); } static FORCEINLINE HRESULT IWebWizardExtension_GetFirstPage(IWebWizardExtension* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetFirstPage(This,phpage); } static FORCEINLINE HRESULT IWebWizardExtension_GetLastPage(IWebWizardExtension* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetLastPage(This,phpage); } /*** IWebWizardExtension methods ***/ static FORCEINLINE HRESULT IWebWizardExtension_SetInitialURL(IWebWizardExtension* This,LPCWSTR pszURL) { return This->lpVtbl->SetInitialURL(This,pszURL); } static FORCEINLINE HRESULT IWebWizardExtension_SetErrorURL(IWebWizardExtension* This,LPCWSTR pszErrorURL) { return This->lpVtbl->SetErrorURL(This,pszErrorURL); } #endif #endif #endif #endif /* __IWebWizardExtension_INTERFACE_DEFINED__ */ #define SID_WebWizardHost IID_IWebWizardExtension #define SHPWHF_NORECOMPRESS 0x00000001 #define SHPWHF_NONETPLACECREATE 0x00000002 #define SHPWHF_NOFILESELECTOR 0x00000004 #define SHPWHF_USEMRU 0x00000008 #if NTDDI_VERSION >= NTDDI_VISTA #define SHPWHF_ANYLOCATION 0x00000100 #endif #define SHPWHF_VALIDATEVIAWEBFOLDERS 0x00010000 #ifndef __IXMLDOMDocument_FWD_DEFINED__ #define __IXMLDOMDocument_FWD_DEFINED__ typedef interface IXMLDOMDocument IXMLDOMDocument; #ifdef __cplusplus interface IXMLDOMDocument; #endif /* __cplusplus */ #endif /***************************************************************************** * IPublishingWizard interface */ #ifndef __IPublishingWizard_INTERFACE_DEFINED__ #define __IPublishingWizard_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPublishingWizard, 0xaa9198bb, 0xccec, 0x472d, 0xbe,0xed, 0x19,0xa4,0xf6,0x73,0x3f,0x7a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("aa9198bb-ccec-472d-beed-19a4f6733f7a") IPublishingWizard : public IWizardExtension { virtual HRESULT STDMETHODCALLTYPE Initialize( IDataObject *pdo, DWORD dwOptions, LPCWSTR pszServiceScope) = 0; virtual HRESULT STDMETHODCALLTYPE GetTransferManifest( HRESULT *phrFromTransfer, IXMLDOMDocument **pdocManifest) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPublishingWizard, 0xaa9198bb, 0xccec, 0x472d, 0xbe,0xed, 0x19,0xa4,0xf6,0x73,0x3f,0x7a) #endif #else typedef struct IPublishingWizardVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPublishingWizard *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPublishingWizard *This); ULONG (STDMETHODCALLTYPE *Release)( IPublishingWizard *This); /*** IWizardExtension methods ***/ HRESULT (STDMETHODCALLTYPE *AddPages)( IPublishingWizard *This, HPROPSHEETPAGE *aPages, UINT cPages, UINT *pnPagesAdded); HRESULT (STDMETHODCALLTYPE *GetFirstPage)( IPublishingWizard *This, HPROPSHEETPAGE *phpage); HRESULT (STDMETHODCALLTYPE *GetLastPage)( IPublishingWizard *This, HPROPSHEETPAGE *phpage); /*** IPublishingWizard methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPublishingWizard *This, IDataObject *pdo, DWORD dwOptions, LPCWSTR pszServiceScope); HRESULT (STDMETHODCALLTYPE *GetTransferManifest)( IPublishingWizard *This, HRESULT *phrFromTransfer, IXMLDOMDocument **pdocManifest); END_INTERFACE } IPublishingWizardVtbl; interface IPublishingWizard { CONST_VTBL IPublishingWizardVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPublishingWizard_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPublishingWizard_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPublishingWizard_Release(This) (This)->lpVtbl->Release(This) /*** IWizardExtension methods ***/ #define IPublishingWizard_AddPages(This,aPages,cPages,pnPagesAdded) (This)->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded) #define IPublishingWizard_GetFirstPage(This,phpage) (This)->lpVtbl->GetFirstPage(This,phpage) #define IPublishingWizard_GetLastPage(This,phpage) (This)->lpVtbl->GetLastPage(This,phpage) /*** IPublishingWizard methods ***/ #define IPublishingWizard_Initialize(This,pdo,dwOptions,pszServiceScope) (This)->lpVtbl->Initialize(This,pdo,dwOptions,pszServiceScope) #define IPublishingWizard_GetTransferManifest(This,phrFromTransfer,pdocManifest) (This)->lpVtbl->GetTransferManifest(This,phrFromTransfer,pdocManifest) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPublishingWizard_QueryInterface(IPublishingWizard* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPublishingWizard_AddRef(IPublishingWizard* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPublishingWizard_Release(IPublishingWizard* This) { return This->lpVtbl->Release(This); } /*** IWizardExtension methods ***/ static FORCEINLINE HRESULT IPublishingWizard_AddPages(IPublishingWizard* This,HPROPSHEETPAGE *aPages,UINT cPages,UINT *pnPagesAdded) { return This->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded); } static FORCEINLINE HRESULT IPublishingWizard_GetFirstPage(IPublishingWizard* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetFirstPage(This,phpage); } static FORCEINLINE HRESULT IPublishingWizard_GetLastPage(IPublishingWizard* This,HPROPSHEETPAGE *phpage) { return This->lpVtbl->GetLastPage(This,phpage); } /*** IPublishingWizard methods ***/ static FORCEINLINE HRESULT IPublishingWizard_Initialize(IPublishingWizard* This,IDataObject *pdo,DWORD dwOptions,LPCWSTR pszServiceScope) { return This->lpVtbl->Initialize(This,pdo,dwOptions,pszServiceScope); } static FORCEINLINE HRESULT IPublishingWizard_GetTransferManifest(IPublishingWizard* This,HRESULT *phrFromTransfer,IXMLDOMDocument **pdocManifest) { return This->lpVtbl->GetTransferManifest(This,phrFromTransfer,pdocManifest); } #endif #endif #endif #endif /* __IPublishingWizard_INTERFACE_DEFINED__ */ /***************************************************************************** * IFolderViewHost interface */ #ifndef __IFolderViewHost_INTERFACE_DEFINED__ #define __IFolderViewHost_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderViewHost, 0x1ea58f02, 0xd55a, 0x411d, 0xb0,0x9e, 0x9e,0x65,0xac,0x21,0x60,0x5b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1ea58f02-d55a-411d-b09e-9e65ac21605b") IFolderViewHost : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwndParent, IDataObject *pdo, RECT *prc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderViewHost, 0x1ea58f02, 0xd55a, 0x411d, 0xb0,0x9e, 0x9e,0x65,0xac,0x21,0x60,0x5b) #endif #else typedef struct IFolderViewHostVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderViewHost *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderViewHost *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderViewHost *This); /*** IFolderViewHost methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IFolderViewHost *This, HWND hwndParent, IDataObject *pdo, RECT *prc); END_INTERFACE } IFolderViewHostVtbl; interface IFolderViewHost { CONST_VTBL IFolderViewHostVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderViewHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderViewHost_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderViewHost_Release(This) (This)->lpVtbl->Release(This) /*** IFolderViewHost methods ***/ #define IFolderViewHost_Initialize(This,hwndParent,pdo,prc) (This)->lpVtbl->Initialize(This,hwndParent,pdo,prc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderViewHost_QueryInterface(IFolderViewHost* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderViewHost_AddRef(IFolderViewHost* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderViewHost_Release(IFolderViewHost* This) { return This->lpVtbl->Release(This); } /*** IFolderViewHost methods ***/ static FORCEINLINE HRESULT IFolderViewHost_Initialize(IFolderViewHost* This,HWND hwndParent,IDataObject *pdo,RECT *prc) { return This->lpVtbl->Initialize(This,hwndParent,pdo,prc); } #endif #endif #endif #endif /* __IFolderViewHost_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * IExplorerBrowserEvents interface */ #ifndef __IExplorerBrowserEvents_INTERFACE_DEFINED__ #define __IExplorerBrowserEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExplorerBrowserEvents, 0x361bbdc7, 0xe6ee, 0x4e13, 0xbe,0x58, 0x58,0xe2,0x24,0x0c,0x81,0x0f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("361bbdc7-e6ee-4e13-be58-58e2240c810f") IExplorerBrowserEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnNavigationPending( PCIDLIST_ABSOLUTE pidlFolder) = 0; virtual HRESULT STDMETHODCALLTYPE OnViewCreated( IShellView *psv) = 0; virtual HRESULT STDMETHODCALLTYPE OnNavigationComplete( PCIDLIST_ABSOLUTE pidlFolder) = 0; virtual HRESULT STDMETHODCALLTYPE OnNavigationFailed( PCIDLIST_ABSOLUTE pidlFolder) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerBrowserEvents, 0x361bbdc7, 0xe6ee, 0x4e13, 0xbe,0x58, 0x58,0xe2,0x24,0x0c,0x81,0x0f) #endif #else typedef struct IExplorerBrowserEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerBrowserEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerBrowserEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerBrowserEvents *This); /*** IExplorerBrowserEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnNavigationPending)( IExplorerBrowserEvents *This, PCIDLIST_ABSOLUTE pidlFolder); HRESULT (STDMETHODCALLTYPE *OnViewCreated)( IExplorerBrowserEvents *This, IShellView *psv); HRESULT (STDMETHODCALLTYPE *OnNavigationComplete)( IExplorerBrowserEvents *This, PCIDLIST_ABSOLUTE pidlFolder); HRESULT (STDMETHODCALLTYPE *OnNavigationFailed)( IExplorerBrowserEvents *This, PCIDLIST_ABSOLUTE pidlFolder); END_INTERFACE } IExplorerBrowserEventsVtbl; interface IExplorerBrowserEvents { CONST_VTBL IExplorerBrowserEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerBrowserEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerBrowserEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerBrowserEvents_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerBrowserEvents methods ***/ #define IExplorerBrowserEvents_OnNavigationPending(This,pidlFolder) (This)->lpVtbl->OnNavigationPending(This,pidlFolder) #define IExplorerBrowserEvents_OnViewCreated(This,psv) (This)->lpVtbl->OnViewCreated(This,psv) #define IExplorerBrowserEvents_OnNavigationComplete(This,pidlFolder) (This)->lpVtbl->OnNavigationComplete(This,pidlFolder) #define IExplorerBrowserEvents_OnNavigationFailed(This,pidlFolder) (This)->lpVtbl->OnNavigationFailed(This,pidlFolder) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExplorerBrowserEvents_QueryInterface(IExplorerBrowserEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExplorerBrowserEvents_AddRef(IExplorerBrowserEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExplorerBrowserEvents_Release(IExplorerBrowserEvents* This) { return This->lpVtbl->Release(This); } /*** IExplorerBrowserEvents methods ***/ static FORCEINLINE HRESULT IExplorerBrowserEvents_OnNavigationPending(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { return This->lpVtbl->OnNavigationPending(This,pidlFolder); } static FORCEINLINE HRESULT IExplorerBrowserEvents_OnViewCreated(IExplorerBrowserEvents* This,IShellView *psv) { return This->lpVtbl->OnViewCreated(This,psv); } static FORCEINLINE HRESULT IExplorerBrowserEvents_OnNavigationComplete(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { return This->lpVtbl->OnNavigationComplete(This,pidlFolder); } static FORCEINLINE HRESULT IExplorerBrowserEvents_OnNavigationFailed(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { return This->lpVtbl->OnNavigationFailed(This,pidlFolder); } #endif #endif #endif #endif /* __IExplorerBrowserEvents_INTERFACE_DEFINED__ */ typedef enum EXPLORER_BROWSER_OPTIONS { EBO_NONE = 0x0, EBO_NAVIGATEONCE = 0x1, EBO_SHOWFRAMES = 0x2, EBO_ALWAYSNAVIGATE = 0x4, EBO_NOTRAVELLOG = 0x8, EBO_NOWRAPPERWINDOW = 0x10, EBO_HTMLSHAREPOINTVIEW = 0x20, EBO_NOBORDER = 0x40, EBO_NOPERSISTVIEWSTATE = 0x80 } EXPLORER_BROWSER_OPTIONS; DEFINE_ENUM_FLAG_OPERATORS(EXPLORER_BROWSER_OPTIONS) typedef enum EXPLORER_BROWSER_FILL_FLAGS { EBF_NONE = 0x0, EBF_SELECTFROMDATAOBJECT = 0x100, EBF_NODROPTARGET = 0x200 } EXPLORER_BROWSER_FILL_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(EXPLORER_BROWSER_FILL_FLAGS) /***************************************************************************** * IExplorerBrowser interface */ #ifndef __IExplorerBrowser_INTERFACE_DEFINED__ #define __IExplorerBrowser_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExplorerBrowser, 0xdfd3b6b5, 0xc10c, 0x4be9, 0x85,0xf6, 0xa6,0x69,0x69,0xf4,0x02,0xf6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dfd3b6b5-c10c-4be9-85f6-a66969f402f6") IExplorerBrowser : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwndParent, const RECT *prc, const FOLDERSETTINGS *pfs) = 0; virtual HRESULT STDMETHODCALLTYPE Destroy( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetRect( HDWP *phdwp, RECT rcBrowser) = 0; virtual HRESULT STDMETHODCALLTYPE SetPropertyBag( LPCWSTR pszPropertyBag) = 0; virtual HRESULT STDMETHODCALLTYPE SetEmptyText( LPCWSTR pszEmptyText) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolderSettings( const FOLDERSETTINGS *pfs) = 0; virtual HRESULT STDMETHODCALLTYPE Advise( IExplorerBrowserEvents *psbe, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetOptions( EXPLORER_BROWSER_OPTIONS dwFlag) = 0; virtual HRESULT STDMETHODCALLTYPE GetOptions( EXPLORER_BROWSER_OPTIONS *pdwFlag) = 0; virtual HRESULT STDMETHODCALLTYPE BrowseToIDList( PCUIDLIST_RELATIVE pidl, UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE BrowseToObject( IUnknown *punk, UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE FillFromObject( IUnknown *punk, EXPLORER_BROWSER_FILL_FLAGS dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAll( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentView( REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerBrowser, 0xdfd3b6b5, 0xc10c, 0x4be9, 0x85,0xf6, 0xa6,0x69,0x69,0xf4,0x02,0xf6) #endif #else typedef struct IExplorerBrowserVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerBrowser *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerBrowser *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerBrowser *This); /*** IExplorerBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IExplorerBrowser *This, HWND hwndParent, const RECT *prc, const FOLDERSETTINGS *pfs); HRESULT (STDMETHODCALLTYPE *Destroy)( IExplorerBrowser *This); HRESULT (STDMETHODCALLTYPE *SetRect)( IExplorerBrowser *This, HDWP *phdwp, RECT rcBrowser); HRESULT (STDMETHODCALLTYPE *SetPropertyBag)( IExplorerBrowser *This, LPCWSTR pszPropertyBag); HRESULT (STDMETHODCALLTYPE *SetEmptyText)( IExplorerBrowser *This, LPCWSTR pszEmptyText); HRESULT (STDMETHODCALLTYPE *SetFolderSettings)( IExplorerBrowser *This, const FOLDERSETTINGS *pfs); HRESULT (STDMETHODCALLTYPE *Advise)( IExplorerBrowser *This, IExplorerBrowserEvents *psbe, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IExplorerBrowser *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IExplorerBrowser *This, EXPLORER_BROWSER_OPTIONS dwFlag); HRESULT (STDMETHODCALLTYPE *GetOptions)( IExplorerBrowser *This, EXPLORER_BROWSER_OPTIONS *pdwFlag); HRESULT (STDMETHODCALLTYPE *BrowseToIDList)( IExplorerBrowser *This, PCUIDLIST_RELATIVE pidl, UINT uFlags); HRESULT (STDMETHODCALLTYPE *BrowseToObject)( IExplorerBrowser *This, IUnknown *punk, UINT uFlags); HRESULT (STDMETHODCALLTYPE *FillFromObject)( IExplorerBrowser *This, IUnknown *punk, EXPLORER_BROWSER_FILL_FLAGS dwFlags); HRESULT (STDMETHODCALLTYPE *RemoveAll)( IExplorerBrowser *This); HRESULT (STDMETHODCALLTYPE *GetCurrentView)( IExplorerBrowser *This, REFIID riid, void **ppv); END_INTERFACE } IExplorerBrowserVtbl; interface IExplorerBrowser { CONST_VTBL IExplorerBrowserVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerBrowser_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerBrowser methods ***/ #define IExplorerBrowser_Initialize(This,hwndParent,prc,pfs) (This)->lpVtbl->Initialize(This,hwndParent,prc,pfs) #define IExplorerBrowser_Destroy(This) (This)->lpVtbl->Destroy(This) #define IExplorerBrowser_SetRect(This,phdwp,rcBrowser) (This)->lpVtbl->SetRect(This,phdwp,rcBrowser) #define IExplorerBrowser_SetPropertyBag(This,pszPropertyBag) (This)->lpVtbl->SetPropertyBag(This,pszPropertyBag) #define IExplorerBrowser_SetEmptyText(This,pszEmptyText) (This)->lpVtbl->SetEmptyText(This,pszEmptyText) #define IExplorerBrowser_SetFolderSettings(This,pfs) (This)->lpVtbl->SetFolderSettings(This,pfs) #define IExplorerBrowser_Advise(This,psbe,pdwCookie) (This)->lpVtbl->Advise(This,psbe,pdwCookie) #define IExplorerBrowser_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IExplorerBrowser_SetOptions(This,dwFlag) (This)->lpVtbl->SetOptions(This,dwFlag) #define IExplorerBrowser_GetOptions(This,pdwFlag) (This)->lpVtbl->GetOptions(This,pdwFlag) #define IExplorerBrowser_BrowseToIDList(This,pidl,uFlags) (This)->lpVtbl->BrowseToIDList(This,pidl,uFlags) #define IExplorerBrowser_BrowseToObject(This,punk,uFlags) (This)->lpVtbl->BrowseToObject(This,punk,uFlags) #define IExplorerBrowser_FillFromObject(This,punk,dwFlags) (This)->lpVtbl->FillFromObject(This,punk,dwFlags) #define IExplorerBrowser_RemoveAll(This) (This)->lpVtbl->RemoveAll(This) #define IExplorerBrowser_GetCurrentView(This,riid,ppv) (This)->lpVtbl->GetCurrentView(This,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExplorerBrowser_QueryInterface(IExplorerBrowser* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExplorerBrowser_AddRef(IExplorerBrowser* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExplorerBrowser_Release(IExplorerBrowser* This) { return This->lpVtbl->Release(This); } /*** IExplorerBrowser methods ***/ static FORCEINLINE HRESULT IExplorerBrowser_Initialize(IExplorerBrowser* This,HWND hwndParent,const RECT *prc,const FOLDERSETTINGS *pfs) { return This->lpVtbl->Initialize(This,hwndParent,prc,pfs); } static FORCEINLINE HRESULT IExplorerBrowser_Destroy(IExplorerBrowser* This) { return This->lpVtbl->Destroy(This); } static FORCEINLINE HRESULT IExplorerBrowser_SetRect(IExplorerBrowser* This,HDWP *phdwp,RECT rcBrowser) { return This->lpVtbl->SetRect(This,phdwp,rcBrowser); } static FORCEINLINE HRESULT IExplorerBrowser_SetPropertyBag(IExplorerBrowser* This,LPCWSTR pszPropertyBag) { return This->lpVtbl->SetPropertyBag(This,pszPropertyBag); } static FORCEINLINE HRESULT IExplorerBrowser_SetEmptyText(IExplorerBrowser* This,LPCWSTR pszEmptyText) { return This->lpVtbl->SetEmptyText(This,pszEmptyText); } static FORCEINLINE HRESULT IExplorerBrowser_SetFolderSettings(IExplorerBrowser* This,const FOLDERSETTINGS *pfs) { return This->lpVtbl->SetFolderSettings(This,pfs); } static FORCEINLINE HRESULT IExplorerBrowser_Advise(IExplorerBrowser* This,IExplorerBrowserEvents *psbe,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,psbe,pdwCookie); } static FORCEINLINE HRESULT IExplorerBrowser_Unadvise(IExplorerBrowser* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IExplorerBrowser_SetOptions(IExplorerBrowser* This,EXPLORER_BROWSER_OPTIONS dwFlag) { return This->lpVtbl->SetOptions(This,dwFlag); } static FORCEINLINE HRESULT IExplorerBrowser_GetOptions(IExplorerBrowser* This,EXPLORER_BROWSER_OPTIONS *pdwFlag) { return This->lpVtbl->GetOptions(This,pdwFlag); } static FORCEINLINE HRESULT IExplorerBrowser_BrowseToIDList(IExplorerBrowser* This,PCUIDLIST_RELATIVE pidl,UINT uFlags) { return This->lpVtbl->BrowseToIDList(This,pidl,uFlags); } static FORCEINLINE HRESULT IExplorerBrowser_BrowseToObject(IExplorerBrowser* This,IUnknown *punk,UINT uFlags) { return This->lpVtbl->BrowseToObject(This,punk,uFlags); } static FORCEINLINE HRESULT IExplorerBrowser_FillFromObject(IExplorerBrowser* This,IUnknown *punk,EXPLORER_BROWSER_FILL_FLAGS dwFlags) { return This->lpVtbl->FillFromObject(This,punk,dwFlags); } static FORCEINLINE HRESULT IExplorerBrowser_RemoveAll(IExplorerBrowser* This) { return This->lpVtbl->RemoveAll(This); } static FORCEINLINE HRESULT IExplorerBrowser_GetCurrentView(IExplorerBrowser* This,REFIID riid,void **ppv) { return This->lpVtbl->GetCurrentView(This,riid,ppv); } #endif #endif #endif #endif /* __IExplorerBrowser_INTERFACE_DEFINED__ */ /***************************************************************************** * IAccessibleObject interface */ #ifndef __IAccessibleObject_INTERFACE_DEFINED__ #define __IAccessibleObject_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAccessibleObject, 0x95a391c5, 0x9ed4, 0x4c28, 0x84,0x01, 0xab,0x9e,0x06,0x71,0x9e,0x11); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("95a391c5-9ed4-4c28-8401-ab9e06719e11") IAccessibleObject : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAccessibleName( LPCWSTR pszName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAccessibleObject, 0x95a391c5, 0x9ed4, 0x4c28, 0x84,0x01, 0xab,0x9e,0x06,0x71,0x9e,0x11) #endif #else typedef struct IAccessibleObjectVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAccessibleObject *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAccessibleObject *This); ULONG (STDMETHODCALLTYPE *Release)( IAccessibleObject *This); /*** IAccessibleObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetAccessibleName)( IAccessibleObject *This, LPCWSTR pszName); END_INTERFACE } IAccessibleObjectVtbl; interface IAccessibleObject { CONST_VTBL IAccessibleObjectVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAccessibleObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAccessibleObject_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAccessibleObject_Release(This) (This)->lpVtbl->Release(This) /*** IAccessibleObject methods ***/ #define IAccessibleObject_SetAccessibleName(This,pszName) (This)->lpVtbl->SetAccessibleName(This,pszName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAccessibleObject_QueryInterface(IAccessibleObject* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAccessibleObject_AddRef(IAccessibleObject* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAccessibleObject_Release(IAccessibleObject* This) { return This->lpVtbl->Release(This); } /*** IAccessibleObject methods ***/ static FORCEINLINE HRESULT IAccessibleObject_SetAccessibleName(IAccessibleObject* This,LPCWSTR pszName) { return This->lpVtbl->SetAccessibleName(This,pszName); } #endif #endif #endif #endif /* __IAccessibleObject_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IResultsFolder interface */ #ifndef __IResultsFolder_INTERFACE_DEFINED__ #define __IResultsFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IResultsFolder, 0x96e5ae6d, 0x6ae1, 0x4b1c, 0x90,0x0c, 0xc6,0x48,0x0e,0xaa,0x88,0x28); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96e5ae6d-6ae1-4b1c-900c-c6480eaa8828") IResultsFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE AddIDList( PCIDLIST_ABSOLUTE pidl, PITEMID_CHILD *ppidlAdded) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveIDList( PCIDLIST_ABSOLUTE pidl) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAll( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IResultsFolder, 0x96e5ae6d, 0x6ae1, 0x4b1c, 0x90,0x0c, 0xc6,0x48,0x0e,0xaa,0x88,0x28) #endif #else typedef struct IResultsFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IResultsFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IResultsFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IResultsFolder *This); /*** IResultsFolder methods ***/ HRESULT (STDMETHODCALLTYPE *AddItem)( IResultsFolder *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *AddIDList)( IResultsFolder *This, PCIDLIST_ABSOLUTE pidl, PITEMID_CHILD *ppidlAdded); HRESULT (STDMETHODCALLTYPE *RemoveItem)( IResultsFolder *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *RemoveIDList)( IResultsFolder *This, PCIDLIST_ABSOLUTE pidl); HRESULT (STDMETHODCALLTYPE *RemoveAll)( IResultsFolder *This); END_INTERFACE } IResultsFolderVtbl; interface IResultsFolder { CONST_VTBL IResultsFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IResultsFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IResultsFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IResultsFolder_Release(This) (This)->lpVtbl->Release(This) /*** IResultsFolder methods ***/ #define IResultsFolder_AddItem(This,psi) (This)->lpVtbl->AddItem(This,psi) #define IResultsFolder_AddIDList(This,pidl,ppidlAdded) (This)->lpVtbl->AddIDList(This,pidl,ppidlAdded) #define IResultsFolder_RemoveItem(This,psi) (This)->lpVtbl->RemoveItem(This,psi) #define IResultsFolder_RemoveIDList(This,pidl) (This)->lpVtbl->RemoveIDList(This,pidl) #define IResultsFolder_RemoveAll(This) (This)->lpVtbl->RemoveAll(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IResultsFolder_QueryInterface(IResultsFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IResultsFolder_AddRef(IResultsFolder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IResultsFolder_Release(IResultsFolder* This) { return This->lpVtbl->Release(This); } /*** IResultsFolder methods ***/ static FORCEINLINE HRESULT IResultsFolder_AddItem(IResultsFolder* This,IShellItem *psi) { return This->lpVtbl->AddItem(This,psi); } static FORCEINLINE HRESULT IResultsFolder_AddIDList(IResultsFolder* This,PCIDLIST_ABSOLUTE pidl,PITEMID_CHILD *ppidlAdded) { return This->lpVtbl->AddIDList(This,pidl,ppidlAdded); } static FORCEINLINE HRESULT IResultsFolder_RemoveItem(IResultsFolder* This,IShellItem *psi) { return This->lpVtbl->RemoveItem(This,psi); } static FORCEINLINE HRESULT IResultsFolder_RemoveIDList(IResultsFolder* This,PCIDLIST_ABSOLUTE pidl) { return This->lpVtbl->RemoveIDList(This,pidl); } static FORCEINLINE HRESULT IResultsFolder_RemoveAll(IResultsFolder* This) { return This->lpVtbl->RemoveAll(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IResultsFolder_RemoteAddIDList_Proxy( IResultsFolder* This, PCIDLIST_ABSOLUTE pidl, PITEMID_CHILD *ppidlAdded); void __RPC_STUB IResultsFolder_RemoteAddIDList_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IResultsFolder_AddIDList_Proxy( IResultsFolder* This, PCIDLIST_ABSOLUTE pidl, PITEMID_CHILD *ppidlAdded); HRESULT __RPC_STUB IResultsFolder_AddIDList_Stub( IResultsFolder* This, PCIDLIST_ABSOLUTE pidl, PITEMID_CHILD *ppidlAdded); #endif /* __IResultsFolder_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * IEnumObjects interface */ #ifndef __IEnumObjects_INTERFACE_DEFINED__ #define __IEnumObjects_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumObjects, 0x2c1c7e2e, 0x2d0e, 0x4059, 0x83,0x1e, 0x1e,0x6f,0x82,0x33,0x5c,0x2e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2c1c7e2e-2d0e-4059-831e-1e6f82335c2e") IEnumObjects : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumObjects **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumObjects, 0x2c1c7e2e, 0x2d0e, 0x4059, 0x83,0x1e, 0x1e,0x6f,0x82,0x33,0x5c,0x2e) #endif #else typedef struct IEnumObjectsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumObjects *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumObjects *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumObjects *This); /*** IEnumObjects methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumObjects *This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumObjects *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumObjects *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumObjects *This, IEnumObjects **ppenum); END_INTERFACE } IEnumObjectsVtbl; interface IEnumObjects { CONST_VTBL IEnumObjectsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumObjects_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumObjects_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumObjects_Release(This) (This)->lpVtbl->Release(This) /*** IEnumObjects methods ***/ #define IEnumObjects_Next(This,celt,riid,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,riid,rgelt,pceltFetched) #define IEnumObjects_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumObjects_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumObjects_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumObjects_QueryInterface(IEnumObjects* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumObjects_AddRef(IEnumObjects* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumObjects_Release(IEnumObjects* This) { return This->lpVtbl->Release(This); } /*** IEnumObjects methods ***/ static FORCEINLINE HRESULT IEnumObjects_Next(IEnumObjects* This,ULONG celt,REFIID riid,void **rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,riid,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumObjects_Skip(IEnumObjects* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumObjects_Reset(IEnumObjects* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumObjects_Clone(IEnumObjects* This,IEnumObjects **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumObjects_RemoteNext_Proxy( IEnumObjects* This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumObjects_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumObjects_Next_Proxy( IEnumObjects* This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumObjects_Next_Stub( IEnumObjects* This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); #endif /* __IEnumObjects_INTERFACE_DEFINED__ */ enum _OPPROGDLGF { OPPROGDLG_DEFAULT = 0x0, OPPROGDLG_ENABLEPAUSE = 0x80, OPPROGDLG_ALLOWUNDO = 0x100, OPPROGDLG_DONTDISPLAYSOURCEPATH = 0x200, OPPROGDLG_DONTDISPLAYDESTPATH = 0x400, OPPROGDLG_NOMULTIDAYESTIMATES = 0x800, OPPROGDLG_DONTDISPLAYLOCATIONS = 0x1000 }; typedef DWORD OPPROGDLGF; /***************************************************************************** * IOperationsProgressDialog interface */ #ifndef __IOperationsProgressDialog_INTERFACE_DEFINED__ #define __IOperationsProgressDialog_INTERFACE_DEFINED__ enum _PDMODE { PDM_DEFAULT = 0x0, PDM_RUN = 0x1, PDM_PREFLIGHT = 0x2, PDM_UNDOING = 0x4, PDM_ERRORSBLOCKING = 0x8, PDM_INDETERMINATE = 0x10 }; typedef DWORD PDMODE; typedef enum PDOPSTATUS { PDOPS_RUNNING = 1, PDOPS_PAUSED = 2, PDOPS_CANCELLED = 3, PDOPS_STOPPED = 4, PDOPS_ERRORS = 5 } PDOPSTATUS; DEFINE_GUID(IID_IOperationsProgressDialog, 0x0c9fb851, 0xe5c9, 0x43eb, 0xa3,0x70, 0xf0,0x67,0x7b,0x13,0x87,0x4c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0c9fb851-e5c9-43eb-a370-f0677b13874c") IOperationsProgressDialog : public IUnknown { virtual HRESULT STDMETHODCALLTYPE StartProgressDialog( HWND hwndOwner, OPPROGDLGF flags) = 0; virtual HRESULT STDMETHODCALLTYPE StopProgressDialog( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetOperation( SPACTION action) = 0; virtual HRESULT STDMETHODCALLTYPE SetMode( PDMODE mode) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateProgress( ULONGLONG ullPointsCurrent, ULONGLONG ullPointsTotal, ULONGLONG ullSizeCurrent, ULONGLONG ullSizeTotal, ULONGLONG ullItemsCurrent, ULONGLONG ullItemsTotal) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateLocations( IShellItem *psiSource, IShellItem *psiTarget, IShellItem *psiItem) = 0; virtual HRESULT STDMETHODCALLTYPE ResetTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE PauseTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE ResumeTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetMilliseconds( ULONGLONG *pullElapsed, ULONGLONG *pullRemaining) = 0; virtual HRESULT STDMETHODCALLTYPE GetOperationStatus( PDOPSTATUS *popstatus) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IOperationsProgressDialog, 0x0c9fb851, 0xe5c9, 0x43eb, 0xa3,0x70, 0xf0,0x67,0x7b,0x13,0x87,0x4c) #endif #else typedef struct IOperationsProgressDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IOperationsProgressDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IOperationsProgressDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IOperationsProgressDialog *This); /*** IOperationsProgressDialog methods ***/ HRESULT (STDMETHODCALLTYPE *StartProgressDialog)( IOperationsProgressDialog *This, HWND hwndOwner, OPPROGDLGF flags); HRESULT (STDMETHODCALLTYPE *StopProgressDialog)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *SetOperation)( IOperationsProgressDialog *This, SPACTION action); HRESULT (STDMETHODCALLTYPE *SetMode)( IOperationsProgressDialog *This, PDMODE mode); HRESULT (STDMETHODCALLTYPE *UpdateProgress)( IOperationsProgressDialog *This, ULONGLONG ullPointsCurrent, ULONGLONG ullPointsTotal, ULONGLONG ullSizeCurrent, ULONGLONG ullSizeTotal, ULONGLONG ullItemsCurrent, ULONGLONG ullItemsTotal); HRESULT (STDMETHODCALLTYPE *UpdateLocations)( IOperationsProgressDialog *This, IShellItem *psiSource, IShellItem *psiTarget, IShellItem *psiItem); HRESULT (STDMETHODCALLTYPE *ResetTimer)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *PauseTimer)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *ResumeTimer)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *GetMilliseconds)( IOperationsProgressDialog *This, ULONGLONG *pullElapsed, ULONGLONG *pullRemaining); HRESULT (STDMETHODCALLTYPE *GetOperationStatus)( IOperationsProgressDialog *This, PDOPSTATUS *popstatus); END_INTERFACE } IOperationsProgressDialogVtbl; interface IOperationsProgressDialog { CONST_VTBL IOperationsProgressDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IOperationsProgressDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IOperationsProgressDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IOperationsProgressDialog_Release(This) (This)->lpVtbl->Release(This) /*** IOperationsProgressDialog methods ***/ #define IOperationsProgressDialog_StartProgressDialog(This,hwndOwner,flags) (This)->lpVtbl->StartProgressDialog(This,hwndOwner,flags) #define IOperationsProgressDialog_StopProgressDialog(This) (This)->lpVtbl->StopProgressDialog(This) #define IOperationsProgressDialog_SetOperation(This,action) (This)->lpVtbl->SetOperation(This,action) #define IOperationsProgressDialog_SetMode(This,mode) (This)->lpVtbl->SetMode(This,mode) #define IOperationsProgressDialog_UpdateProgress(This,ullPointsCurrent,ullPointsTotal,ullSizeCurrent,ullSizeTotal,ullItemsCurrent,ullItemsTotal) (This)->lpVtbl->UpdateProgress(This,ullPointsCurrent,ullPointsTotal,ullSizeCurrent,ullSizeTotal,ullItemsCurrent,ullItemsTotal) #define IOperationsProgressDialog_UpdateLocations(This,psiSource,psiTarget,psiItem) (This)->lpVtbl->UpdateLocations(This,psiSource,psiTarget,psiItem) #define IOperationsProgressDialog_ResetTimer(This) (This)->lpVtbl->ResetTimer(This) #define IOperationsProgressDialog_PauseTimer(This) (This)->lpVtbl->PauseTimer(This) #define IOperationsProgressDialog_ResumeTimer(This) (This)->lpVtbl->ResumeTimer(This) #define IOperationsProgressDialog_GetMilliseconds(This,pullElapsed,pullRemaining) (This)->lpVtbl->GetMilliseconds(This,pullElapsed,pullRemaining) #define IOperationsProgressDialog_GetOperationStatus(This,popstatus) (This)->lpVtbl->GetOperationStatus(This,popstatus) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IOperationsProgressDialog_QueryInterface(IOperationsProgressDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IOperationsProgressDialog_AddRef(IOperationsProgressDialog* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IOperationsProgressDialog_Release(IOperationsProgressDialog* This) { return This->lpVtbl->Release(This); } /*** IOperationsProgressDialog methods ***/ static FORCEINLINE HRESULT IOperationsProgressDialog_StartProgressDialog(IOperationsProgressDialog* This,HWND hwndOwner,OPPROGDLGF flags) { return This->lpVtbl->StartProgressDialog(This,hwndOwner,flags); } static FORCEINLINE HRESULT IOperationsProgressDialog_StopProgressDialog(IOperationsProgressDialog* This) { return This->lpVtbl->StopProgressDialog(This); } static FORCEINLINE HRESULT IOperationsProgressDialog_SetOperation(IOperationsProgressDialog* This,SPACTION action) { return This->lpVtbl->SetOperation(This,action); } static FORCEINLINE HRESULT IOperationsProgressDialog_SetMode(IOperationsProgressDialog* This,PDMODE mode) { return This->lpVtbl->SetMode(This,mode); } static FORCEINLINE HRESULT IOperationsProgressDialog_UpdateProgress(IOperationsProgressDialog* This,ULONGLONG ullPointsCurrent,ULONGLONG ullPointsTotal,ULONGLONG ullSizeCurrent,ULONGLONG ullSizeTotal,ULONGLONG ullItemsCurrent,ULONGLONG ullItemsTotal) { return This->lpVtbl->UpdateProgress(This,ullPointsCurrent,ullPointsTotal,ullSizeCurrent,ullSizeTotal,ullItemsCurrent,ullItemsTotal); } static FORCEINLINE HRESULT IOperationsProgressDialog_UpdateLocations(IOperationsProgressDialog* This,IShellItem *psiSource,IShellItem *psiTarget,IShellItem *psiItem) { return This->lpVtbl->UpdateLocations(This,psiSource,psiTarget,psiItem); } static FORCEINLINE HRESULT IOperationsProgressDialog_ResetTimer(IOperationsProgressDialog* This) { return This->lpVtbl->ResetTimer(This); } static FORCEINLINE HRESULT IOperationsProgressDialog_PauseTimer(IOperationsProgressDialog* This) { return This->lpVtbl->PauseTimer(This); } static FORCEINLINE HRESULT IOperationsProgressDialog_ResumeTimer(IOperationsProgressDialog* This) { return This->lpVtbl->ResumeTimer(This); } static FORCEINLINE HRESULT IOperationsProgressDialog_GetMilliseconds(IOperationsProgressDialog* This,ULONGLONG *pullElapsed,ULONGLONG *pullRemaining) { return This->lpVtbl->GetMilliseconds(This,pullElapsed,pullRemaining); } static FORCEINLINE HRESULT IOperationsProgressDialog_GetOperationStatus(IOperationsProgressDialog* This,PDOPSTATUS *popstatus) { return This->lpVtbl->GetOperationStatus(This,popstatus); } #endif #endif #endif #endif /* __IOperationsProgressDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IIOCancelInformation interface */ #ifndef __IIOCancelInformation_INTERFACE_DEFINED__ #define __IIOCancelInformation_INTERFACE_DEFINED__ DEFINE_GUID(IID_IIOCancelInformation, 0xf5b0bf81, 0x8cb5, 0x4b1b, 0x94,0x49, 0x1a,0x15,0x9e,0x0c,0x73,0x3c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f5b0bf81-8cb5-4b1b-9449-1a159e0c733c") IIOCancelInformation : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetCancelInformation( DWORD dwThreadID, UINT uMsgCancel) = 0; virtual HRESULT STDMETHODCALLTYPE GetCancelInformation( DWORD *pdwThreadID, UINT *puMsgCancel) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IIOCancelInformation, 0xf5b0bf81, 0x8cb5, 0x4b1b, 0x94,0x49, 0x1a,0x15,0x9e,0x0c,0x73,0x3c) #endif #else typedef struct IIOCancelInformationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IIOCancelInformation *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IIOCancelInformation *This); ULONG (STDMETHODCALLTYPE *Release)( IIOCancelInformation *This); /*** IIOCancelInformation methods ***/ HRESULT (STDMETHODCALLTYPE *SetCancelInformation)( IIOCancelInformation *This, DWORD dwThreadID, UINT uMsgCancel); HRESULT (STDMETHODCALLTYPE *GetCancelInformation)( IIOCancelInformation *This, DWORD *pdwThreadID, UINT *puMsgCancel); END_INTERFACE } IIOCancelInformationVtbl; interface IIOCancelInformation { CONST_VTBL IIOCancelInformationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IIOCancelInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IIOCancelInformation_AddRef(This) (This)->lpVtbl->AddRef(This) #define IIOCancelInformation_Release(This) (This)->lpVtbl->Release(This) /*** IIOCancelInformation methods ***/ #define IIOCancelInformation_SetCancelInformation(This,dwThreadID,uMsgCancel) (This)->lpVtbl->SetCancelInformation(This,dwThreadID,uMsgCancel) #define IIOCancelInformation_GetCancelInformation(This,pdwThreadID,puMsgCancel) (This)->lpVtbl->GetCancelInformation(This,pdwThreadID,puMsgCancel) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IIOCancelInformation_QueryInterface(IIOCancelInformation* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IIOCancelInformation_AddRef(IIOCancelInformation* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IIOCancelInformation_Release(IIOCancelInformation* This) { return This->lpVtbl->Release(This); } /*** IIOCancelInformation methods ***/ static FORCEINLINE HRESULT IIOCancelInformation_SetCancelInformation(IIOCancelInformation* This,DWORD dwThreadID,UINT uMsgCancel) { return This->lpVtbl->SetCancelInformation(This,dwThreadID,uMsgCancel); } static FORCEINLINE HRESULT IIOCancelInformation_GetCancelInformation(IIOCancelInformation* This,DWORD *pdwThreadID,UINT *puMsgCancel) { return This->lpVtbl->GetCancelInformation(This,pdwThreadID,puMsgCancel); } #endif #endif #endif #endif /* __IIOCancelInformation_INTERFACE_DEFINED__ */ #define FOFX_NOSKIPJUNCTIONS 0x00010000 #define FOFX_PREFERHARDLINK 0x00020000 #define FOFX_SHOWELEVATIONPROMPT 0x00040000 #define FOFX_RECYCLEONDELETE 0x00080000 #define FOFX_EARLYFAILURE 0x00100000 #define FOFX_PRESERVEFILEEXTENSIONS 0x00200000 #define FOFX_KEEPNEWERFILE 0x00400000 #define FOFX_NOCOPYHOOKS 0x00800000 #define FOFX_NOMINIMIZEBOX 0x01000000 #define FOFX_MOVEACLSACROSSVOLUMES 0x02000000 #define FOFX_DONTDISPLAYSOURCEPATH 0x04000000 #define FOFX_DONTDISPLAYDESTPATH 0x08000000 #define FOFX_REQUIREELEVATION 0x10000000 #define FOFX_ADDUNDORECORD 0x20000000 #define FOFX_COPYASDOWNLOAD 0x40000000 #define FOFX_DONTDISPLAYLOCATIONS 0x80000000 /***************************************************************************** * IFileOperation interface */ #ifndef __IFileOperation_INTERFACE_DEFINED__ #define __IFileOperation_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileOperation, 0x947aab5f, 0x0a5c, 0x4c13, 0xb4,0xd6, 0x4b,0xf7,0x83,0x6f,0xc9,0xf8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("947aab5f-0a5c-4c13-b4d6-4bf7836fc9f8") IFileOperation : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( IFileOperationProgressSink *pfops, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetOperationFlags( DWORD dwOperationFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressMessage( LPCWSTR pszMessage) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressDialog( IOperationsProgressDialog *popd) = 0; virtual HRESULT STDMETHODCALLTYPE SetProperties( IPropertyChangeArray *pproparray) = 0; virtual HRESULT STDMETHODCALLTYPE SetOwnerWindow( HWND hwndOwner) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItem( IShellItem *psiItem) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItems( IUnknown *punkItems) = 0; virtual HRESULT STDMETHODCALLTYPE RenameItem( IShellItem *psiItem, LPCWSTR pszNewName, IFileOperationProgressSink *pfopsItem) = 0; virtual HRESULT STDMETHODCALLTYPE RenameItems( IUnknown *pUnkItems, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE MoveItem( IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, IFileOperationProgressSink *pfopsItem) = 0; virtual HRESULT STDMETHODCALLTYPE MoveItems( IUnknown *punkItems, IShellItem *psiDestinationFolder) = 0; virtual HRESULT STDMETHODCALLTYPE CopyItem( IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszCopyName, IFileOperationProgressSink *pfopsItem) = 0; virtual HRESULT STDMETHODCALLTYPE CopyItems( IUnknown *punkItems, IShellItem *psiDestinationFolder) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteItem( IShellItem *psiItem, IFileOperationProgressSink *pfopsItem) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteItems( IUnknown *punkItems) = 0; virtual HRESULT STDMETHODCALLTYPE NewItem( IShellItem *psiDestinationFolder, DWORD dwFileAttributes, LPCWSTR pszName, LPCWSTR pszTemplateName, IFileOperationProgressSink *pfopsItem) = 0; virtual HRESULT STDMETHODCALLTYPE PerformOperations( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetAnyOperationsAborted( WINBOOL *pfAnyOperationsAborted) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileOperation, 0x947aab5f, 0x0a5c, 0x4c13, 0xb4,0xd6, 0x4b,0xf7,0x83,0x6f,0xc9,0xf8) #endif #else typedef struct IFileOperationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileOperation *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileOperation *This); ULONG (STDMETHODCALLTYPE *Release)( IFileOperation *This); /*** IFileOperation methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( IFileOperation *This, IFileOperationProgressSink *pfops, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileOperation *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOperationFlags)( IFileOperation *This, DWORD dwOperationFlags); HRESULT (STDMETHODCALLTYPE *SetProgressMessage)( IFileOperation *This, LPCWSTR pszMessage); HRESULT (STDMETHODCALLTYPE *SetProgressDialog)( IFileOperation *This, IOperationsProgressDialog *popd); HRESULT (STDMETHODCALLTYPE *SetProperties)( IFileOperation *This, IPropertyChangeArray *pproparray); HRESULT (STDMETHODCALLTYPE *SetOwnerWindow)( IFileOperation *This, HWND hwndOwner); HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItem)( IFileOperation *This, IShellItem *psiItem); HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItems)( IFileOperation *This, IUnknown *punkItems); HRESULT (STDMETHODCALLTYPE *RenameItem)( IFileOperation *This, IShellItem *psiItem, LPCWSTR pszNewName, IFileOperationProgressSink *pfopsItem); HRESULT (STDMETHODCALLTYPE *RenameItems)( IFileOperation *This, IUnknown *pUnkItems, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *MoveItem)( IFileOperation *This, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, IFileOperationProgressSink *pfopsItem); HRESULT (STDMETHODCALLTYPE *MoveItems)( IFileOperation *This, IUnknown *punkItems, IShellItem *psiDestinationFolder); HRESULT (STDMETHODCALLTYPE *CopyItem)( IFileOperation *This, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszCopyName, IFileOperationProgressSink *pfopsItem); HRESULT (STDMETHODCALLTYPE *CopyItems)( IFileOperation *This, IUnknown *punkItems, IShellItem *psiDestinationFolder); HRESULT (STDMETHODCALLTYPE *DeleteItem)( IFileOperation *This, IShellItem *psiItem, IFileOperationProgressSink *pfopsItem); HRESULT (STDMETHODCALLTYPE *DeleteItems)( IFileOperation *This, IUnknown *punkItems); HRESULT (STDMETHODCALLTYPE *NewItem)( IFileOperation *This, IShellItem *psiDestinationFolder, DWORD dwFileAttributes, LPCWSTR pszName, LPCWSTR pszTemplateName, IFileOperationProgressSink *pfopsItem); HRESULT (STDMETHODCALLTYPE *PerformOperations)( IFileOperation *This); HRESULT (STDMETHODCALLTYPE *GetAnyOperationsAborted)( IFileOperation *This, WINBOOL *pfAnyOperationsAborted); END_INTERFACE } IFileOperationVtbl; interface IFileOperation { CONST_VTBL IFileOperationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileOperation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileOperation_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileOperation_Release(This) (This)->lpVtbl->Release(This) /*** IFileOperation methods ***/ #define IFileOperation_Advise(This,pfops,pdwCookie) (This)->lpVtbl->Advise(This,pfops,pdwCookie) #define IFileOperation_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileOperation_SetOperationFlags(This,dwOperationFlags) (This)->lpVtbl->SetOperationFlags(This,dwOperationFlags) #define IFileOperation_SetProgressMessage(This,pszMessage) (This)->lpVtbl->SetProgressMessage(This,pszMessage) #define IFileOperation_SetProgressDialog(This,popd) (This)->lpVtbl->SetProgressDialog(This,popd) #define IFileOperation_SetProperties(This,pproparray) (This)->lpVtbl->SetProperties(This,pproparray) #define IFileOperation_SetOwnerWindow(This,hwndOwner) (This)->lpVtbl->SetOwnerWindow(This,hwndOwner) #define IFileOperation_ApplyPropertiesToItem(This,psiItem) (This)->lpVtbl->ApplyPropertiesToItem(This,psiItem) #define IFileOperation_ApplyPropertiesToItems(This,punkItems) (This)->lpVtbl->ApplyPropertiesToItems(This,punkItems) #define IFileOperation_RenameItem(This,psiItem,pszNewName,pfopsItem) (This)->lpVtbl->RenameItem(This,psiItem,pszNewName,pfopsItem) #define IFileOperation_RenameItems(This,pUnkItems,pszNewName) (This)->lpVtbl->RenameItems(This,pUnkItems,pszNewName) #define IFileOperation_MoveItem(This,psiItem,psiDestinationFolder,pszNewName,pfopsItem) (This)->lpVtbl->MoveItem(This,psiItem,psiDestinationFolder,pszNewName,pfopsItem) #define IFileOperation_MoveItems(This,punkItems,psiDestinationFolder) (This)->lpVtbl->MoveItems(This,punkItems,psiDestinationFolder) #define IFileOperation_CopyItem(This,psiItem,psiDestinationFolder,pszCopyName,pfopsItem) (This)->lpVtbl->CopyItem(This,psiItem,psiDestinationFolder,pszCopyName,pfopsItem) #define IFileOperation_CopyItems(This,punkItems,psiDestinationFolder) (This)->lpVtbl->CopyItems(This,punkItems,psiDestinationFolder) #define IFileOperation_DeleteItem(This,psiItem,pfopsItem) (This)->lpVtbl->DeleteItem(This,psiItem,pfopsItem) #define IFileOperation_DeleteItems(This,punkItems) (This)->lpVtbl->DeleteItems(This,punkItems) #define IFileOperation_NewItem(This,psiDestinationFolder,dwFileAttributes,pszName,pszTemplateName,pfopsItem) (This)->lpVtbl->NewItem(This,psiDestinationFolder,dwFileAttributes,pszName,pszTemplateName,pfopsItem) #define IFileOperation_PerformOperations(This) (This)->lpVtbl->PerformOperations(This) #define IFileOperation_GetAnyOperationsAborted(This,pfAnyOperationsAborted) (This)->lpVtbl->GetAnyOperationsAborted(This,pfAnyOperationsAborted) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileOperation_QueryInterface(IFileOperation* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileOperation_AddRef(IFileOperation* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileOperation_Release(IFileOperation* This) { return This->lpVtbl->Release(This); } /*** IFileOperation methods ***/ static FORCEINLINE HRESULT IFileOperation_Advise(IFileOperation* This,IFileOperationProgressSink *pfops,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfops,pdwCookie); } static FORCEINLINE HRESULT IFileOperation_Unadvise(IFileOperation* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IFileOperation_SetOperationFlags(IFileOperation* This,DWORD dwOperationFlags) { return This->lpVtbl->SetOperationFlags(This,dwOperationFlags); } static FORCEINLINE HRESULT IFileOperation_SetProgressMessage(IFileOperation* This,LPCWSTR pszMessage) { return This->lpVtbl->SetProgressMessage(This,pszMessage); } static FORCEINLINE HRESULT IFileOperation_SetProgressDialog(IFileOperation* This,IOperationsProgressDialog *popd) { return This->lpVtbl->SetProgressDialog(This,popd); } static FORCEINLINE HRESULT IFileOperation_SetProperties(IFileOperation* This,IPropertyChangeArray *pproparray) { return This->lpVtbl->SetProperties(This,pproparray); } static FORCEINLINE HRESULT IFileOperation_SetOwnerWindow(IFileOperation* This,HWND hwndOwner) { return This->lpVtbl->SetOwnerWindow(This,hwndOwner); } static FORCEINLINE HRESULT IFileOperation_ApplyPropertiesToItem(IFileOperation* This,IShellItem *psiItem) { return This->lpVtbl->ApplyPropertiesToItem(This,psiItem); } static FORCEINLINE HRESULT IFileOperation_ApplyPropertiesToItems(IFileOperation* This,IUnknown *punkItems) { return This->lpVtbl->ApplyPropertiesToItems(This,punkItems); } static FORCEINLINE HRESULT IFileOperation_RenameItem(IFileOperation* This,IShellItem *psiItem,LPCWSTR pszNewName,IFileOperationProgressSink *pfopsItem) { return This->lpVtbl->RenameItem(This,psiItem,pszNewName,pfopsItem); } static FORCEINLINE HRESULT IFileOperation_RenameItems(IFileOperation* This,IUnknown *pUnkItems,LPCWSTR pszNewName) { return This->lpVtbl->RenameItems(This,pUnkItems,pszNewName); } static FORCEINLINE HRESULT IFileOperation_MoveItem(IFileOperation* This,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,IFileOperationProgressSink *pfopsItem) { return This->lpVtbl->MoveItem(This,psiItem,psiDestinationFolder,pszNewName,pfopsItem); } static FORCEINLINE HRESULT IFileOperation_MoveItems(IFileOperation* This,IUnknown *punkItems,IShellItem *psiDestinationFolder) { return This->lpVtbl->MoveItems(This,punkItems,psiDestinationFolder); } static FORCEINLINE HRESULT IFileOperation_CopyItem(IFileOperation* This,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszCopyName,IFileOperationProgressSink *pfopsItem) { return This->lpVtbl->CopyItem(This,psiItem,psiDestinationFolder,pszCopyName,pfopsItem); } static FORCEINLINE HRESULT IFileOperation_CopyItems(IFileOperation* This,IUnknown *punkItems,IShellItem *psiDestinationFolder) { return This->lpVtbl->CopyItems(This,punkItems,psiDestinationFolder); } static FORCEINLINE HRESULT IFileOperation_DeleteItem(IFileOperation* This,IShellItem *psiItem,IFileOperationProgressSink *pfopsItem) { return This->lpVtbl->DeleteItem(This,psiItem,pfopsItem); } static FORCEINLINE HRESULT IFileOperation_DeleteItems(IFileOperation* This,IUnknown *punkItems) { return This->lpVtbl->DeleteItems(This,punkItems); } static FORCEINLINE HRESULT IFileOperation_NewItem(IFileOperation* This,IShellItem *psiDestinationFolder,DWORD dwFileAttributes,LPCWSTR pszName,LPCWSTR pszTemplateName,IFileOperationProgressSink *pfopsItem) { return This->lpVtbl->NewItem(This,psiDestinationFolder,dwFileAttributes,pszName,pszTemplateName,pfopsItem); } static FORCEINLINE HRESULT IFileOperation_PerformOperations(IFileOperation* This) { return This->lpVtbl->PerformOperations(This); } static FORCEINLINE HRESULT IFileOperation_GetAnyOperationsAborted(IFileOperation* This,WINBOOL *pfAnyOperationsAborted) { return This->lpVtbl->GetAnyOperationsAborted(This,pfAnyOperationsAborted); } #endif #endif #endif #endif /* __IFileOperation_INTERFACE_DEFINED__ */ /***************************************************************************** * IObjectProvider interface */ #ifndef __IObjectProvider_INTERFACE_DEFINED__ #define __IObjectProvider_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectProvider, 0xa6087428, 0x3be3, 0x4d73, 0xb3,0x08, 0x7c,0x04,0xa5,0x40,0xbf,0x1a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a6087428-3be3-4d73-b308-7c04a540bf1a") IObjectProvider : public IUnknown { virtual HRESULT STDMETHODCALLTYPE QueryObject( REFGUID guidObject, REFIID riid, void **ppvOut) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectProvider, 0xa6087428, 0x3be3, 0x4d73, 0xb3,0x08, 0x7c,0x04,0xa5,0x40,0xbf,0x1a) #endif #else typedef struct IObjectProviderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectProvider *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectProvider *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectProvider *This); /*** IObjectProvider methods ***/ HRESULT (STDMETHODCALLTYPE *QueryObject)( IObjectProvider *This, REFGUID guidObject, REFIID riid, void **ppvOut); END_INTERFACE } IObjectProviderVtbl; interface IObjectProvider { CONST_VTBL IObjectProviderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectProvider_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectProvider_Release(This) (This)->lpVtbl->Release(This) /*** IObjectProvider methods ***/ #define IObjectProvider_QueryObject(This,guidObject,riid,ppvOut) (This)->lpVtbl->QueryObject(This,guidObject,riid,ppvOut) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectProvider_QueryInterface(IObjectProvider* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectProvider_AddRef(IObjectProvider* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectProvider_Release(IObjectProvider* This) { return This->lpVtbl->Release(This); } /*** IObjectProvider methods ***/ static FORCEINLINE HRESULT IObjectProvider_QueryObject(IObjectProvider* This,REFGUID guidObject,REFIID riid,void **ppvOut) { return This->lpVtbl->QueryObject(This,guidObject,riid,ppvOut); } #endif #endif #endif #endif /* __IObjectProvider_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * INamespaceWalkCB interface */ #ifndef __INamespaceWalkCB_INTERFACE_DEFINED__ #define __INamespaceWalkCB_INTERFACE_DEFINED__ DEFINE_GUID(IID_INamespaceWalkCB, 0xd92995f8, 0xcf5e, 0x4a76, 0xbf,0x59, 0xea,0xd3,0x9e,0xa2,0xb9,0x7e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d92995f8-cf5e-4a76-bf59-ead39ea2b97e") INamespaceWalkCB : public IUnknown { virtual HRESULT STDMETHODCALLTYPE FoundItem( IShellFolder *psf, PCUITEMID_CHILD pidl) = 0; virtual HRESULT STDMETHODCALLTYPE EnterFolder( IShellFolder *psf, PCUITEMID_CHILD pidl) = 0; virtual HRESULT STDMETHODCALLTYPE LeaveFolder( IShellFolder *psf, PCUITEMID_CHILD pidl) = 0; virtual HRESULT STDMETHODCALLTYPE InitializeProgressDialog( LPWSTR *ppszTitle, LPWSTR *ppszCancel) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INamespaceWalkCB, 0xd92995f8, 0xcf5e, 0x4a76, 0xbf,0x59, 0xea,0xd3,0x9e,0xa2,0xb9,0x7e) #endif #else typedef struct INamespaceWalkCBVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INamespaceWalkCB *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INamespaceWalkCB *This); ULONG (STDMETHODCALLTYPE *Release)( INamespaceWalkCB *This); /*** INamespaceWalkCB methods ***/ HRESULT (STDMETHODCALLTYPE *FoundItem)( INamespaceWalkCB *This, IShellFolder *psf, PCUITEMID_CHILD pidl); HRESULT (STDMETHODCALLTYPE *EnterFolder)( INamespaceWalkCB *This, IShellFolder *psf, PCUITEMID_CHILD pidl); HRESULT (STDMETHODCALLTYPE *LeaveFolder)( INamespaceWalkCB *This, IShellFolder *psf, PCUITEMID_CHILD pidl); HRESULT (STDMETHODCALLTYPE *InitializeProgressDialog)( INamespaceWalkCB *This, LPWSTR *ppszTitle, LPWSTR *ppszCancel); END_INTERFACE } INamespaceWalkCBVtbl; interface INamespaceWalkCB { CONST_VTBL INamespaceWalkCBVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INamespaceWalkCB_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INamespaceWalkCB_AddRef(This) (This)->lpVtbl->AddRef(This) #define INamespaceWalkCB_Release(This) (This)->lpVtbl->Release(This) /*** INamespaceWalkCB methods ***/ #define INamespaceWalkCB_FoundItem(This,psf,pidl) (This)->lpVtbl->FoundItem(This,psf,pidl) #define INamespaceWalkCB_EnterFolder(This,psf,pidl) (This)->lpVtbl->EnterFolder(This,psf,pidl) #define INamespaceWalkCB_LeaveFolder(This,psf,pidl) (This)->lpVtbl->LeaveFolder(This,psf,pidl) #define INamespaceWalkCB_InitializeProgressDialog(This,ppszTitle,ppszCancel) (This)->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INamespaceWalkCB_QueryInterface(INamespaceWalkCB* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INamespaceWalkCB_AddRef(INamespaceWalkCB* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INamespaceWalkCB_Release(INamespaceWalkCB* This) { return This->lpVtbl->Release(This); } /*** INamespaceWalkCB methods ***/ static FORCEINLINE HRESULT INamespaceWalkCB_FoundItem(INamespaceWalkCB* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { return This->lpVtbl->FoundItem(This,psf,pidl); } static FORCEINLINE HRESULT INamespaceWalkCB_EnterFolder(INamespaceWalkCB* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { return This->lpVtbl->EnterFolder(This,psf,pidl); } static FORCEINLINE HRESULT INamespaceWalkCB_LeaveFolder(INamespaceWalkCB* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { return This->lpVtbl->LeaveFolder(This,psf,pidl); } static FORCEINLINE HRESULT INamespaceWalkCB_InitializeProgressDialog(INamespaceWalkCB* This,LPWSTR *ppszTitle,LPWSTR *ppszCancel) { return This->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel); } #endif #endif #endif #endif /* __INamespaceWalkCB_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * INamespaceWalkCB2 interface */ #ifndef __INamespaceWalkCB2_INTERFACE_DEFINED__ #define __INamespaceWalkCB2_INTERFACE_DEFINED__ DEFINE_GUID(IID_INamespaceWalkCB2, 0x7ac7492b, 0xc38e, 0x438a, 0x87,0xdb, 0x68,0x73,0x78,0x44,0xff,0x70); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7ac7492b-c38e-438a-87db-68737844ff70") INamespaceWalkCB2 : public INamespaceWalkCB { virtual HRESULT STDMETHODCALLTYPE WalkComplete( HRESULT hr) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INamespaceWalkCB2, 0x7ac7492b, 0xc38e, 0x438a, 0x87,0xdb, 0x68,0x73,0x78,0x44,0xff,0x70) #endif #else typedef struct INamespaceWalkCB2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INamespaceWalkCB2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INamespaceWalkCB2 *This); ULONG (STDMETHODCALLTYPE *Release)( INamespaceWalkCB2 *This); /*** INamespaceWalkCB methods ***/ HRESULT (STDMETHODCALLTYPE *FoundItem)( INamespaceWalkCB2 *This, IShellFolder *psf, PCUITEMID_CHILD pidl); HRESULT (STDMETHODCALLTYPE *EnterFolder)( INamespaceWalkCB2 *This, IShellFolder *psf, PCUITEMID_CHILD pidl); HRESULT (STDMETHODCALLTYPE *LeaveFolder)( INamespaceWalkCB2 *This, IShellFolder *psf, PCUITEMID_CHILD pidl); HRESULT (STDMETHODCALLTYPE *InitializeProgressDialog)( INamespaceWalkCB2 *This, LPWSTR *ppszTitle, LPWSTR *ppszCancel); /*** INamespaceWalkCB2 methods ***/ HRESULT (STDMETHODCALLTYPE *WalkComplete)( INamespaceWalkCB2 *This, HRESULT hr); END_INTERFACE } INamespaceWalkCB2Vtbl; interface INamespaceWalkCB2 { CONST_VTBL INamespaceWalkCB2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INamespaceWalkCB2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INamespaceWalkCB2_AddRef(This) (This)->lpVtbl->AddRef(This) #define INamespaceWalkCB2_Release(This) (This)->lpVtbl->Release(This) /*** INamespaceWalkCB methods ***/ #define INamespaceWalkCB2_FoundItem(This,psf,pidl) (This)->lpVtbl->FoundItem(This,psf,pidl) #define INamespaceWalkCB2_EnterFolder(This,psf,pidl) (This)->lpVtbl->EnterFolder(This,psf,pidl) #define INamespaceWalkCB2_LeaveFolder(This,psf,pidl) (This)->lpVtbl->LeaveFolder(This,psf,pidl) #define INamespaceWalkCB2_InitializeProgressDialog(This,ppszTitle,ppszCancel) (This)->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel) /*** INamespaceWalkCB2 methods ***/ #define INamespaceWalkCB2_WalkComplete(This,hr) (This)->lpVtbl->WalkComplete(This,hr) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INamespaceWalkCB2_QueryInterface(INamespaceWalkCB2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INamespaceWalkCB2_AddRef(INamespaceWalkCB2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INamespaceWalkCB2_Release(INamespaceWalkCB2* This) { return This->lpVtbl->Release(This); } /*** INamespaceWalkCB methods ***/ static FORCEINLINE HRESULT INamespaceWalkCB2_FoundItem(INamespaceWalkCB2* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { return This->lpVtbl->FoundItem(This,psf,pidl); } static FORCEINLINE HRESULT INamespaceWalkCB2_EnterFolder(INamespaceWalkCB2* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { return This->lpVtbl->EnterFolder(This,psf,pidl); } static FORCEINLINE HRESULT INamespaceWalkCB2_LeaveFolder(INamespaceWalkCB2* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { return This->lpVtbl->LeaveFolder(This,psf,pidl); } static FORCEINLINE HRESULT INamespaceWalkCB2_InitializeProgressDialog(INamespaceWalkCB2* This,LPWSTR *ppszTitle,LPWSTR *ppszCancel) { return This->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel); } /*** INamespaceWalkCB2 methods ***/ static FORCEINLINE HRESULT INamespaceWalkCB2_WalkComplete(INamespaceWalkCB2* This,HRESULT hr) { return This->lpVtbl->WalkComplete(This,hr); } #endif #endif #endif #endif /* __INamespaceWalkCB2_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * INamespaceWalk interface */ #ifndef __INamespaceWalk_INTERFACE_DEFINED__ #define __INamespaceWalk_INTERFACE_DEFINED__ typedef enum NAMESPACEWALKFLAG { NSWF_DEFAULT = 0x0, NSWF_NONE_IMPLIES_ALL = 0x1, NSWF_ONE_IMPLIES_ALL = 0x2, NSWF_DONT_TRAVERSE_LINKS = 0x4, NSWF_DONT_ACCUMULATE_RESULT = 0x8, NSWF_TRAVERSE_STREAM_JUNCTIONS = 0x10, NSWF_FILESYSTEM_ONLY = 0x20, NSWF_SHOW_PROGRESS = 0x40, NSWF_FLAG_VIEWORDER = 0x80, NSWF_IGNORE_AUTOPLAY_HIDA = 0x100, NSWF_ASYNC = 0x200, NSWF_DONT_RESOLVE_LINKS = 0x400, NSWF_ACCUMULATE_FOLDERS = 0x800, NSWF_DONT_SORT = 0x1000, NSWF_USE_TRANSFER_MEDIUM = 0x2000, NSWF_DONT_TRAVERSE_STREAM_JUNCTIONS = 0x4000, NSWF_ANY_IMPLIES_ALL = 0x8000 } NAMESPACEWALKFLAG; #define NSWF_ENUMERATE_BEST_EFFORT 0x00010000 #define NSWF_TRAVERSE_ONLY_STORAGE 0x00020000 DEFINE_ENUM_FLAG_OPERATORS(NAMESPACEWALKFLAG) DEFINE_GUID(IID_INamespaceWalk, 0x57ced8a7, 0x3f4a, 0x432c, 0x93,0x50, 0x30,0xf2,0x44,0x83,0xf7,0x4f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("57ced8a7-3f4a-432c-9350-30f24483f74f") INamespaceWalk : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Walk( IUnknown *punkToWalk, DWORD dwFlags, int cDepth, INamespaceWalkCB *pnswcb) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDArrayResult( UINT *pcItems, PIDLIST_ABSOLUTE **prgpidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INamespaceWalk, 0x57ced8a7, 0x3f4a, 0x432c, 0x93,0x50, 0x30,0xf2,0x44,0x83,0xf7,0x4f) #endif #else typedef struct INamespaceWalkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INamespaceWalk *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INamespaceWalk *This); ULONG (STDMETHODCALLTYPE *Release)( INamespaceWalk *This); /*** INamespaceWalk methods ***/ HRESULT (STDMETHODCALLTYPE *Walk)( INamespaceWalk *This, IUnknown *punkToWalk, DWORD dwFlags, int cDepth, INamespaceWalkCB *pnswcb); HRESULT (STDMETHODCALLTYPE *GetIDArrayResult)( INamespaceWalk *This, UINT *pcItems, PIDLIST_ABSOLUTE **prgpidl); END_INTERFACE } INamespaceWalkVtbl; interface INamespaceWalk { CONST_VTBL INamespaceWalkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INamespaceWalk_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INamespaceWalk_AddRef(This) (This)->lpVtbl->AddRef(This) #define INamespaceWalk_Release(This) (This)->lpVtbl->Release(This) /*** INamespaceWalk methods ***/ #define INamespaceWalk_Walk(This,punkToWalk,dwFlags,cDepth,pnswcb) (This)->lpVtbl->Walk(This,punkToWalk,dwFlags,cDepth,pnswcb) #define INamespaceWalk_GetIDArrayResult(This,pcItems,prgpidl) (This)->lpVtbl->GetIDArrayResult(This,pcItems,prgpidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INamespaceWalk_QueryInterface(INamespaceWalk* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INamespaceWalk_AddRef(INamespaceWalk* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INamespaceWalk_Release(INamespaceWalk* This) { return This->lpVtbl->Release(This); } /*** INamespaceWalk methods ***/ static FORCEINLINE HRESULT INamespaceWalk_Walk(INamespaceWalk* This,IUnknown *punkToWalk,DWORD dwFlags,int cDepth,INamespaceWalkCB *pnswcb) { return This->lpVtbl->Walk(This,punkToWalk,dwFlags,cDepth,pnswcb); } static FORCEINLINE HRESULT INamespaceWalk_GetIDArrayResult(INamespaceWalk* This,UINT *pcItems,PIDLIST_ABSOLUTE **prgpidl) { return This->lpVtbl->GetIDArrayResult(This,pcItems,prgpidl); } #endif #endif #endif #endif /* __INamespaceWalk_INTERFACE_DEFINED__ */ __forceinline void FreeIDListArray(PIDLIST_RELATIVE *ppidls, UINT cItems) { UINT i; for (i = 0; i < cItems; i++) { CoTaskMemFree(ppidls[i]); } CoTaskMemFree(ppidls); } #if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) __forceinline void FreeIDListArrayFull(PIDLIST_ABSOLUTE *ppidls, UINT cItems) { UINT i; for (i = 0; i < cItems; i++) CoTaskMemFree(ppidls[i]); CoTaskMemFree(ppidls); } __forceinline void FreeIDListArrayChild(PITEMID_CHILD *ppidls, UINT cItems) { UINT i; for (i = 0; i < cItems; i++) CoTaskMemFree(ppidls[i]); CoTaskMemFree(ppidls); } #else #define FreeIDListArrayFull FreeIDListArray #define FreeIDListArrayChild FreeIDListArray #endif #define ACDD_VISIBLE 0x1 /***************************************************************************** * IAutoCompleteDropDown interface */ #ifndef __IAutoCompleteDropDown_INTERFACE_DEFINED__ #define __IAutoCompleteDropDown_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAutoCompleteDropDown, 0x3cd141f4, 0x3c6a, 0x11d2, 0xbc,0xaa, 0x00,0xc0,0x4f,0xd9,0x29,0xdb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3cd141f4-3c6a-11d2-bcaa-00c04fd929db") IAutoCompleteDropDown : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDropDownStatus( DWORD *pdwFlags, LPWSTR *ppwszString) = 0; virtual HRESULT STDMETHODCALLTYPE ResetEnumerator( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAutoCompleteDropDown, 0x3cd141f4, 0x3c6a, 0x11d2, 0xbc,0xaa, 0x00,0xc0,0x4f,0xd9,0x29,0xdb) #endif #else typedef struct IAutoCompleteDropDownVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAutoCompleteDropDown *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAutoCompleteDropDown *This); ULONG (STDMETHODCALLTYPE *Release)( IAutoCompleteDropDown *This); /*** IAutoCompleteDropDown methods ***/ HRESULT (STDMETHODCALLTYPE *GetDropDownStatus)( IAutoCompleteDropDown *This, DWORD *pdwFlags, LPWSTR *ppwszString); HRESULT (STDMETHODCALLTYPE *ResetEnumerator)( IAutoCompleteDropDown *This); END_INTERFACE } IAutoCompleteDropDownVtbl; interface IAutoCompleteDropDown { CONST_VTBL IAutoCompleteDropDownVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAutoCompleteDropDown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAutoCompleteDropDown_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAutoCompleteDropDown_Release(This) (This)->lpVtbl->Release(This) /*** IAutoCompleteDropDown methods ***/ #define IAutoCompleteDropDown_GetDropDownStatus(This,pdwFlags,ppwszString) (This)->lpVtbl->GetDropDownStatus(This,pdwFlags,ppwszString) #define IAutoCompleteDropDown_ResetEnumerator(This) (This)->lpVtbl->ResetEnumerator(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAutoCompleteDropDown_QueryInterface(IAutoCompleteDropDown* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAutoCompleteDropDown_AddRef(IAutoCompleteDropDown* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAutoCompleteDropDown_Release(IAutoCompleteDropDown* This) { return This->lpVtbl->Release(This); } /*** IAutoCompleteDropDown methods ***/ static FORCEINLINE HRESULT IAutoCompleteDropDown_GetDropDownStatus(IAutoCompleteDropDown* This,DWORD *pdwFlags,LPWSTR *ppwszString) { return This->lpVtbl->GetDropDownStatus(This,pdwFlags,ppwszString); } static FORCEINLINE HRESULT IAutoCompleteDropDown_ResetEnumerator(IAutoCompleteDropDown* This) { return This->lpVtbl->ResetEnumerator(This); } #endif #endif #endif #endif /* __IAutoCompleteDropDown_INTERFACE_DEFINED__ */ #include typedef struct tagBANDSITEINFO { DWORD dwMask; DWORD dwState; DWORD dwStyle; } BANDSITEINFO; #include enum tagBANDSITECID { BSID_BANDADDED = 0, BSID_BANDREMOVED = 1 }; #define BSIM_STATE 0x00000001 #define BSIM_STYLE 0x00000002 #define BSSF_VISIBLE 0x00000001 #define BSSF_NOTITLE 0x00000002 #define BSSF_UNDELETEABLE 0x00001000 #define BSIS_AUTOGRIPPER 0x00000000 #define BSIS_NOGRIPPER 0x00000001 #define BSIS_ALWAYSGRIPPER 0x00000002 #define BSIS_LEFTALIGN 0x00000004 #define BSIS_SINGLECLICK 0x00000008 #define BSIS_NOCONTEXTMENU 0x00000010 #define BSIS_NODROPTARGET 0x00000020 #define BSIS_NOCAPTION 0x00000040 #define BSIS_PREFERNOLINEBREAK 0x00000080 #define BSIS_LOCKED 0x00000100 #if _WIN32_IE >= _WIN32_IE_IE70 #define BSIS_PRESERVEORDERDURINGLAYOUT 0x00000200 #define BSIS_FIXEDORDER 0x00000400 #endif #define SID_SBandSite IID_IBandSite #define CGID_BandSite IID_IBandSite /***************************************************************************** * IBandSite interface */ #ifndef __IBandSite_INTERFACE_DEFINED__ #define __IBandSite_INTERFACE_DEFINED__ DEFINE_GUID(IID_IBandSite, 0x4cf504b0, 0xde96, 0x11d0, 0x8b,0x3f, 0x00,0xa0,0xc9,0x11,0xe8,0xe5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4cf504b0-de96-11d0-8b3f-00a0c911e8e5") IBandSite : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddBand( IUnknown *punk) = 0; virtual HRESULT STDMETHODCALLTYPE EnumBands( UINT uBand, DWORD *pdwBandID) = 0; virtual HRESULT STDMETHODCALLTYPE QueryBand( DWORD dwBandID, IDeskBand **ppstb, DWORD *pdwState, LPWSTR pszName, int cchName) = 0; virtual HRESULT STDMETHODCALLTYPE SetBandState( DWORD dwBandID, DWORD dwMask, DWORD dwState) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveBand( DWORD dwBandID) = 0; virtual HRESULT STDMETHODCALLTYPE GetBandObject( DWORD dwBandID, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE SetBandSiteInfo( const BANDSITEINFO *pbsinfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetBandSiteInfo( BANDSITEINFO *pbsinfo) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IBandSite, 0x4cf504b0, 0xde96, 0x11d0, 0x8b,0x3f, 0x00,0xa0,0xc9,0x11,0xe8,0xe5) #endif #else typedef struct IBandSiteVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IBandSite *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IBandSite *This); ULONG (STDMETHODCALLTYPE *Release)( IBandSite *This); /*** IBandSite methods ***/ HRESULT (STDMETHODCALLTYPE *AddBand)( IBandSite *This, IUnknown *punk); HRESULT (STDMETHODCALLTYPE *EnumBands)( IBandSite *This, UINT uBand, DWORD *pdwBandID); HRESULT (STDMETHODCALLTYPE *QueryBand)( IBandSite *This, DWORD dwBandID, IDeskBand **ppstb, DWORD *pdwState, LPWSTR pszName, int cchName); HRESULT (STDMETHODCALLTYPE *SetBandState)( IBandSite *This, DWORD dwBandID, DWORD dwMask, DWORD dwState); HRESULT (STDMETHODCALLTYPE *RemoveBand)( IBandSite *This, DWORD dwBandID); HRESULT (STDMETHODCALLTYPE *GetBandObject)( IBandSite *This, DWORD dwBandID, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *SetBandSiteInfo)( IBandSite *This, const BANDSITEINFO *pbsinfo); HRESULT (STDMETHODCALLTYPE *GetBandSiteInfo)( IBandSite *This, BANDSITEINFO *pbsinfo); END_INTERFACE } IBandSiteVtbl; interface IBandSite { CONST_VTBL IBandSiteVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IBandSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IBandSite_AddRef(This) (This)->lpVtbl->AddRef(This) #define IBandSite_Release(This) (This)->lpVtbl->Release(This) /*** IBandSite methods ***/ #define IBandSite_AddBand(This,punk) (This)->lpVtbl->AddBand(This,punk) #define IBandSite_EnumBands(This,uBand,pdwBandID) (This)->lpVtbl->EnumBands(This,uBand,pdwBandID) #define IBandSite_QueryBand(This,dwBandID,ppstb,pdwState,pszName,cchName) (This)->lpVtbl->QueryBand(This,dwBandID,ppstb,pdwState,pszName,cchName) #define IBandSite_SetBandState(This,dwBandID,dwMask,dwState) (This)->lpVtbl->SetBandState(This,dwBandID,dwMask,dwState) #define IBandSite_RemoveBand(This,dwBandID) (This)->lpVtbl->RemoveBand(This,dwBandID) #define IBandSite_GetBandObject(This,dwBandID,riid,ppv) (This)->lpVtbl->GetBandObject(This,dwBandID,riid,ppv) #define IBandSite_SetBandSiteInfo(This,pbsinfo) (This)->lpVtbl->SetBandSiteInfo(This,pbsinfo) #define IBandSite_GetBandSiteInfo(This,pbsinfo) (This)->lpVtbl->GetBandSiteInfo(This,pbsinfo) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IBandSite_QueryInterface(IBandSite* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IBandSite_AddRef(IBandSite* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IBandSite_Release(IBandSite* This) { return This->lpVtbl->Release(This); } /*** IBandSite methods ***/ static FORCEINLINE HRESULT IBandSite_AddBand(IBandSite* This,IUnknown *punk) { return This->lpVtbl->AddBand(This,punk); } static FORCEINLINE HRESULT IBandSite_EnumBands(IBandSite* This,UINT uBand,DWORD *pdwBandID) { return This->lpVtbl->EnumBands(This,uBand,pdwBandID); } static FORCEINLINE HRESULT IBandSite_QueryBand(IBandSite* This,DWORD dwBandID,IDeskBand **ppstb,DWORD *pdwState,LPWSTR pszName,int cchName) { return This->lpVtbl->QueryBand(This,dwBandID,ppstb,pdwState,pszName,cchName); } static FORCEINLINE HRESULT IBandSite_SetBandState(IBandSite* This,DWORD dwBandID,DWORD dwMask,DWORD dwState) { return This->lpVtbl->SetBandState(This,dwBandID,dwMask,dwState); } static FORCEINLINE HRESULT IBandSite_RemoveBand(IBandSite* This,DWORD dwBandID) { return This->lpVtbl->RemoveBand(This,dwBandID); } static FORCEINLINE HRESULT IBandSite_GetBandObject(IBandSite* This,DWORD dwBandID,REFIID riid,void **ppv) { return This->lpVtbl->GetBandObject(This,dwBandID,riid,ppv); } static FORCEINLINE HRESULT IBandSite_SetBandSiteInfo(IBandSite* This,const BANDSITEINFO *pbsinfo) { return This->lpVtbl->SetBandSiteInfo(This,pbsinfo); } static FORCEINLINE HRESULT IBandSite_GetBandSiteInfo(IBandSite* This,BANDSITEINFO *pbsinfo) { return This->lpVtbl->GetBandSiteInfo(This,pbsinfo); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IBandSite_RemoteQueryBand_Proxy( IBandSite* This, DWORD dwBandID, IDeskBand **ppstb, DWORD *pdwState, LPWSTR pszName, int cchName); void __RPC_STUB IBandSite_RemoteQueryBand_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IBandSite_QueryBand_Proxy( IBandSite* This, DWORD dwBandID, IDeskBand **ppstb, DWORD *pdwState, LPWSTR pszName, int cchName); HRESULT __RPC_STUB IBandSite_QueryBand_Stub( IBandSite* This, DWORD dwBandID, IDeskBand **ppstb, DWORD *pdwState, LPWSTR pszName, int cchName); #endif /* __IBandSite_INTERFACE_DEFINED__ */ /***************************************************************************** * IModalWindow interface */ #ifndef __IModalWindow_INTERFACE_DEFINED__ #define __IModalWindow_INTERFACE_DEFINED__ DEFINE_GUID(IID_IModalWindow, 0xb4db1657, 0x70d7, 0x485e, 0x8e,0x3e, 0x6f,0xcb,0x5a,0x5c,0x18,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b4db1657-70d7-485e-8e3e-6fcb5a5c1802") IModalWindow : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Show( HWND hwndOwner) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IModalWindow, 0xb4db1657, 0x70d7, 0x485e, 0x8e,0x3e, 0x6f,0xcb,0x5a,0x5c,0x18,0x02) #endif #else typedef struct IModalWindowVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IModalWindow *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IModalWindow *This); ULONG (STDMETHODCALLTYPE *Release)( IModalWindow *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IModalWindow *This, HWND hwndOwner); END_INTERFACE } IModalWindowVtbl; interface IModalWindow { CONST_VTBL IModalWindowVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IModalWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IModalWindow_AddRef(This) (This)->lpVtbl->AddRef(This) #define IModalWindow_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IModalWindow_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IModalWindow_QueryInterface(IModalWindow* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IModalWindow_AddRef(IModalWindow* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IModalWindow_Release(IModalWindow* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static FORCEINLINE HRESULT IModalWindow_Show(IModalWindow* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IModalWindow_RemoteShow_Proxy( IModalWindow* This, HWND hwndOwner); void __RPC_STUB IModalWindow_RemoteShow_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IModalWindow_Show_Proxy( IModalWindow* This, HWND hwndOwner); HRESULT __RPC_STUB IModalWindow_Show_Stub( IModalWindow* This, HWND hwndOwner); #endif /* __IModalWindow_INTERFACE_DEFINED__ */ #define PROPSTR_EXTENSIONCOMPLETIONSTATE L"ExtensionCompletionState" enum tagCDBURNINGEXTENSIONRET { CDBE_RET_DEFAULT = 0x0, CDBE_RET_DONTRUNOTHEREXTS = 0x1, CDBE_RET_STOPWIZARD = 0x2 }; #define SID_CDWizardHost IID_ICDBurnExt enum _CDBE_ACTIONS { CDBE_TYPE_MUSIC = 0x1, CDBE_TYPE_DATA = 0x2, CDBE_TYPE_ALL = (int)0xffffffff }; typedef DWORD CDBE_ACTIONS; /***************************************************************************** * ICDBurnExt interface */ #ifndef __ICDBurnExt_INTERFACE_DEFINED__ #define __ICDBurnExt_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICDBurnExt, 0x2271dcca, 0x74fc, 0x4414, 0x8f,0xb7, 0xc5,0x6b,0x05,0xac,0xe2,0xd7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2271dcca-74fc-4414-8fb7-c56b05ace2d7") ICDBurnExt : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetSupportedActionTypes( CDBE_ACTIONS *pdwActions) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICDBurnExt, 0x2271dcca, 0x74fc, 0x4414, 0x8f,0xb7, 0xc5,0x6b,0x05,0xac,0xe2,0xd7) #endif #else typedef struct ICDBurnExtVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICDBurnExt *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICDBurnExt *This); ULONG (STDMETHODCALLTYPE *Release)( ICDBurnExt *This); /*** ICDBurnExt methods ***/ HRESULT (STDMETHODCALLTYPE *GetSupportedActionTypes)( ICDBurnExt *This, CDBE_ACTIONS *pdwActions); END_INTERFACE } ICDBurnExtVtbl; interface ICDBurnExt { CONST_VTBL ICDBurnExtVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICDBurnExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICDBurnExt_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICDBurnExt_Release(This) (This)->lpVtbl->Release(This) /*** ICDBurnExt methods ***/ #define ICDBurnExt_GetSupportedActionTypes(This,pdwActions) (This)->lpVtbl->GetSupportedActionTypes(This,pdwActions) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICDBurnExt_QueryInterface(ICDBurnExt* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICDBurnExt_AddRef(ICDBurnExt* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICDBurnExt_Release(ICDBurnExt* This) { return This->lpVtbl->Release(This); } /*** ICDBurnExt methods ***/ static FORCEINLINE HRESULT ICDBurnExt_GetSupportedActionTypes(ICDBurnExt* This,CDBE_ACTIONS *pdwActions) { return This->lpVtbl->GetSupportedActionTypes(This,pdwActions); } #endif #endif #endif #endif /* __ICDBurnExt_INTERFACE_DEFINED__ */ /***************************************************************************** * IContextMenuSite interface */ #ifndef __IContextMenuSite_INTERFACE_DEFINED__ #define __IContextMenuSite_INTERFACE_DEFINED__ DEFINE_GUID(IID_IContextMenuSite, 0x0811aebe, 0x0b87, 0x4c54, 0x9e,0x72, 0x54,0x8c,0xf6,0x49,0x01,0x6b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0811aebe-0b87-4c54-9e72-548cf649016b") IContextMenuSite : public IUnknown { virtual HRESULT STDMETHODCALLTYPE DoContextMenuPopup( IUnknown *punkContextMenu, UINT fFlags, POINT pt) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenuSite, 0x0811aebe, 0x0b87, 0x4c54, 0x9e,0x72, 0x54,0x8c,0xf6,0x49,0x01,0x6b) #endif #else typedef struct IContextMenuSiteVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenuSite *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenuSite *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenuSite *This); /*** IContextMenuSite methods ***/ HRESULT (STDMETHODCALLTYPE *DoContextMenuPopup)( IContextMenuSite *This, IUnknown *punkContextMenu, UINT fFlags, POINT pt); END_INTERFACE } IContextMenuSiteVtbl; interface IContextMenuSite { CONST_VTBL IContextMenuSiteVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenuSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenuSite_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenuSite_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenuSite methods ***/ #define IContextMenuSite_DoContextMenuPopup(This,punkContextMenu,fFlags,pt) (This)->lpVtbl->DoContextMenuPopup(This,punkContextMenu,fFlags,pt) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IContextMenuSite_QueryInterface(IContextMenuSite* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IContextMenuSite_AddRef(IContextMenuSite* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IContextMenuSite_Release(IContextMenuSite* This) { return This->lpVtbl->Release(This); } /*** IContextMenuSite methods ***/ static FORCEINLINE HRESULT IContextMenuSite_DoContextMenuPopup(IContextMenuSite* This,IUnknown *punkContextMenu,UINT fFlags,POINT pt) { return This->lpVtbl->DoContextMenuPopup(This,punkContextMenu,fFlags,pt); } #endif #endif #endif #endif /* __IContextMenuSite_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumReadyCallback interface */ #ifndef __IEnumReadyCallback_INTERFACE_DEFINED__ #define __IEnumReadyCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumReadyCallback, 0x61e00d45, 0x8fff, 0x4e60, 0x92,0x4e, 0x65,0x37,0xb6,0x16,0x12,0xdd); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("61e00d45-8fff-4e60-924e-6537b61612dd") IEnumReadyCallback : public IUnknown { virtual HRESULT STDMETHODCALLTYPE EnumReady( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumReadyCallback, 0x61e00d45, 0x8fff, 0x4e60, 0x92,0x4e, 0x65,0x37,0xb6,0x16,0x12,0xdd) #endif #else typedef struct IEnumReadyCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumReadyCallback *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumReadyCallback *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumReadyCallback *This); /*** IEnumReadyCallback methods ***/ HRESULT (STDMETHODCALLTYPE *EnumReady)( IEnumReadyCallback *This); END_INTERFACE } IEnumReadyCallbackVtbl; interface IEnumReadyCallback { CONST_VTBL IEnumReadyCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumReadyCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumReadyCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumReadyCallback_Release(This) (This)->lpVtbl->Release(This) /*** IEnumReadyCallback methods ***/ #define IEnumReadyCallback_EnumReady(This) (This)->lpVtbl->EnumReady(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumReadyCallback_QueryInterface(IEnumReadyCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumReadyCallback_AddRef(IEnumReadyCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumReadyCallback_Release(IEnumReadyCallback* This) { return This->lpVtbl->Release(This); } /*** IEnumReadyCallback methods ***/ static FORCEINLINE HRESULT IEnumReadyCallback_EnumReady(IEnumReadyCallback* This) { return This->lpVtbl->EnumReady(This); } #endif #endif #endif #endif /* __IEnumReadyCallback_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumerableView interface */ #ifndef __IEnumerableView_INTERFACE_DEFINED__ #define __IEnumerableView_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumerableView, 0x8c8bf236, 0x1aec, 0x495f, 0x98,0x94, 0x91,0xd5,0x7c,0x3c,0x68,0x6f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8c8bf236-1aec-495f-9894-91d57c3c686f") IEnumerableView : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetEnumReadyCallback( IEnumReadyCallback *percb) = 0; virtual HRESULT STDMETHODCALLTYPE CreateEnumIDListFromContents( PCIDLIST_ABSOLUTE pidlFolder, DWORD dwEnumFlags, IEnumIDList **ppEnumIDList) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumerableView, 0x8c8bf236, 0x1aec, 0x495f, 0x98,0x94, 0x91,0xd5,0x7c,0x3c,0x68,0x6f) #endif #else typedef struct IEnumerableViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumerableView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumerableView *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumerableView *This); /*** IEnumerableView methods ***/ HRESULT (STDMETHODCALLTYPE *SetEnumReadyCallback)( IEnumerableView *This, IEnumReadyCallback *percb); HRESULT (STDMETHODCALLTYPE *CreateEnumIDListFromContents)( IEnumerableView *This, PCIDLIST_ABSOLUTE pidlFolder, DWORD dwEnumFlags, IEnumIDList **ppEnumIDList); END_INTERFACE } IEnumerableViewVtbl; interface IEnumerableView { CONST_VTBL IEnumerableViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumerableView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumerableView_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumerableView_Release(This) (This)->lpVtbl->Release(This) /*** IEnumerableView methods ***/ #define IEnumerableView_SetEnumReadyCallback(This,percb) (This)->lpVtbl->SetEnumReadyCallback(This,percb) #define IEnumerableView_CreateEnumIDListFromContents(This,pidlFolder,dwEnumFlags,ppEnumIDList) (This)->lpVtbl->CreateEnumIDListFromContents(This,pidlFolder,dwEnumFlags,ppEnumIDList) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumerableView_QueryInterface(IEnumerableView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumerableView_AddRef(IEnumerableView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumerableView_Release(IEnumerableView* This) { return This->lpVtbl->Release(This); } /*** IEnumerableView methods ***/ static FORCEINLINE HRESULT IEnumerableView_SetEnumReadyCallback(IEnumerableView* This,IEnumReadyCallback *percb) { return This->lpVtbl->SetEnumReadyCallback(This,percb); } static FORCEINLINE HRESULT IEnumerableView_CreateEnumIDListFromContents(IEnumerableView* This,PCIDLIST_ABSOLUTE pidlFolder,DWORD dwEnumFlags,IEnumIDList **ppEnumIDList) { return This->lpVtbl->CreateEnumIDListFromContents(This,pidlFolder,dwEnumFlags,ppEnumIDList); } #endif #endif #endif #endif /* __IEnumerableView_INTERFACE_DEFINED__ */ #define SID_EnumerableView IID_IEnumerableView /***************************************************************************** * IInsertItem interface */ #ifndef __IInsertItem_INTERFACE_DEFINED__ #define __IInsertItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInsertItem, 0xd2b57227, 0x3d23, 0x4b95, 0x93,0xc0, 0x49,0x2b,0xd4,0x54,0xc3,0x56); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d2b57227-3d23-4b95-93c0-492bd454c356") IInsertItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE InsertItem( PCUIDLIST_RELATIVE pidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInsertItem, 0xd2b57227, 0x3d23, 0x4b95, 0x93,0xc0, 0x49,0x2b,0xd4,0x54,0xc3,0x56) #endif #else typedef struct IInsertItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInsertItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInsertItem *This); ULONG (STDMETHODCALLTYPE *Release)( IInsertItem *This); /*** IInsertItem methods ***/ HRESULT (STDMETHODCALLTYPE *InsertItem)( IInsertItem *This, PCUIDLIST_RELATIVE pidl); END_INTERFACE } IInsertItemVtbl; interface IInsertItem { CONST_VTBL IInsertItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInsertItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInsertItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInsertItem_Release(This) (This)->lpVtbl->Release(This) /*** IInsertItem methods ***/ #define IInsertItem_InsertItem(This,pidl) (This)->lpVtbl->InsertItem(This,pidl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInsertItem_QueryInterface(IInsertItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInsertItem_AddRef(IInsertItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInsertItem_Release(IInsertItem* This) { return This->lpVtbl->Release(This); } /*** IInsertItem methods ***/ static FORCEINLINE HRESULT IInsertItem_InsertItem(IInsertItem* This,PCUIDLIST_RELATIVE pidl) { return This->lpVtbl->InsertItem(This,pidl); } #endif #endif #endif #endif /* __IInsertItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IMenuBand interface */ #ifndef __IMenuBand_INTERFACE_DEFINED__ #define __IMenuBand_INTERFACE_DEFINED__ enum tagMENUBANDHANDLERCID { MBHANDCID_PIDLSELECT = 0 }; DEFINE_GUID(IID_IMenuBand, 0x568804cd, 0xcbd7, 0x11d0, 0x98,0x16, 0x00,0xc0,0x4f,0xd9,0x19,0x72); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("568804cd-cbd7-11d0-9816-00c04fd91972") IMenuBand : public IUnknown { virtual HRESULT STDMETHODCALLTYPE IsMenuMessage( MSG *pmsg) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateMenuMessage( MSG *pmsg, LRESULT *plRet) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IMenuBand, 0x568804cd, 0xcbd7, 0x11d0, 0x98,0x16, 0x00,0xc0,0x4f,0xd9,0x19,0x72) #endif #else typedef struct IMenuBandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IMenuBand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IMenuBand *This); ULONG (STDMETHODCALLTYPE *Release)( IMenuBand *This); /*** IMenuBand methods ***/ HRESULT (STDMETHODCALLTYPE *IsMenuMessage)( IMenuBand *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *TranslateMenuMessage)( IMenuBand *This, MSG *pmsg, LRESULT *plRet); END_INTERFACE } IMenuBandVtbl; interface IMenuBand { CONST_VTBL IMenuBandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IMenuBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IMenuBand_AddRef(This) (This)->lpVtbl->AddRef(This) #define IMenuBand_Release(This) (This)->lpVtbl->Release(This) /*** IMenuBand methods ***/ #define IMenuBand_IsMenuMessage(This,pmsg) (This)->lpVtbl->IsMenuMessage(This,pmsg) #define IMenuBand_TranslateMenuMessage(This,pmsg,plRet) (This)->lpVtbl->TranslateMenuMessage(This,pmsg,plRet) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IMenuBand_QueryInterface(IMenuBand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IMenuBand_AddRef(IMenuBand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IMenuBand_Release(IMenuBand* This) { return This->lpVtbl->Release(This); } /*** IMenuBand methods ***/ static FORCEINLINE HRESULT IMenuBand_IsMenuMessage(IMenuBand* This,MSG *pmsg) { return This->lpVtbl->IsMenuMessage(This,pmsg); } static FORCEINLINE HRESULT IMenuBand_TranslateMenuMessage(IMenuBand* This,MSG *pmsg,LRESULT *plRet) { return This->lpVtbl->TranslateMenuMessage(This,pmsg,plRet); } #endif #endif #endif #endif /* __IMenuBand_INTERFACE_DEFINED__ */ /***************************************************************************** * IFolderBandPriv interface */ #ifndef __IFolderBandPriv_INTERFACE_DEFINED__ #define __IFolderBandPriv_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderBandPriv, 0x47c01f95, 0xe185, 0x412c, 0xb5,0xc5, 0x4f,0x27,0xdf,0x96,0x5a,0xea); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("47c01f95-e185-412c-b5c5-4f27df965aea") IFolderBandPriv : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetCascade( WINBOOL fCascade) = 0; virtual HRESULT STDMETHODCALLTYPE SetAccelerators( WINBOOL fAccelerators) = 0; virtual HRESULT STDMETHODCALLTYPE SetNoIcons( WINBOOL fNoIcons) = 0; virtual HRESULT STDMETHODCALLTYPE SetNoText( WINBOOL fNoText) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderBandPriv, 0x47c01f95, 0xe185, 0x412c, 0xb5,0xc5, 0x4f,0x27,0xdf,0x96,0x5a,0xea) #endif #else typedef struct IFolderBandPrivVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderBandPriv *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderBandPriv *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderBandPriv *This); /*** IFolderBandPriv methods ***/ HRESULT (STDMETHODCALLTYPE *SetCascade)( IFolderBandPriv *This, WINBOOL fCascade); HRESULT (STDMETHODCALLTYPE *SetAccelerators)( IFolderBandPriv *This, WINBOOL fAccelerators); HRESULT (STDMETHODCALLTYPE *SetNoIcons)( IFolderBandPriv *This, WINBOOL fNoIcons); HRESULT (STDMETHODCALLTYPE *SetNoText)( IFolderBandPriv *This, WINBOOL fNoText); END_INTERFACE } IFolderBandPrivVtbl; interface IFolderBandPriv { CONST_VTBL IFolderBandPrivVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderBandPriv_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderBandPriv_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderBandPriv_Release(This) (This)->lpVtbl->Release(This) /*** IFolderBandPriv methods ***/ #define IFolderBandPriv_SetCascade(This,fCascade) (This)->lpVtbl->SetCascade(This,fCascade) #define IFolderBandPriv_SetAccelerators(This,fAccelerators) (This)->lpVtbl->SetAccelerators(This,fAccelerators) #define IFolderBandPriv_SetNoIcons(This,fNoIcons) (This)->lpVtbl->SetNoIcons(This,fNoIcons) #define IFolderBandPriv_SetNoText(This,fNoText) (This)->lpVtbl->SetNoText(This,fNoText) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFolderBandPriv_QueryInterface(IFolderBandPriv* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFolderBandPriv_AddRef(IFolderBandPriv* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFolderBandPriv_Release(IFolderBandPriv* This) { return This->lpVtbl->Release(This); } /*** IFolderBandPriv methods ***/ static FORCEINLINE HRESULT IFolderBandPriv_SetCascade(IFolderBandPriv* This,WINBOOL fCascade) { return This->lpVtbl->SetCascade(This,fCascade); } static FORCEINLINE HRESULT IFolderBandPriv_SetAccelerators(IFolderBandPriv* This,WINBOOL fAccelerators) { return This->lpVtbl->SetAccelerators(This,fAccelerators); } static FORCEINLINE HRESULT IFolderBandPriv_SetNoIcons(IFolderBandPriv* This,WINBOOL fNoIcons) { return This->lpVtbl->SetNoIcons(This,fNoIcons); } static FORCEINLINE HRESULT IFolderBandPriv_SetNoText(IFolderBandPriv* This,WINBOOL fNoText) { return This->lpVtbl->SetNoText(This,fNoText); } #endif #endif #endif #endif /* __IFolderBandPriv_INTERFACE_DEFINED__ */ /***************************************************************************** * IRegTreeItem interface */ #ifndef __IRegTreeItem_INTERFACE_DEFINED__ #define __IRegTreeItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IRegTreeItem, 0xa9521922, 0x0812, 0x4d44, 0x9e,0xc3, 0x7f,0xd3,0x8c,0x72,0x6f,0x3d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a9521922-0812-4d44-9ec3-7fd38c726f3d") IRegTreeItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCheckState( WINBOOL *pbCheck) = 0; virtual HRESULT STDMETHODCALLTYPE SetCheckState( WINBOOL bCheck) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IRegTreeItem, 0xa9521922, 0x0812, 0x4d44, 0x9e,0xc3, 0x7f,0xd3,0x8c,0x72,0x6f,0x3d) #endif #else typedef struct IRegTreeItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IRegTreeItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IRegTreeItem *This); ULONG (STDMETHODCALLTYPE *Release)( IRegTreeItem *This); /*** IRegTreeItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetCheckState)( IRegTreeItem *This, WINBOOL *pbCheck); HRESULT (STDMETHODCALLTYPE *SetCheckState)( IRegTreeItem *This, WINBOOL bCheck); END_INTERFACE } IRegTreeItemVtbl; interface IRegTreeItem { CONST_VTBL IRegTreeItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IRegTreeItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IRegTreeItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IRegTreeItem_Release(This) (This)->lpVtbl->Release(This) /*** IRegTreeItem methods ***/ #define IRegTreeItem_GetCheckState(This,pbCheck) (This)->lpVtbl->GetCheckState(This,pbCheck) #define IRegTreeItem_SetCheckState(This,bCheck) (This)->lpVtbl->SetCheckState(This,bCheck) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IRegTreeItem_QueryInterface(IRegTreeItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IRegTreeItem_AddRef(IRegTreeItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IRegTreeItem_Release(IRegTreeItem* This) { return This->lpVtbl->Release(This); } /*** IRegTreeItem methods ***/ static FORCEINLINE HRESULT IRegTreeItem_GetCheckState(IRegTreeItem* This,WINBOOL *pbCheck) { return This->lpVtbl->GetCheckState(This,pbCheck); } static FORCEINLINE HRESULT IRegTreeItem_SetCheckState(IRegTreeItem* This,WINBOOL bCheck) { return This->lpVtbl->SetCheckState(This,bCheck); } #endif #endif #endif #endif /* __IRegTreeItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IImageRecompress interface */ #ifndef __IImageRecompress_INTERFACE_DEFINED__ #define __IImageRecompress_INTERFACE_DEFINED__ DEFINE_GUID(IID_IImageRecompress, 0x505f1513, 0x6b3e, 0x4892, 0xa2,0x72, 0x59,0xf8,0x88,0x9a,0x4d,0x3e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("505f1513-6b3e-4892-a272-59f8889a4d3e") IImageRecompress : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RecompressImage( IShellItem *psi, int cx, int cy, int iQuality, IStorage *pstg, IStream **ppstrmOut) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IImageRecompress, 0x505f1513, 0x6b3e, 0x4892, 0xa2,0x72, 0x59,0xf8,0x88,0x9a,0x4d,0x3e) #endif #else typedef struct IImageRecompressVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IImageRecompress *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IImageRecompress *This); ULONG (STDMETHODCALLTYPE *Release)( IImageRecompress *This); /*** IImageRecompress methods ***/ HRESULT (STDMETHODCALLTYPE *RecompressImage)( IImageRecompress *This, IShellItem *psi, int cx, int cy, int iQuality, IStorage *pstg, IStream **ppstrmOut); END_INTERFACE } IImageRecompressVtbl; interface IImageRecompress { CONST_VTBL IImageRecompressVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IImageRecompress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IImageRecompress_AddRef(This) (This)->lpVtbl->AddRef(This) #define IImageRecompress_Release(This) (This)->lpVtbl->Release(This) /*** IImageRecompress methods ***/ #define IImageRecompress_RecompressImage(This,psi,cx,cy,iQuality,pstg,ppstrmOut) (This)->lpVtbl->RecompressImage(This,psi,cx,cy,iQuality,pstg,ppstrmOut) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IImageRecompress_QueryInterface(IImageRecompress* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IImageRecompress_AddRef(IImageRecompress* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IImageRecompress_Release(IImageRecompress* This) { return This->lpVtbl->Release(This); } /*** IImageRecompress methods ***/ static FORCEINLINE HRESULT IImageRecompress_RecompressImage(IImageRecompress* This,IShellItem *psi,int cx,int cy,int iQuality,IStorage *pstg,IStream **ppstrmOut) { return This->lpVtbl->RecompressImage(This,psi,cx,cy,iQuality,pstg,ppstrmOut); } #endif #endif #endif #endif /* __IImageRecompress_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE60 /***************************************************************************** * IDeskBar interface */ #ifndef __IDeskBar_INTERFACE_DEFINED__ #define __IDeskBar_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDeskBar, 0xeb0fe173, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("eb0fe173-1a3a-11d0-89b3-00a0c90a90ac") IDeskBar : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE SetClient( IUnknown *punkClient) = 0; virtual HRESULT STDMETHODCALLTYPE GetClient( IUnknown **ppunkClient) = 0; virtual HRESULT STDMETHODCALLTYPE OnPosRectChangeDB( RECT *prc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDeskBar, 0xeb0fe173, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac) #endif #else typedef struct IDeskBarVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDeskBar *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDeskBar *This); ULONG (STDMETHODCALLTYPE *Release)( IDeskBar *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IDeskBar *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IDeskBar *This, WINBOOL fEnterMode); /*** IDeskBar methods ***/ HRESULT (STDMETHODCALLTYPE *SetClient)( IDeskBar *This, IUnknown *punkClient); HRESULT (STDMETHODCALLTYPE *GetClient)( IDeskBar *This, IUnknown **ppunkClient); HRESULT (STDMETHODCALLTYPE *OnPosRectChangeDB)( IDeskBar *This, RECT *prc); END_INTERFACE } IDeskBarVtbl; interface IDeskBar { CONST_VTBL IDeskBarVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDeskBar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDeskBar_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDeskBar_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IDeskBar_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IDeskBar_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDeskBar methods ***/ #define IDeskBar_SetClient(This,punkClient) (This)->lpVtbl->SetClient(This,punkClient) #define IDeskBar_GetClient(This,ppunkClient) (This)->lpVtbl->GetClient(This,ppunkClient) #define IDeskBar_OnPosRectChangeDB(This,prc) (This)->lpVtbl->OnPosRectChangeDB(This,prc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDeskBar_QueryInterface(IDeskBar* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDeskBar_AddRef(IDeskBar* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDeskBar_Release(IDeskBar* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IDeskBar_GetWindow(IDeskBar* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IDeskBar_ContextSensitiveHelp(IDeskBar* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDeskBar methods ***/ static FORCEINLINE HRESULT IDeskBar_SetClient(IDeskBar* This,IUnknown *punkClient) { return This->lpVtbl->SetClient(This,punkClient); } static FORCEINLINE HRESULT IDeskBar_GetClient(IDeskBar* This,IUnknown **ppunkClient) { return This->lpVtbl->GetClient(This,ppunkClient); } static FORCEINLINE HRESULT IDeskBar_OnPosRectChangeDB(IDeskBar* This,RECT *prc) { return This->lpVtbl->OnPosRectChangeDB(This,prc); } #endif #endif #endif #endif /* __IDeskBar_INTERFACE_DEFINED__ */ /***************************************************************************** * IMenuPopup interface */ #ifndef __IMenuPopup_INTERFACE_DEFINED__ #define __IMenuPopup_INTERFACE_DEFINED__ enum tagMENUPOPUPSELECT { MPOS_EXECUTE = 0, MPOS_FULLCANCEL = 1, MPOS_CANCELLEVEL = 2, MPOS_SELECTLEFT = 3, MPOS_SELECTRIGHT = 4, MPOS_CHILDTRACKING = 5 }; enum tagMENUPOPUPPOPUPFLAGS { MPPF_SETFOCUS = 0x1, MPPF_INITIALSELECT = 0x2, MPPF_NOANIMATE = 0x4, MPPF_KEYBOARD = 0x10, MPPF_REPOSITION = 0x20, MPPF_FORCEZORDER = 0x40, MPPF_FINALSELECT = 0x80, MPPF_TOP = 0x20000000, MPPF_LEFT = 0x40000000, MPPF_RIGHT = 0x60000000, MPPF_BOTTOM = (int)0x80000000, MPPF_POS_MASK = (int)0xe0000000, MPPF_ALIGN_LEFT = 0x2000000, MPPF_ALIGN_RIGHT = 0x4000000 }; typedef int MP_POPUPFLAGS; DEFINE_GUID(IID_IMenuPopup, 0xd1e7afeb, 0x6a2e, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d1e7afeb-6a2e-11d0-8c78-00c04fd918b4") IMenuPopup : public IDeskBar { virtual HRESULT STDMETHODCALLTYPE Popup( POINTL *ppt, RECTL *prcExclude, MP_POPUPFLAGS dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE OnSelect( DWORD dwSelectType) = 0; virtual HRESULT STDMETHODCALLTYPE SetSubMenu( IMenuPopup *pmp, WINBOOL fSet) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IMenuPopup, 0xd1e7afeb, 0x6a2e, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4) #endif #else typedef struct IMenuPopupVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IMenuPopup *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IMenuPopup *This); ULONG (STDMETHODCALLTYPE *Release)( IMenuPopup *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IMenuPopup *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IMenuPopup *This, WINBOOL fEnterMode); /*** IDeskBar methods ***/ HRESULT (STDMETHODCALLTYPE *SetClient)( IMenuPopup *This, IUnknown *punkClient); HRESULT (STDMETHODCALLTYPE *GetClient)( IMenuPopup *This, IUnknown **ppunkClient); HRESULT (STDMETHODCALLTYPE *OnPosRectChangeDB)( IMenuPopup *This, RECT *prc); /*** IMenuPopup methods ***/ HRESULT (STDMETHODCALLTYPE *Popup)( IMenuPopup *This, POINTL *ppt, RECTL *prcExclude, MP_POPUPFLAGS dwFlags); HRESULT (STDMETHODCALLTYPE *OnSelect)( IMenuPopup *This, DWORD dwSelectType); HRESULT (STDMETHODCALLTYPE *SetSubMenu)( IMenuPopup *This, IMenuPopup *pmp, WINBOOL fSet); END_INTERFACE } IMenuPopupVtbl; interface IMenuPopup { CONST_VTBL IMenuPopupVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IMenuPopup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IMenuPopup_AddRef(This) (This)->lpVtbl->AddRef(This) #define IMenuPopup_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IMenuPopup_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IMenuPopup_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDeskBar methods ***/ #define IMenuPopup_SetClient(This,punkClient) (This)->lpVtbl->SetClient(This,punkClient) #define IMenuPopup_GetClient(This,ppunkClient) (This)->lpVtbl->GetClient(This,ppunkClient) #define IMenuPopup_OnPosRectChangeDB(This,prc) (This)->lpVtbl->OnPosRectChangeDB(This,prc) /*** IMenuPopup methods ***/ #define IMenuPopup_Popup(This,ppt,prcExclude,dwFlags) (This)->lpVtbl->Popup(This,ppt,prcExclude,dwFlags) #define IMenuPopup_OnSelect(This,dwSelectType) (This)->lpVtbl->OnSelect(This,dwSelectType) #define IMenuPopup_SetSubMenu(This,pmp,fSet) (This)->lpVtbl->SetSubMenu(This,pmp,fSet) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IMenuPopup_QueryInterface(IMenuPopup* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IMenuPopup_AddRef(IMenuPopup* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IMenuPopup_Release(IMenuPopup* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static FORCEINLINE HRESULT IMenuPopup_GetWindow(IMenuPopup* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static FORCEINLINE HRESULT IMenuPopup_ContextSensitiveHelp(IMenuPopup* This,WINBOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDeskBar methods ***/ static FORCEINLINE HRESULT IMenuPopup_SetClient(IMenuPopup* This,IUnknown *punkClient) { return This->lpVtbl->SetClient(This,punkClient); } static FORCEINLINE HRESULT IMenuPopup_GetClient(IMenuPopup* This,IUnknown **ppunkClient) { return This->lpVtbl->GetClient(This,ppunkClient); } static FORCEINLINE HRESULT IMenuPopup_OnPosRectChangeDB(IMenuPopup* This,RECT *prc) { return This->lpVtbl->OnPosRectChangeDB(This,prc); } /*** IMenuPopup methods ***/ static FORCEINLINE HRESULT IMenuPopup_Popup(IMenuPopup* This,POINTL *ppt,RECTL *prcExclude,MP_POPUPFLAGS dwFlags) { return This->lpVtbl->Popup(This,ppt,prcExclude,dwFlags); } static FORCEINLINE HRESULT IMenuPopup_OnSelect(IMenuPopup* This,DWORD dwSelectType) { return This->lpVtbl->OnSelect(This,dwSelectType); } static FORCEINLINE HRESULT IMenuPopup_SetSubMenu(IMenuPopup* This,IMenuPopup *pmp,WINBOOL fSet) { return This->lpVtbl->SetSubMenu(This,pmp,fSet); } #endif #endif #endif #endif /* __IMenuPopup_INTERFACE_DEFINED__ */ #endif #if NTDDI_VERSION >= NTDDI_VISTA typedef enum FILE_USAGE_TYPE { FUT_PLAYING = 0, FUT_EDITING = 1, FUT_GENERIC = 2 } FILE_USAGE_TYPE; #define OF_CAP_CANSWITCHTO 0x0001 #define OF_CAP_CANCLOSE 0x0002 /***************************************************************************** * IFileIsInUse interface */ #ifndef __IFileIsInUse_INTERFACE_DEFINED__ #define __IFileIsInUse_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileIsInUse, 0x64a1cbf0, 0x3a1a, 0x4461, 0x91,0x58, 0x37,0x69,0x69,0x69,0x39,0x50); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("64a1cbf0-3a1a-4461-9158-376969693950") IFileIsInUse : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetAppName( LPWSTR *ppszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetUsage( FILE_USAGE_TYPE *pfut) = 0; virtual HRESULT STDMETHODCALLTYPE GetCapabilities( DWORD *pdwCapFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetSwitchToHWND( HWND *phwnd) = 0; virtual HRESULT STDMETHODCALLTYPE CloseFile( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileIsInUse, 0x64a1cbf0, 0x3a1a, 0x4461, 0x91,0x58, 0x37,0x69,0x69,0x69,0x39,0x50) #endif #else typedef struct IFileIsInUseVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileIsInUse *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileIsInUse *This); ULONG (STDMETHODCALLTYPE *Release)( IFileIsInUse *This); /*** IFileIsInUse methods ***/ HRESULT (STDMETHODCALLTYPE *GetAppName)( IFileIsInUse *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetUsage)( IFileIsInUse *This, FILE_USAGE_TYPE *pfut); HRESULT (STDMETHODCALLTYPE *GetCapabilities)( IFileIsInUse *This, DWORD *pdwCapFlags); HRESULT (STDMETHODCALLTYPE *GetSwitchToHWND)( IFileIsInUse *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *CloseFile)( IFileIsInUse *This); END_INTERFACE } IFileIsInUseVtbl; interface IFileIsInUse { CONST_VTBL IFileIsInUseVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileIsInUse_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileIsInUse_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileIsInUse_Release(This) (This)->lpVtbl->Release(This) /*** IFileIsInUse methods ***/ #define IFileIsInUse_GetAppName(This,ppszName) (This)->lpVtbl->GetAppName(This,ppszName) #define IFileIsInUse_GetUsage(This,pfut) (This)->lpVtbl->GetUsage(This,pfut) #define IFileIsInUse_GetCapabilities(This,pdwCapFlags) (This)->lpVtbl->GetCapabilities(This,pdwCapFlags) #define IFileIsInUse_GetSwitchToHWND(This,phwnd) (This)->lpVtbl->GetSwitchToHWND(This,phwnd) #define IFileIsInUse_CloseFile(This) (This)->lpVtbl->CloseFile(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileIsInUse_QueryInterface(IFileIsInUse* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileIsInUse_AddRef(IFileIsInUse* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileIsInUse_Release(IFileIsInUse* This) { return This->lpVtbl->Release(This); } /*** IFileIsInUse methods ***/ static FORCEINLINE HRESULT IFileIsInUse_GetAppName(IFileIsInUse* This,LPWSTR *ppszName) { return This->lpVtbl->GetAppName(This,ppszName); } static FORCEINLINE HRESULT IFileIsInUse_GetUsage(IFileIsInUse* This,FILE_USAGE_TYPE *pfut) { return This->lpVtbl->GetUsage(This,pfut); } static FORCEINLINE HRESULT IFileIsInUse_GetCapabilities(IFileIsInUse* This,DWORD *pdwCapFlags) { return This->lpVtbl->GetCapabilities(This,pdwCapFlags); } static FORCEINLINE HRESULT IFileIsInUse_GetSwitchToHWND(IFileIsInUse* This,HWND *phwnd) { return This->lpVtbl->GetSwitchToHWND(This,phwnd); } static FORCEINLINE HRESULT IFileIsInUse_CloseFile(IFileIsInUse* This) { return This->lpVtbl->CloseFile(This); } #endif #endif #endif #endif /* __IFileIsInUse_INTERFACE_DEFINED__ */ #ifndef __IFileDialog_FWD_DEFINED__ #define __IFileDialog_FWD_DEFINED__ typedef interface IFileDialog IFileDialog; #ifdef __cplusplus interface IFileDialog; #endif /* __cplusplus */ #endif typedef enum FDE_OVERWRITE_RESPONSE { FDEOR_DEFAULT = 0, FDEOR_ACCEPT = 1, FDEOR_REFUSE = 2 } FDE_OVERWRITE_RESPONSE; typedef enum FDE_SHAREVIOLATION_RESPONSE { FDESVR_DEFAULT = 0, FDESVR_ACCEPT = 1, FDESVR_REFUSE = 2 } FDE_SHAREVIOLATION_RESPONSE; typedef enum FDAP { FDAP_BOTTOM = 0, FDAP_TOP = 1 } FDAP; /***************************************************************************** * IFileDialogEvents interface */ #ifndef __IFileDialogEvents_INTERFACE_DEFINED__ #define __IFileDialogEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialogEvents, 0x973510db, 0x7d7f, 0x452b, 0x89,0x75, 0x74,0xa8,0x58,0x28,0xd3,0x54); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("973510db-7d7f-452b-8975-74a85828d354") IFileDialogEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnFileOk( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnFolderChanging( IFileDialog *pfd, IShellItem *psiFolder) = 0; virtual HRESULT STDMETHODCALLTYPE OnFolderChange( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnSelectionChange( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnShareViolation( IFileDialog *pfd, IShellItem *psi, FDE_SHAREVIOLATION_RESPONSE *pResponse) = 0; virtual HRESULT STDMETHODCALLTYPE OnTypeChange( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnOverwrite( IFileDialog *pfd, IShellItem *psi, FDE_OVERWRITE_RESPONSE *pResponse) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialogEvents, 0x973510db, 0x7d7f, 0x452b, 0x89,0x75, 0x74,0xa8,0x58,0x28,0xd3,0x54) #endif #else typedef struct IFileDialogEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialogEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialogEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialogEvents *This); /*** IFileDialogEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnFileOk)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnFolderChanging)( IFileDialogEvents *This, IFileDialog *pfd, IShellItem *psiFolder); HRESULT (STDMETHODCALLTYPE *OnFolderChange)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnSelectionChange)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnShareViolation)( IFileDialogEvents *This, IFileDialog *pfd, IShellItem *psi, FDE_SHAREVIOLATION_RESPONSE *pResponse); HRESULT (STDMETHODCALLTYPE *OnTypeChange)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnOverwrite)( IFileDialogEvents *This, IFileDialog *pfd, IShellItem *psi, FDE_OVERWRITE_RESPONSE *pResponse); END_INTERFACE } IFileDialogEventsVtbl; interface IFileDialogEvents { CONST_VTBL IFileDialogEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialogEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialogEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialogEvents_Release(This) (This)->lpVtbl->Release(This) /*** IFileDialogEvents methods ***/ #define IFileDialogEvents_OnFileOk(This,pfd) (This)->lpVtbl->OnFileOk(This,pfd) #define IFileDialogEvents_OnFolderChanging(This,pfd,psiFolder) (This)->lpVtbl->OnFolderChanging(This,pfd,psiFolder) #define IFileDialogEvents_OnFolderChange(This,pfd) (This)->lpVtbl->OnFolderChange(This,pfd) #define IFileDialogEvents_OnSelectionChange(This,pfd) (This)->lpVtbl->OnSelectionChange(This,pfd) #define IFileDialogEvents_OnShareViolation(This,pfd,psi,pResponse) (This)->lpVtbl->OnShareViolation(This,pfd,psi,pResponse) #define IFileDialogEvents_OnTypeChange(This,pfd) (This)->lpVtbl->OnTypeChange(This,pfd) #define IFileDialogEvents_OnOverwrite(This,pfd,psi,pResponse) (This)->lpVtbl->OnOverwrite(This,pfd,psi,pResponse) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileDialogEvents_QueryInterface(IFileDialogEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileDialogEvents_AddRef(IFileDialogEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileDialogEvents_Release(IFileDialogEvents* This) { return This->lpVtbl->Release(This); } /*** IFileDialogEvents methods ***/ static FORCEINLINE HRESULT IFileDialogEvents_OnFileOk(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnFileOk(This,pfd); } static FORCEINLINE HRESULT IFileDialogEvents_OnFolderChanging(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psiFolder) { return This->lpVtbl->OnFolderChanging(This,pfd,psiFolder); } static FORCEINLINE HRESULT IFileDialogEvents_OnFolderChange(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnFolderChange(This,pfd); } static FORCEINLINE HRESULT IFileDialogEvents_OnSelectionChange(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnSelectionChange(This,pfd); } static FORCEINLINE HRESULT IFileDialogEvents_OnShareViolation(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psi,FDE_SHAREVIOLATION_RESPONSE *pResponse) { return This->lpVtbl->OnShareViolation(This,pfd,psi,pResponse); } static FORCEINLINE HRESULT IFileDialogEvents_OnTypeChange(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnTypeChange(This,pfd); } static FORCEINLINE HRESULT IFileDialogEvents_OnOverwrite(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psi,FDE_OVERWRITE_RESPONSE *pResponse) { return This->lpVtbl->OnOverwrite(This,pfd,psi,pResponse); } #endif #endif #endif #endif /* __IFileDialogEvents_INTERFACE_DEFINED__ */ #ifndef __IShellItemFilter_FWD_DEFINED__ #define __IShellItemFilter_FWD_DEFINED__ typedef interface IShellItemFilter IShellItemFilter; #ifdef __cplusplus interface IShellItemFilter; #endif /* __cplusplus */ #endif /***************************************************************************** * IFileDialog interface */ #ifndef __IFileDialog_INTERFACE_DEFINED__ #define __IFileDialog_INTERFACE_DEFINED__ enum _FILEOPENDIALOGOPTIONS { FOS_OVERWRITEPROMPT = 0x2, FOS_STRICTFILETYPES = 0x4, FOS_NOCHANGEDIR = 0x8, FOS_PICKFOLDERS = 0x20, FOS_FORCEFILESYSTEM = 0x40, FOS_ALLNONSTORAGEITEMS = 0x80, FOS_NOVALIDATE = 0x100, FOS_ALLOWMULTISELECT = 0x200, FOS_PATHMUSTEXIST = 0x800, FOS_FILEMUSTEXIST = 0x1000, FOS_CREATEPROMPT = 0x2000, FOS_SHAREAWARE = 0x4000, FOS_NOREADONLYRETURN = 0x8000, FOS_NOTESTFILECREATE = 0x10000, FOS_HIDEMRUPLACES = 0x20000, FOS_HIDEPINNEDPLACES = 0x40000, FOS_NODEREFERENCELINKS = 0x100000, FOS_DONTADDTORECENT = 0x2000000, FOS_FORCESHOWHIDDEN = 0x10000000, FOS_DEFAULTNOMINIMODE = 0x20000000, FOS_FORCEPREVIEWPANEON = 0x40000000, FOS_SUPPORTSTREAMABLEITEMS = 0x80000000 }; typedef DWORD FILEOPENDIALOGOPTIONS; DEFINE_GUID(IID_IFileDialog, 0x42f85136, 0xdb7e, 0x439c, 0x85,0xf1, 0xe4,0x07,0x5d,0x13,0x5f,0xc8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("42f85136-db7e-439c-85f1-e4075d135fc8") IFileDialog : public IModalWindow { virtual HRESULT STDMETHODCALLTYPE SetFileTypes( UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileTypeIndex( UINT iFileType) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileTypeIndex( UINT *piFileType) = 0; virtual HRESULT STDMETHODCALLTYPE Advise( IFileDialogEvents *pfde, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetOptions( FILEOPENDIALOGOPTIONS fos) = 0; virtual HRESULT STDMETHODCALLTYPE GetOptions( FILEOPENDIALOGOPTIONS *pfos) = 0; virtual HRESULT STDMETHODCALLTYPE SetDefaultFolder( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolder( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentSelection( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileName( LPCWSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileName( LPWSTR *pszName) = 0; virtual HRESULT STDMETHODCALLTYPE SetTitle( LPCWSTR pszTitle) = 0; virtual HRESULT STDMETHODCALLTYPE SetOkButtonLabel( LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileNameLabel( LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE GetResult( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE AddPlace( IShellItem *psi, FDAP fdap) = 0; virtual HRESULT STDMETHODCALLTYPE SetDefaultExtension( LPCWSTR pszDefaultExtension) = 0; virtual HRESULT STDMETHODCALLTYPE Close( HRESULT hr) = 0; virtual HRESULT STDMETHODCALLTYPE SetClientGuid( REFGUID guid) = 0; virtual HRESULT STDMETHODCALLTYPE ClearClientData( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetFilter( IShellItemFilter *pFilter) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialog, 0x42f85136, 0xdb7e, 0x439c, 0x85,0xf1, 0xe4,0x07,0x5d,0x13,0x5f,0xc8) #endif #else typedef struct IFileDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialog *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileDialog *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileDialog *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileDialog *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileDialog *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileDialog *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileDialog *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileDialog *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileDialog *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileDialog *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileDialog *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileDialog *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileDialog *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileDialog *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileDialog *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileDialog *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileDialog *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileDialog *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileDialog *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileDialog *This, IShellItemFilter *pFilter); END_INTERFACE } IFileDialogVtbl; interface IFileDialog { CONST_VTBL IFileDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialog_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileDialog_QueryInterface(IFileDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileDialog_AddRef(IFileDialog* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileDialog_Release(IFileDialog* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static FORCEINLINE HRESULT IFileDialog_Show(IFileDialog* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static FORCEINLINE HRESULT IFileDialog_SetFileTypes(IFileDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static FORCEINLINE HRESULT IFileDialog_SetFileTypeIndex(IFileDialog* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static FORCEINLINE HRESULT IFileDialog_GetFileTypeIndex(IFileDialog* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static FORCEINLINE HRESULT IFileDialog_Advise(IFileDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static FORCEINLINE HRESULT IFileDialog_Unadvise(IFileDialog* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IFileDialog_SetOptions(IFileDialog* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static FORCEINLINE HRESULT IFileDialog_GetOptions(IFileDialog* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static FORCEINLINE HRESULT IFileDialog_SetDefaultFolder(IFileDialog* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static FORCEINLINE HRESULT IFileDialog_SetFolder(IFileDialog* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static FORCEINLINE HRESULT IFileDialog_GetFolder(IFileDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static FORCEINLINE HRESULT IFileDialog_GetCurrentSelection(IFileDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static FORCEINLINE HRESULT IFileDialog_SetFileName(IFileDialog* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static FORCEINLINE HRESULT IFileDialog_GetFileName(IFileDialog* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static FORCEINLINE HRESULT IFileDialog_SetTitle(IFileDialog* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static FORCEINLINE HRESULT IFileDialog_SetOkButtonLabel(IFileDialog* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static FORCEINLINE HRESULT IFileDialog_SetFileNameLabel(IFileDialog* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static FORCEINLINE HRESULT IFileDialog_GetResult(IFileDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static FORCEINLINE HRESULT IFileDialog_AddPlace(IFileDialog* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static FORCEINLINE HRESULT IFileDialog_SetDefaultExtension(IFileDialog* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static FORCEINLINE HRESULT IFileDialog_Close(IFileDialog* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static FORCEINLINE HRESULT IFileDialog_SetClientGuid(IFileDialog* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static FORCEINLINE HRESULT IFileDialog_ClearClientData(IFileDialog* This) { return This->lpVtbl->ClearClientData(This); } static FORCEINLINE HRESULT IFileDialog_SetFilter(IFileDialog* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } #endif #endif #endif #endif /* __IFileDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileSaveDialog interface */ #ifndef __IFileSaveDialog_INTERFACE_DEFINED__ #define __IFileSaveDialog_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileSaveDialog, 0x84bccd23, 0x5fde, 0x4cdb, 0xae,0xa4, 0xaf,0x64,0xb8,0x3d,0x78,0xab); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("84bccd23-5fde-4cdb-aea4-af64b83d78ab") IFileSaveDialog : public IFileDialog { virtual HRESULT STDMETHODCALLTYPE SetSaveAsItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE SetProperties( IPropertyStore *pStore) = 0; virtual HRESULT STDMETHODCALLTYPE SetCollectedProperties( IPropertyDescriptionList *pList, WINBOOL fAppendDefault) = 0; virtual HRESULT STDMETHODCALLTYPE GetProperties( IPropertyStore **ppStore) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyProperties( IShellItem *psi, IPropertyStore *pStore, HWND hwnd, IFileOperationProgressSink *pSink) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileSaveDialog, 0x84bccd23, 0x5fde, 0x4cdb, 0xae,0xa4, 0xaf,0x64,0xb8,0x3d,0x78,0xab) #endif #else typedef struct IFileSaveDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileSaveDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileSaveDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IFileSaveDialog *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileSaveDialog *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileSaveDialog *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileSaveDialog *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileSaveDialog *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileSaveDialog *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileSaveDialog *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileSaveDialog *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileSaveDialog *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileSaveDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileSaveDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileSaveDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileSaveDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileSaveDialog *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileSaveDialog *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileSaveDialog *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileSaveDialog *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileSaveDialog *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileSaveDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileSaveDialog *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileSaveDialog *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileSaveDialog *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileSaveDialog *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileSaveDialog *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileSaveDialog *This, IShellItemFilter *pFilter); /*** IFileSaveDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetSaveAsItem)( IFileSaveDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetProperties)( IFileSaveDialog *This, IPropertyStore *pStore); HRESULT (STDMETHODCALLTYPE *SetCollectedProperties)( IFileSaveDialog *This, IPropertyDescriptionList *pList, WINBOOL fAppendDefault); HRESULT (STDMETHODCALLTYPE *GetProperties)( IFileSaveDialog *This, IPropertyStore **ppStore); HRESULT (STDMETHODCALLTYPE *ApplyProperties)( IFileSaveDialog *This, IShellItem *psi, IPropertyStore *pStore, HWND hwnd, IFileOperationProgressSink *pSink); END_INTERFACE } IFileSaveDialogVtbl; interface IFileSaveDialog { CONST_VTBL IFileSaveDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileSaveDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileSaveDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileSaveDialog_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileSaveDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileSaveDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileSaveDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileSaveDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileSaveDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileSaveDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileSaveDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileSaveDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileSaveDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileSaveDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileSaveDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileSaveDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileSaveDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileSaveDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileSaveDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileSaveDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileSaveDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileSaveDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileSaveDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileSaveDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileSaveDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileSaveDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileSaveDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileSaveDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) /*** IFileSaveDialog methods ***/ #define IFileSaveDialog_SetSaveAsItem(This,psi) (This)->lpVtbl->SetSaveAsItem(This,psi) #define IFileSaveDialog_SetProperties(This,pStore) (This)->lpVtbl->SetProperties(This,pStore) #define IFileSaveDialog_SetCollectedProperties(This,pList,fAppendDefault) (This)->lpVtbl->SetCollectedProperties(This,pList,fAppendDefault) #define IFileSaveDialog_GetProperties(This,ppStore) (This)->lpVtbl->GetProperties(This,ppStore) #define IFileSaveDialog_ApplyProperties(This,psi,pStore,hwnd,pSink) (This)->lpVtbl->ApplyProperties(This,psi,pStore,hwnd,pSink) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileSaveDialog_QueryInterface(IFileSaveDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileSaveDialog_AddRef(IFileSaveDialog* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileSaveDialog_Release(IFileSaveDialog* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static FORCEINLINE HRESULT IFileSaveDialog_Show(IFileSaveDialog* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static FORCEINLINE HRESULT IFileSaveDialog_SetFileTypes(IFileSaveDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static FORCEINLINE HRESULT IFileSaveDialog_SetFileTypeIndex(IFileSaveDialog* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static FORCEINLINE HRESULT IFileSaveDialog_GetFileTypeIndex(IFileSaveDialog* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static FORCEINLINE HRESULT IFileSaveDialog_Advise(IFileSaveDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static FORCEINLINE HRESULT IFileSaveDialog_Unadvise(IFileSaveDialog* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IFileSaveDialog_SetOptions(IFileSaveDialog* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static FORCEINLINE HRESULT IFileSaveDialog_GetOptions(IFileSaveDialog* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static FORCEINLINE HRESULT IFileSaveDialog_SetDefaultFolder(IFileSaveDialog* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static FORCEINLINE HRESULT IFileSaveDialog_SetFolder(IFileSaveDialog* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static FORCEINLINE HRESULT IFileSaveDialog_GetFolder(IFileSaveDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static FORCEINLINE HRESULT IFileSaveDialog_GetCurrentSelection(IFileSaveDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static FORCEINLINE HRESULT IFileSaveDialog_SetFileName(IFileSaveDialog* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static FORCEINLINE HRESULT IFileSaveDialog_GetFileName(IFileSaveDialog* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static FORCEINLINE HRESULT IFileSaveDialog_SetTitle(IFileSaveDialog* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static FORCEINLINE HRESULT IFileSaveDialog_SetOkButtonLabel(IFileSaveDialog* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static FORCEINLINE HRESULT IFileSaveDialog_SetFileNameLabel(IFileSaveDialog* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static FORCEINLINE HRESULT IFileSaveDialog_GetResult(IFileSaveDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static FORCEINLINE HRESULT IFileSaveDialog_AddPlace(IFileSaveDialog* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static FORCEINLINE HRESULT IFileSaveDialog_SetDefaultExtension(IFileSaveDialog* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static FORCEINLINE HRESULT IFileSaveDialog_Close(IFileSaveDialog* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static FORCEINLINE HRESULT IFileSaveDialog_SetClientGuid(IFileSaveDialog* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static FORCEINLINE HRESULT IFileSaveDialog_ClearClientData(IFileSaveDialog* This) { return This->lpVtbl->ClearClientData(This); } static FORCEINLINE HRESULT IFileSaveDialog_SetFilter(IFileSaveDialog* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } /*** IFileSaveDialog methods ***/ static FORCEINLINE HRESULT IFileSaveDialog_SetSaveAsItem(IFileSaveDialog* This,IShellItem *psi) { return This->lpVtbl->SetSaveAsItem(This,psi); } static FORCEINLINE HRESULT IFileSaveDialog_SetProperties(IFileSaveDialog* This,IPropertyStore *pStore) { return This->lpVtbl->SetProperties(This,pStore); } static FORCEINLINE HRESULT IFileSaveDialog_SetCollectedProperties(IFileSaveDialog* This,IPropertyDescriptionList *pList,WINBOOL fAppendDefault) { return This->lpVtbl->SetCollectedProperties(This,pList,fAppendDefault); } static FORCEINLINE HRESULT IFileSaveDialog_GetProperties(IFileSaveDialog* This,IPropertyStore **ppStore) { return This->lpVtbl->GetProperties(This,ppStore); } static FORCEINLINE HRESULT IFileSaveDialog_ApplyProperties(IFileSaveDialog* This,IShellItem *psi,IPropertyStore *pStore,HWND hwnd,IFileOperationProgressSink *pSink) { return This->lpVtbl->ApplyProperties(This,psi,pStore,hwnd,pSink); } #endif #endif #endif #endif /* __IFileSaveDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileOpenDialog interface */ #ifndef __IFileOpenDialog_INTERFACE_DEFINED__ #define __IFileOpenDialog_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileOpenDialog, 0xd57c7288, 0xd4ad, 0x4768, 0xbe,0x02, 0x9d,0x96,0x95,0x32,0xd9,0x60); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d57c7288-d4ad-4768-be02-9d969532d960") IFileOpenDialog : public IFileDialog { virtual HRESULT STDMETHODCALLTYPE GetResults( IShellItemArray **ppenum) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedItems( IShellItemArray **ppsai) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileOpenDialog, 0xd57c7288, 0xd4ad, 0x4768, 0xbe,0x02, 0x9d,0x96,0x95,0x32,0xd9,0x60) #endif #else typedef struct IFileOpenDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileOpenDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileOpenDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IFileOpenDialog *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileOpenDialog *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileOpenDialog *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileOpenDialog *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileOpenDialog *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileOpenDialog *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileOpenDialog *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileOpenDialog *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileOpenDialog *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileOpenDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileOpenDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileOpenDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileOpenDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileOpenDialog *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileOpenDialog *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileOpenDialog *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileOpenDialog *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileOpenDialog *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileOpenDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileOpenDialog *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileOpenDialog *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileOpenDialog *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileOpenDialog *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileOpenDialog *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileOpenDialog *This, IShellItemFilter *pFilter); /*** IFileOpenDialog methods ***/ HRESULT (STDMETHODCALLTYPE *GetResults)( IFileOpenDialog *This, IShellItemArray **ppenum); HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( IFileOpenDialog *This, IShellItemArray **ppsai); END_INTERFACE } IFileOpenDialogVtbl; interface IFileOpenDialog { CONST_VTBL IFileOpenDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileOpenDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileOpenDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileOpenDialog_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileOpenDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileOpenDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileOpenDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileOpenDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileOpenDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileOpenDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileOpenDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileOpenDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileOpenDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileOpenDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileOpenDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileOpenDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileOpenDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileOpenDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileOpenDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileOpenDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileOpenDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileOpenDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileOpenDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileOpenDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileOpenDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileOpenDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileOpenDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileOpenDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) /*** IFileOpenDialog methods ***/ #define IFileOpenDialog_GetResults(This,ppenum) (This)->lpVtbl->GetResults(This,ppenum) #define IFileOpenDialog_GetSelectedItems(This,ppsai) (This)->lpVtbl->GetSelectedItems(This,ppsai) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileOpenDialog_QueryInterface(IFileOpenDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileOpenDialog_AddRef(IFileOpenDialog* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileOpenDialog_Release(IFileOpenDialog* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static FORCEINLINE HRESULT IFileOpenDialog_Show(IFileOpenDialog* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static FORCEINLINE HRESULT IFileOpenDialog_SetFileTypes(IFileOpenDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static FORCEINLINE HRESULT IFileOpenDialog_SetFileTypeIndex(IFileOpenDialog* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static FORCEINLINE HRESULT IFileOpenDialog_GetFileTypeIndex(IFileOpenDialog* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static FORCEINLINE HRESULT IFileOpenDialog_Advise(IFileOpenDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static FORCEINLINE HRESULT IFileOpenDialog_Unadvise(IFileOpenDialog* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IFileOpenDialog_SetOptions(IFileOpenDialog* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static FORCEINLINE HRESULT IFileOpenDialog_GetOptions(IFileOpenDialog* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static FORCEINLINE HRESULT IFileOpenDialog_SetDefaultFolder(IFileOpenDialog* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static FORCEINLINE HRESULT IFileOpenDialog_SetFolder(IFileOpenDialog* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static FORCEINLINE HRESULT IFileOpenDialog_GetFolder(IFileOpenDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static FORCEINLINE HRESULT IFileOpenDialog_GetCurrentSelection(IFileOpenDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static FORCEINLINE HRESULT IFileOpenDialog_SetFileName(IFileOpenDialog* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static FORCEINLINE HRESULT IFileOpenDialog_GetFileName(IFileOpenDialog* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static FORCEINLINE HRESULT IFileOpenDialog_SetTitle(IFileOpenDialog* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static FORCEINLINE HRESULT IFileOpenDialog_SetOkButtonLabel(IFileOpenDialog* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static FORCEINLINE HRESULT IFileOpenDialog_SetFileNameLabel(IFileOpenDialog* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static FORCEINLINE HRESULT IFileOpenDialog_GetResult(IFileOpenDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static FORCEINLINE HRESULT IFileOpenDialog_AddPlace(IFileOpenDialog* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static FORCEINLINE HRESULT IFileOpenDialog_SetDefaultExtension(IFileOpenDialog* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static FORCEINLINE HRESULT IFileOpenDialog_Close(IFileOpenDialog* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static FORCEINLINE HRESULT IFileOpenDialog_SetClientGuid(IFileOpenDialog* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static FORCEINLINE HRESULT IFileOpenDialog_ClearClientData(IFileOpenDialog* This) { return This->lpVtbl->ClearClientData(This); } static FORCEINLINE HRESULT IFileOpenDialog_SetFilter(IFileOpenDialog* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } /*** IFileOpenDialog methods ***/ static FORCEINLINE HRESULT IFileOpenDialog_GetResults(IFileOpenDialog* This,IShellItemArray **ppenum) { return This->lpVtbl->GetResults(This,ppenum); } static FORCEINLINE HRESULT IFileOpenDialog_GetSelectedItems(IFileOpenDialog* This,IShellItemArray **ppsai) { return This->lpVtbl->GetSelectedItems(This,ppsai); } #endif #endif #endif #endif /* __IFileOpenDialog_INTERFACE_DEFINED__ */ typedef enum CDCONTROLSTATEF { CDCS_INACTIVE = 0x0, CDCS_ENABLED = 0x1, CDCS_VISIBLE = 0x2, CDCS_ENABLEDVISIBLE = 0x3 } CDCONTROLSTATEF; DEFINE_ENUM_FLAG_OPERATORS(CDCONTROLSTATEF) /***************************************************************************** * IFileDialogCustomize interface */ #ifndef __IFileDialogCustomize_INTERFACE_DEFINED__ #define __IFileDialogCustomize_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialogCustomize, 0xe6fdd21a, 0x163f, 0x4975, 0x9c,0x8c, 0xa6,0x9f,0x1b,0xa3,0x70,0x34); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e6fdd21a-163f-4975-9c8c-a69f1ba37034") IFileDialogCustomize : public IUnknown { virtual HRESULT STDMETHODCALLTYPE EnableOpenDropDown( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddMenu( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE AddPushButton( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE AddComboBox( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddRadioButtonList( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddCheckButton( DWORD dwIDCtl, LPCWSTR pszLabel, WINBOOL bChecked) = 0; virtual HRESULT STDMETHODCALLTYPE AddEditBox( DWORD dwIDCtl, LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE AddSeparator( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddText( DWORD dwIDCtl, LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlLabel( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlState( DWORD dwIDCtl, CDCONTROLSTATEF *pdwState) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlState( DWORD dwIDCtl, CDCONTROLSTATEF dwState) = 0; virtual HRESULT STDMETHODCALLTYPE GetEditBoxText( DWORD dwIDCtl, WCHAR **ppszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetEditBoxText( DWORD dwIDCtl, LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE GetCheckButtonState( DWORD dwIDCtl, WINBOOL *pbChecked) = 0; virtual HRESULT STDMETHODCALLTYPE SetCheckButtonState( DWORD dwIDCtl, WINBOOL bChecked) = 0; virtual HRESULT STDMETHODCALLTYPE AddControlItem( DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveControlItem( DWORD dwIDCtl, DWORD dwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAllControlItems( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlItemState( DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF *pdwState) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlItemState( DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF dwState) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedControlItem( DWORD dwIDCtl, DWORD *pdwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE SetSelectedControlItem( DWORD dwIDCtl, DWORD dwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE StartVisualGroup( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE EndVisualGroup( ) = 0; virtual HRESULT STDMETHODCALLTYPE MakeProminent( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlItemText( DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialogCustomize, 0xe6fdd21a, 0x163f, 0x4975, 0x9c,0x8c, 0xa6,0x9f,0x1b,0xa3,0x70,0x34) #endif #else typedef struct IFileDialogCustomizeVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialogCustomize *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialogCustomize *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialogCustomize *This); /*** IFileDialogCustomize methods ***/ HRESULT (STDMETHODCALLTYPE *EnableOpenDropDown)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddMenu)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *AddPushButton)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *AddComboBox)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddRadioButtonList)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddCheckButton)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel, WINBOOL bChecked); HRESULT (STDMETHODCALLTYPE *AddEditBox)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *AddSeparator)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddText)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetControlLabel)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetControlState)( IFileDialogCustomize *This, DWORD dwIDCtl, CDCONTROLSTATEF *pdwState); HRESULT (STDMETHODCALLTYPE *SetControlState)( IFileDialogCustomize *This, DWORD dwIDCtl, CDCONTROLSTATEF dwState); HRESULT (STDMETHODCALLTYPE *GetEditBoxText)( IFileDialogCustomize *This, DWORD dwIDCtl, WCHAR **ppszText); HRESULT (STDMETHODCALLTYPE *SetEditBoxText)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *GetCheckButtonState)( IFileDialogCustomize *This, DWORD dwIDCtl, WINBOOL *pbChecked); HRESULT (STDMETHODCALLTYPE *SetCheckButtonState)( IFileDialogCustomize *This, DWORD dwIDCtl, WINBOOL bChecked); HRESULT (STDMETHODCALLTYPE *AddControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *RemoveControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem); HRESULT (STDMETHODCALLTYPE *RemoveAllControlItems)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *GetControlItemState)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF *pdwState); HRESULT (STDMETHODCALLTYPE *SetControlItemState)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF dwState); HRESULT (STDMETHODCALLTYPE *GetSelectedControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD *pdwIDItem); HRESULT (STDMETHODCALLTYPE *SetSelectedControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem); HRESULT (STDMETHODCALLTYPE *StartVisualGroup)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *EndVisualGroup)( IFileDialogCustomize *This); HRESULT (STDMETHODCALLTYPE *MakeProminent)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *SetControlItemText)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel); END_INTERFACE } IFileDialogCustomizeVtbl; interface IFileDialogCustomize { CONST_VTBL IFileDialogCustomizeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialogCustomize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialogCustomize_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialogCustomize_Release(This) (This)->lpVtbl->Release(This) /*** IFileDialogCustomize methods ***/ #define IFileDialogCustomize_EnableOpenDropDown(This,dwIDCtl) (This)->lpVtbl->EnableOpenDropDown(This,dwIDCtl) #define IFileDialogCustomize_AddMenu(This,dwIDCtl,pszLabel) (This)->lpVtbl->AddMenu(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_AddPushButton(This,dwIDCtl,pszLabel) (This)->lpVtbl->AddPushButton(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_AddComboBox(This,dwIDCtl) (This)->lpVtbl->AddComboBox(This,dwIDCtl) #define IFileDialogCustomize_AddRadioButtonList(This,dwIDCtl) (This)->lpVtbl->AddRadioButtonList(This,dwIDCtl) #define IFileDialogCustomize_AddCheckButton(This,dwIDCtl,pszLabel,bChecked) (This)->lpVtbl->AddCheckButton(This,dwIDCtl,pszLabel,bChecked) #define IFileDialogCustomize_AddEditBox(This,dwIDCtl,pszText) (This)->lpVtbl->AddEditBox(This,dwIDCtl,pszText) #define IFileDialogCustomize_AddSeparator(This,dwIDCtl) (This)->lpVtbl->AddSeparator(This,dwIDCtl) #define IFileDialogCustomize_AddText(This,dwIDCtl,pszText) (This)->lpVtbl->AddText(This,dwIDCtl,pszText) #define IFileDialogCustomize_SetControlLabel(This,dwIDCtl,pszLabel) (This)->lpVtbl->SetControlLabel(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_GetControlState(This,dwIDCtl,pdwState) (This)->lpVtbl->GetControlState(This,dwIDCtl,pdwState) #define IFileDialogCustomize_SetControlState(This,dwIDCtl,dwState) (This)->lpVtbl->SetControlState(This,dwIDCtl,dwState) #define IFileDialogCustomize_GetEditBoxText(This,dwIDCtl,ppszText) (This)->lpVtbl->GetEditBoxText(This,dwIDCtl,ppszText) #define IFileDialogCustomize_SetEditBoxText(This,dwIDCtl,pszText) (This)->lpVtbl->SetEditBoxText(This,dwIDCtl,pszText) #define IFileDialogCustomize_GetCheckButtonState(This,dwIDCtl,pbChecked) (This)->lpVtbl->GetCheckButtonState(This,dwIDCtl,pbChecked) #define IFileDialogCustomize_SetCheckButtonState(This,dwIDCtl,bChecked) (This)->lpVtbl->SetCheckButtonState(This,dwIDCtl,bChecked) #define IFileDialogCustomize_AddControlItem(This,dwIDCtl,dwIDItem,pszLabel) (This)->lpVtbl->AddControlItem(This,dwIDCtl,dwIDItem,pszLabel) #define IFileDialogCustomize_RemoveControlItem(This,dwIDCtl,dwIDItem) (This)->lpVtbl->RemoveControlItem(This,dwIDCtl,dwIDItem) #define IFileDialogCustomize_RemoveAllControlItems(This,dwIDCtl) (This)->lpVtbl->RemoveAllControlItems(This,dwIDCtl) #define IFileDialogCustomize_GetControlItemState(This,dwIDCtl,dwIDItem,pdwState) (This)->lpVtbl->GetControlItemState(This,dwIDCtl,dwIDItem,pdwState) #define IFileDialogCustomize_SetControlItemState(This,dwIDCtl,dwIDItem,dwState) (This)->lpVtbl->SetControlItemState(This,dwIDCtl,dwIDItem,dwState) #define IFileDialogCustomize_GetSelectedControlItem(This,dwIDCtl,pdwIDItem) (This)->lpVtbl->GetSelectedControlItem(This,dwIDCtl,pdwIDItem) #define IFileDialogCustomize_SetSelectedControlItem(This,dwIDCtl,dwIDItem) (This)->lpVtbl->SetSelectedControlItem(This,dwIDCtl,dwIDItem) #define IFileDialogCustomize_StartVisualGroup(This,dwIDCtl,pszLabel) (This)->lpVtbl->StartVisualGroup(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_EndVisualGroup(This) (This)->lpVtbl->EndVisualGroup(This) #define IFileDialogCustomize_MakeProminent(This,dwIDCtl) (This)->lpVtbl->MakeProminent(This,dwIDCtl) #define IFileDialogCustomize_SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel) (This)->lpVtbl->SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileDialogCustomize_QueryInterface(IFileDialogCustomize* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileDialogCustomize_AddRef(IFileDialogCustomize* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileDialogCustomize_Release(IFileDialogCustomize* This) { return This->lpVtbl->Release(This); } /*** IFileDialogCustomize methods ***/ static FORCEINLINE HRESULT IFileDialogCustomize_EnableOpenDropDown(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->EnableOpenDropDown(This,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogCustomize_AddMenu(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->AddMenu(This,dwIDCtl,pszLabel); } static FORCEINLINE HRESULT IFileDialogCustomize_AddPushButton(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->AddPushButton(This,dwIDCtl,pszLabel); } static FORCEINLINE HRESULT IFileDialogCustomize_AddComboBox(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->AddComboBox(This,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogCustomize_AddRadioButtonList(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->AddRadioButtonList(This,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogCustomize_AddCheckButton(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel,WINBOOL bChecked) { return This->lpVtbl->AddCheckButton(This,dwIDCtl,pszLabel,bChecked); } static FORCEINLINE HRESULT IFileDialogCustomize_AddEditBox(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { return This->lpVtbl->AddEditBox(This,dwIDCtl,pszText); } static FORCEINLINE HRESULT IFileDialogCustomize_AddSeparator(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->AddSeparator(This,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogCustomize_AddText(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { return This->lpVtbl->AddText(This,dwIDCtl,pszText); } static FORCEINLINE HRESULT IFileDialogCustomize_SetControlLabel(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->SetControlLabel(This,dwIDCtl,pszLabel); } static FORCEINLINE HRESULT IFileDialogCustomize_GetControlState(IFileDialogCustomize* This,DWORD dwIDCtl,CDCONTROLSTATEF *pdwState) { return This->lpVtbl->GetControlState(This,dwIDCtl,pdwState); } static FORCEINLINE HRESULT IFileDialogCustomize_SetControlState(IFileDialogCustomize* This,DWORD dwIDCtl,CDCONTROLSTATEF dwState) { return This->lpVtbl->SetControlState(This,dwIDCtl,dwState); } static FORCEINLINE HRESULT IFileDialogCustomize_GetEditBoxText(IFileDialogCustomize* This,DWORD dwIDCtl,WCHAR **ppszText) { return This->lpVtbl->GetEditBoxText(This,dwIDCtl,ppszText); } static FORCEINLINE HRESULT IFileDialogCustomize_SetEditBoxText(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { return This->lpVtbl->SetEditBoxText(This,dwIDCtl,pszText); } static FORCEINLINE HRESULT IFileDialogCustomize_GetCheckButtonState(IFileDialogCustomize* This,DWORD dwIDCtl,WINBOOL *pbChecked) { return This->lpVtbl->GetCheckButtonState(This,dwIDCtl,pbChecked); } static FORCEINLINE HRESULT IFileDialogCustomize_SetCheckButtonState(IFileDialogCustomize* This,DWORD dwIDCtl,WINBOOL bChecked) { return This->lpVtbl->SetCheckButtonState(This,dwIDCtl,bChecked); } static FORCEINLINE HRESULT IFileDialogCustomize_AddControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,LPCWSTR pszLabel) { return This->lpVtbl->AddControlItem(This,dwIDCtl,dwIDItem,pszLabel); } static FORCEINLINE HRESULT IFileDialogCustomize_RemoveControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem) { return This->lpVtbl->RemoveControlItem(This,dwIDCtl,dwIDItem); } static FORCEINLINE HRESULT IFileDialogCustomize_RemoveAllControlItems(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->RemoveAllControlItems(This,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogCustomize_GetControlItemState(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,CDCONTROLSTATEF *pdwState) { return This->lpVtbl->GetControlItemState(This,dwIDCtl,dwIDItem,pdwState); } static FORCEINLINE HRESULT IFileDialogCustomize_SetControlItemState(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,CDCONTROLSTATEF dwState) { return This->lpVtbl->SetControlItemState(This,dwIDCtl,dwIDItem,dwState); } static FORCEINLINE HRESULT IFileDialogCustomize_GetSelectedControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD *pdwIDItem) { return This->lpVtbl->GetSelectedControlItem(This,dwIDCtl,pdwIDItem); } static FORCEINLINE HRESULT IFileDialogCustomize_SetSelectedControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem) { return This->lpVtbl->SetSelectedControlItem(This,dwIDCtl,dwIDItem); } static FORCEINLINE HRESULT IFileDialogCustomize_StartVisualGroup(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->StartVisualGroup(This,dwIDCtl,pszLabel); } static FORCEINLINE HRESULT IFileDialogCustomize_EndVisualGroup(IFileDialogCustomize* This) { return This->lpVtbl->EndVisualGroup(This); } static FORCEINLINE HRESULT IFileDialogCustomize_MakeProminent(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->MakeProminent(This,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogCustomize_SetControlItemText(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,LPCWSTR pszLabel) { return This->lpVtbl->SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel); } #endif #endif #endif #endif /* __IFileDialogCustomize_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileDialogControlEvents interface */ #ifndef __IFileDialogControlEvents_INTERFACE_DEFINED__ #define __IFileDialogControlEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialogControlEvents, 0x36116642, 0xd713, 0x4b97, 0x9b,0x83, 0x74,0x84,0xa9,0xd0,0x04,0x33); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("36116642-d713-4b97-9b83-7484a9d00433") IFileDialogControlEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnItemSelected( IFileDialogCustomize *pfdc, DWORD dwIDCtl, DWORD dwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE OnButtonClicked( IFileDialogCustomize *pfdc, DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE OnCheckButtonToggled( IFileDialogCustomize *pfdc, DWORD dwIDCtl, WINBOOL bChecked) = 0; virtual HRESULT STDMETHODCALLTYPE OnControlActivating( IFileDialogCustomize *pfdc, DWORD dwIDCtl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialogControlEvents, 0x36116642, 0xd713, 0x4b97, 0x9b,0x83, 0x74,0x84,0xa9,0xd0,0x04,0x33) #endif #else typedef struct IFileDialogControlEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialogControlEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialogControlEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialogControlEvents *This); /*** IFileDialogControlEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnItemSelected)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl, DWORD dwIDItem); HRESULT (STDMETHODCALLTYPE *OnButtonClicked)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *OnCheckButtonToggled)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl, WINBOOL bChecked); HRESULT (STDMETHODCALLTYPE *OnControlActivating)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl); END_INTERFACE } IFileDialogControlEventsVtbl; interface IFileDialogControlEvents { CONST_VTBL IFileDialogControlEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialogControlEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialogControlEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialogControlEvents_Release(This) (This)->lpVtbl->Release(This) /*** IFileDialogControlEvents methods ***/ #define IFileDialogControlEvents_OnItemSelected(This,pfdc,dwIDCtl,dwIDItem) (This)->lpVtbl->OnItemSelected(This,pfdc,dwIDCtl,dwIDItem) #define IFileDialogControlEvents_OnButtonClicked(This,pfdc,dwIDCtl) (This)->lpVtbl->OnButtonClicked(This,pfdc,dwIDCtl) #define IFileDialogControlEvents_OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked) (This)->lpVtbl->OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked) #define IFileDialogControlEvents_OnControlActivating(This,pfdc,dwIDCtl) (This)->lpVtbl->OnControlActivating(This,pfdc,dwIDCtl) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileDialogControlEvents_QueryInterface(IFileDialogControlEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileDialogControlEvents_AddRef(IFileDialogControlEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileDialogControlEvents_Release(IFileDialogControlEvents* This) { return This->lpVtbl->Release(This); } /*** IFileDialogControlEvents methods ***/ static FORCEINLINE HRESULT IFileDialogControlEvents_OnItemSelected(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl,DWORD dwIDItem) { return This->lpVtbl->OnItemSelected(This,pfdc,dwIDCtl,dwIDItem); } static FORCEINLINE HRESULT IFileDialogControlEvents_OnButtonClicked(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl) { return This->lpVtbl->OnButtonClicked(This,pfdc,dwIDCtl); } static FORCEINLINE HRESULT IFileDialogControlEvents_OnCheckButtonToggled(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl,WINBOOL bChecked) { return This->lpVtbl->OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked); } static FORCEINLINE HRESULT IFileDialogControlEvents_OnControlActivating(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl) { return This->lpVtbl->OnControlActivating(This,pfdc,dwIDCtl); } #endif #endif #endif #endif /* __IFileDialogControlEvents_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileDialog2 interface */ #ifndef __IFileDialog2_INTERFACE_DEFINED__ #define __IFileDialog2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialog2, 0x61744fc7, 0x85b5, 0x4791, 0xa9,0xb0, 0x27,0x22,0x76,0x30,0x9b,0x13); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("61744fc7-85b5-4791-a9b0-272276309b13") IFileDialog2 : public IFileDialog { virtual HRESULT STDMETHODCALLTYPE SetCancelButtonLabel( LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE SetNavigationRoot( IShellItem *psi) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialog2, 0x61744fc7, 0x85b5, 0x4791, 0xa9,0xb0, 0x27,0x22,0x76,0x30,0x9b,0x13) #endif #else typedef struct IFileDialog2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialog2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialog2 *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialog2 *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileDialog2 *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileDialog2 *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileDialog2 *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileDialog2 *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileDialog2 *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileDialog2 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileDialog2 *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileDialog2 *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileDialog2 *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileDialog2 *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileDialog2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileDialog2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileDialog2 *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileDialog2 *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileDialog2 *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileDialog2 *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileDialog2 *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileDialog2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileDialog2 *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileDialog2 *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileDialog2 *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileDialog2 *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileDialog2 *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileDialog2 *This, IShellItemFilter *pFilter); /*** IFileDialog2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetCancelButtonLabel)( IFileDialog2 *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *SetNavigationRoot)( IFileDialog2 *This, IShellItem *psi); END_INTERFACE } IFileDialog2Vtbl; interface IFileDialog2 { CONST_VTBL IFileDialog2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialog2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialog2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialog2_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileDialog2_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileDialog2_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileDialog2_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileDialog2_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileDialog2_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileDialog2_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileDialog2_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileDialog2_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileDialog2_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileDialog2_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileDialog2_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileDialog2_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileDialog2_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileDialog2_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileDialog2_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileDialog2_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileDialog2_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileDialog2_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileDialog2_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileDialog2_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileDialog2_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileDialog2_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileDialog2_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileDialog2_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) /*** IFileDialog2 methods ***/ #define IFileDialog2_SetCancelButtonLabel(This,pszLabel) (This)->lpVtbl->SetCancelButtonLabel(This,pszLabel) #define IFileDialog2_SetNavigationRoot(This,psi) (This)->lpVtbl->SetNavigationRoot(This,psi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileDialog2_QueryInterface(IFileDialog2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileDialog2_AddRef(IFileDialog2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileDialog2_Release(IFileDialog2* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static FORCEINLINE HRESULT IFileDialog2_Show(IFileDialog2* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static FORCEINLINE HRESULT IFileDialog2_SetFileTypes(IFileDialog2* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static FORCEINLINE HRESULT IFileDialog2_SetFileTypeIndex(IFileDialog2* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static FORCEINLINE HRESULT IFileDialog2_GetFileTypeIndex(IFileDialog2* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static FORCEINLINE HRESULT IFileDialog2_Advise(IFileDialog2* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static FORCEINLINE HRESULT IFileDialog2_Unadvise(IFileDialog2* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IFileDialog2_SetOptions(IFileDialog2* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static FORCEINLINE HRESULT IFileDialog2_GetOptions(IFileDialog2* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static FORCEINLINE HRESULT IFileDialog2_SetDefaultFolder(IFileDialog2* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static FORCEINLINE HRESULT IFileDialog2_SetFolder(IFileDialog2* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static FORCEINLINE HRESULT IFileDialog2_GetFolder(IFileDialog2* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static FORCEINLINE HRESULT IFileDialog2_GetCurrentSelection(IFileDialog2* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static FORCEINLINE HRESULT IFileDialog2_SetFileName(IFileDialog2* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static FORCEINLINE HRESULT IFileDialog2_GetFileName(IFileDialog2* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static FORCEINLINE HRESULT IFileDialog2_SetTitle(IFileDialog2* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static FORCEINLINE HRESULT IFileDialog2_SetOkButtonLabel(IFileDialog2* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static FORCEINLINE HRESULT IFileDialog2_SetFileNameLabel(IFileDialog2* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static FORCEINLINE HRESULT IFileDialog2_GetResult(IFileDialog2* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static FORCEINLINE HRESULT IFileDialog2_AddPlace(IFileDialog2* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static FORCEINLINE HRESULT IFileDialog2_SetDefaultExtension(IFileDialog2* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static FORCEINLINE HRESULT IFileDialog2_Close(IFileDialog2* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static FORCEINLINE HRESULT IFileDialog2_SetClientGuid(IFileDialog2* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static FORCEINLINE HRESULT IFileDialog2_ClearClientData(IFileDialog2* This) { return This->lpVtbl->ClearClientData(This); } static FORCEINLINE HRESULT IFileDialog2_SetFilter(IFileDialog2* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } /*** IFileDialog2 methods ***/ static FORCEINLINE HRESULT IFileDialog2_SetCancelButtonLabel(IFileDialog2* This,LPCWSTR pszLabel) { return This->lpVtbl->SetCancelButtonLabel(This,pszLabel); } static FORCEINLINE HRESULT IFileDialog2_SetNavigationRoot(IFileDialog2* This,IShellItem *psi) { return This->lpVtbl->SetNavigationRoot(This,psi); } #endif #endif #endif #endif /* __IFileDialog2_INTERFACE_DEFINED__ */ typedef enum ASSOCIATIONLEVEL { AL_MACHINE = 0, AL_EFFECTIVE = 1, AL_USER = 2 } ASSOCIATIONLEVEL; typedef enum ASSOCIATIONTYPE { AT_FILEEXTENSION = 0, AT_URLPROTOCOL = 1, AT_STARTMENUCLIENT = 2, AT_MIMETYPE = 3 } ASSOCIATIONTYPE; /***************************************************************************** * IApplicationAssociationRegistration interface */ #ifndef __IApplicationAssociationRegistration_INTERFACE_DEFINED__ #define __IApplicationAssociationRegistration_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationAssociationRegistration, 0x4e530b0a, 0xe611, 0x4c77, 0xa3,0xac, 0x90,0x31,0xd0,0x22,0x28,0x1b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4e530b0a-e611-4c77-a3ac-9031d022281b") IApplicationAssociationRegistration : public IUnknown { virtual HRESULT STDMETHODCALLTYPE QueryCurrentDefault( LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPWSTR *ppszAssociation) = 0; virtual HRESULT STDMETHODCALLTYPE QueryAppIsDefault( LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, WINBOOL *pfDefault) = 0; virtual HRESULT STDMETHODCALLTYPE QueryAppIsDefaultAll( ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, WINBOOL *pfDefault) = 0; virtual HRESULT STDMETHODCALLTYPE SetAppAsDefault( LPCWSTR pszAppRegistryName, LPCWSTR pszSet, ASSOCIATIONTYPE atSetType) = 0; virtual HRESULT STDMETHODCALLTYPE SetAppAsDefaultAll( LPCWSTR pszAppRegistryName) = 0; virtual HRESULT STDMETHODCALLTYPE ClearUserAssociations( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationAssociationRegistration, 0x4e530b0a, 0xe611, 0x4c77, 0xa3,0xac, 0x90,0x31,0xd0,0x22,0x28,0x1b) #endif #else typedef struct IApplicationAssociationRegistrationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationAssociationRegistration *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationAssociationRegistration *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationAssociationRegistration *This); /*** IApplicationAssociationRegistration methods ***/ HRESULT (STDMETHODCALLTYPE *QueryCurrentDefault)( IApplicationAssociationRegistration *This, LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPWSTR *ppszAssociation); HRESULT (STDMETHODCALLTYPE *QueryAppIsDefault)( IApplicationAssociationRegistration *This, LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, WINBOOL *pfDefault); HRESULT (STDMETHODCALLTYPE *QueryAppIsDefaultAll)( IApplicationAssociationRegistration *This, ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, WINBOOL *pfDefault); HRESULT (STDMETHODCALLTYPE *SetAppAsDefault)( IApplicationAssociationRegistration *This, LPCWSTR pszAppRegistryName, LPCWSTR pszSet, ASSOCIATIONTYPE atSetType); HRESULT (STDMETHODCALLTYPE *SetAppAsDefaultAll)( IApplicationAssociationRegistration *This, LPCWSTR pszAppRegistryName); HRESULT (STDMETHODCALLTYPE *ClearUserAssociations)( IApplicationAssociationRegistration *This); END_INTERFACE } IApplicationAssociationRegistrationVtbl; interface IApplicationAssociationRegistration { CONST_VTBL IApplicationAssociationRegistrationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationAssociationRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationAssociationRegistration_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationAssociationRegistration_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationAssociationRegistration methods ***/ #define IApplicationAssociationRegistration_QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation) (This)->lpVtbl->QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation) #define IApplicationAssociationRegistration_QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault) (This)->lpVtbl->QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault) #define IApplicationAssociationRegistration_QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault) (This)->lpVtbl->QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault) #define IApplicationAssociationRegistration_SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType) (This)->lpVtbl->SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType) #define IApplicationAssociationRegistration_SetAppAsDefaultAll(This,pszAppRegistryName) (This)->lpVtbl->SetAppAsDefaultAll(This,pszAppRegistryName) #define IApplicationAssociationRegistration_ClearUserAssociations(This) (This)->lpVtbl->ClearUserAssociations(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryInterface(IApplicationAssociationRegistration* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IApplicationAssociationRegistration_AddRef(IApplicationAssociationRegistration* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IApplicationAssociationRegistration_Release(IApplicationAssociationRegistration* This) { return This->lpVtbl->Release(This); } /*** IApplicationAssociationRegistration methods ***/ static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryCurrentDefault(IApplicationAssociationRegistration* This,LPCWSTR pszQuery,ASSOCIATIONTYPE atQueryType,ASSOCIATIONLEVEL alQueryLevel,LPWSTR *ppszAssociation) { return This->lpVtbl->QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation); } static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryAppIsDefault(IApplicationAssociationRegistration* This,LPCWSTR pszQuery,ASSOCIATIONTYPE atQueryType,ASSOCIATIONLEVEL alQueryLevel,LPCWSTR pszAppRegistryName,WINBOOL *pfDefault) { return This->lpVtbl->QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault); } static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryAppIsDefaultAll(IApplicationAssociationRegistration* This,ASSOCIATIONLEVEL alQueryLevel,LPCWSTR pszAppRegistryName,WINBOOL *pfDefault) { return This->lpVtbl->QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault); } static FORCEINLINE HRESULT IApplicationAssociationRegistration_SetAppAsDefault(IApplicationAssociationRegistration* This,LPCWSTR pszAppRegistryName,LPCWSTR pszSet,ASSOCIATIONTYPE atSetType) { return This->lpVtbl->SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType); } static FORCEINLINE HRESULT IApplicationAssociationRegistration_SetAppAsDefaultAll(IApplicationAssociationRegistration* This,LPCWSTR pszAppRegistryName) { return This->lpVtbl->SetAppAsDefaultAll(This,pszAppRegistryName); } static FORCEINLINE HRESULT IApplicationAssociationRegistration_ClearUserAssociations(IApplicationAssociationRegistration* This) { return This->lpVtbl->ClearUserAssociations(This); } #endif #endif #endif #endif /* __IApplicationAssociationRegistration_INTERFACE_DEFINED__ */ SHSTDAPI SHCreateAssociationRegistration(REFIID riid, void **ppv); /***************************************************************************** * IApplicationAssociationRegistrationUI interface */ #ifndef __IApplicationAssociationRegistrationUI_INTERFACE_DEFINED__ #define __IApplicationAssociationRegistrationUI_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationAssociationRegistrationUI, 0x1f76a169, 0xf994, 0x40ac, 0x8f,0xc8, 0x09,0x59,0xe8,0x87,0x47,0x10); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1f76a169-f994-40ac-8fc8-0959e8874710") IApplicationAssociationRegistrationUI : public IUnknown { virtual HRESULT STDMETHODCALLTYPE LaunchAdvancedAssociationUI( LPCWSTR pszAppRegistryName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationAssociationRegistrationUI, 0x1f76a169, 0xf994, 0x40ac, 0x8f,0xc8, 0x09,0x59,0xe8,0x87,0x47,0x10) #endif #else typedef struct IApplicationAssociationRegistrationUIVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationAssociationRegistrationUI *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationAssociationRegistrationUI *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationAssociationRegistrationUI *This); /*** IApplicationAssociationRegistrationUI methods ***/ HRESULT (STDMETHODCALLTYPE *LaunchAdvancedAssociationUI)( IApplicationAssociationRegistrationUI *This, LPCWSTR pszAppRegistryName); END_INTERFACE } IApplicationAssociationRegistrationUIVtbl; interface IApplicationAssociationRegistrationUI { CONST_VTBL IApplicationAssociationRegistrationUIVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationAssociationRegistrationUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationAssociationRegistrationUI_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationAssociationRegistrationUI_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationAssociationRegistrationUI methods ***/ #define IApplicationAssociationRegistrationUI_LaunchAdvancedAssociationUI(This,pszAppRegistryName) (This)->lpVtbl->LaunchAdvancedAssociationUI(This,pszAppRegistryName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IApplicationAssociationRegistrationUI_QueryInterface(IApplicationAssociationRegistrationUI* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IApplicationAssociationRegistrationUI_AddRef(IApplicationAssociationRegistrationUI* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IApplicationAssociationRegistrationUI_Release(IApplicationAssociationRegistrationUI* This) { return This->lpVtbl->Release(This); } /*** IApplicationAssociationRegistrationUI methods ***/ static FORCEINLINE HRESULT IApplicationAssociationRegistrationUI_LaunchAdvancedAssociationUI(IApplicationAssociationRegistrationUI* This,LPCWSTR pszAppRegistryName) { return This->lpVtbl->LaunchAdvancedAssociationUI(This,pszAppRegistryName); } #endif #endif #endif #endif /* __IApplicationAssociationRegistrationUI_INTERFACE_DEFINED__ */ #endif #include typedef struct DELEGATEITEMID { WORD cbSize; WORD wOuter; WORD cbInner; BYTE rgb[1]; } DELEGATEITEMID; #include typedef const UNALIGNED DELEGATEITEMID *PCDELEGATEITEMID; typedef UNALIGNED DELEGATEITEMID *PDELEGATEITEMID; /***************************************************************************** * IDelegateFolder interface */ #ifndef __IDelegateFolder_INTERFACE_DEFINED__ #define __IDelegateFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDelegateFolder, 0xadd8ba80, 0x002b, 0x11d0, 0x8f,0x0f, 0x00,0xc0,0x4f,0xd7,0xd0,0x62); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("add8ba80-002b-11d0-8f0f-00c04fd7d062") IDelegateFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetItemAlloc( IMalloc *pmalloc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDelegateFolder, 0xadd8ba80, 0x002b, 0x11d0, 0x8f,0x0f, 0x00,0xc0,0x4f,0xd7,0xd0,0x62) #endif #else typedef struct IDelegateFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDelegateFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDelegateFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IDelegateFolder *This); /*** IDelegateFolder methods ***/ HRESULT (STDMETHODCALLTYPE *SetItemAlloc)( IDelegateFolder *This, IMalloc *pmalloc); END_INTERFACE } IDelegateFolderVtbl; interface IDelegateFolder { CONST_VTBL IDelegateFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDelegateFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDelegateFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDelegateFolder_Release(This) (This)->lpVtbl->Release(This) /*** IDelegateFolder methods ***/ #define IDelegateFolder_SetItemAlloc(This,pmalloc) (This)->lpVtbl->SetItemAlloc(This,pmalloc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDelegateFolder_QueryInterface(IDelegateFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDelegateFolder_AddRef(IDelegateFolder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDelegateFolder_Release(IDelegateFolder* This) { return This->lpVtbl->Release(This); } /*** IDelegateFolder methods ***/ static FORCEINLINE HRESULT IDelegateFolder_SetItemAlloc(IDelegateFolder* This,IMalloc *pmalloc) { return This->lpVtbl->SetItemAlloc(This,pmalloc); } #endif #endif #endif #endif /* __IDelegateFolder_INTERFACE_DEFINED__ */ #if _WIN32_IE >= _WIN32_IE_IE60 /***************************************************************************** * IBrowserFrameOptions interface */ #ifndef __IBrowserFrameOptions_INTERFACE_DEFINED__ #define __IBrowserFrameOptions_INTERFACE_DEFINED__ typedef IBrowserFrameOptions *LPBROWSERFRAMEOPTIONS; enum _BROWSERFRAMEOPTIONS { BFO_NONE = 0x0, BFO_BROWSER_PERSIST_SETTINGS = 0x1, BFO_RENAME_FOLDER_OPTIONS_TOINTERNET = 0x2, BFO_BOTH_OPTIONS = 0x4, BIF_PREFER_INTERNET_SHORTCUT = 0x8, BFO_BROWSE_NO_IN_NEW_PROCESS = 0x10, BFO_ENABLE_HYPERLINK_TRACKING = 0x20, BFO_USE_IE_OFFLINE_SUPPORT = 0x40, BFO_SUBSTITUE_INTERNET_START_PAGE = 0x80, BFO_USE_IE_LOGOBANDING = 0x100, BFO_ADD_IE_TOCAPTIONBAR = 0x200, BFO_USE_DIALUP_REF = 0x400, BFO_USE_IE_TOOLBAR = 0x800, BFO_NO_PARENT_FOLDER_SUPPORT = 0x1000, BFO_NO_REOPEN_NEXT_RESTART = 0x2000, BFO_GO_HOME_PAGE = 0x4000, BFO_PREFER_IEPROCESS = 0x8000, BFO_SHOW_NAVIGATION_CANCELLED = 0x10000, BFO_USE_IE_STATUSBAR = 0x20000, BFO_QUERY_ALL = (int)0xffffffff }; typedef DWORD BROWSERFRAMEOPTIONS; DEFINE_GUID(IID_IBrowserFrameOptions, 0x10df43c8, 0x1dbe, 0x11d3, 0x8b,0x34, 0x00,0x60,0x97,0xdf,0x5b,0xd4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("10df43c8-1dbe-11d3-8b34-006097df5bd4") IBrowserFrameOptions : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetFrameOptions( BROWSERFRAMEOPTIONS dwMask, BROWSERFRAMEOPTIONS *pdwOptions) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IBrowserFrameOptions, 0x10df43c8, 0x1dbe, 0x11d3, 0x8b,0x34, 0x00,0x60,0x97,0xdf,0x5b,0xd4) #endif #else typedef struct IBrowserFrameOptionsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IBrowserFrameOptions *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IBrowserFrameOptions *This); ULONG (STDMETHODCALLTYPE *Release)( IBrowserFrameOptions *This); /*** IBrowserFrameOptions methods ***/ HRESULT (STDMETHODCALLTYPE *GetFrameOptions)( IBrowserFrameOptions *This, BROWSERFRAMEOPTIONS dwMask, BROWSERFRAMEOPTIONS *pdwOptions); END_INTERFACE } IBrowserFrameOptionsVtbl; interface IBrowserFrameOptions { CONST_VTBL IBrowserFrameOptionsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IBrowserFrameOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IBrowserFrameOptions_AddRef(This) (This)->lpVtbl->AddRef(This) #define IBrowserFrameOptions_Release(This) (This)->lpVtbl->Release(This) /*** IBrowserFrameOptions methods ***/ #define IBrowserFrameOptions_GetFrameOptions(This,dwMask,pdwOptions) (This)->lpVtbl->GetFrameOptions(This,dwMask,pdwOptions) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IBrowserFrameOptions_QueryInterface(IBrowserFrameOptions* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IBrowserFrameOptions_AddRef(IBrowserFrameOptions* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IBrowserFrameOptions_Release(IBrowserFrameOptions* This) { return This->lpVtbl->Release(This); } /*** IBrowserFrameOptions methods ***/ static FORCEINLINE HRESULT IBrowserFrameOptions_GetFrameOptions(IBrowserFrameOptions* This,BROWSERFRAMEOPTIONS dwMask,BROWSERFRAMEOPTIONS *pdwOptions) { return This->lpVtbl->GetFrameOptions(This,dwMask,pdwOptions); } #endif #endif #endif #endif /* __IBrowserFrameOptions_INTERFACE_DEFINED__ */ #endif #if _WIN32_IE >= _WIN32_IE_IE60SP2 typedef enum NWMF { NWMF_UNLOADING = 0x1, NWMF_USERINITED = 0x2, NWMF_FIRST = 0x4, NWMF_OVERRIDEKEY = 0x8, NWMF_SHOWHELP = 0x10, NWMF_HTMLDIALOG = 0x20, NWMF_FROMDIALOGCHILD = 0x40, NWMF_USERREQUESTED = 0x80, NWMF_USERALLOWED = 0x100, NWMF_FORCEWINDOW = 0x10000, NWMF_FORCETAB = 0x20000, NWMF_SUGGESTWINDOW = 0x40000, NWMF_SUGGESTTAB = 0x80000, NWMF_INACTIVETAB = 0x100000 } NWMF; DEFINE_ENUM_FLAG_OPERATORS(NWMF) #define SID_SNewWindowManager IID_INewWindowManager /***************************************************************************** * INewWindowManager interface */ #ifndef __INewWindowManager_INTERFACE_DEFINED__ #define __INewWindowManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_INewWindowManager, 0xd2bc4c84, 0x3f72, 0x4a52, 0xa6,0x04, 0x7b,0xcb,0xf3,0x98,0x2c,0xbb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d2bc4c84-3f72-4a52-a604-7bcbf3982cbb") INewWindowManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE EvaluateNewWindow( LPCWSTR pszUrl, LPCWSTR pszName, LPCWSTR pszUrlContext, LPCWSTR pszFeatures, WINBOOL fReplace, DWORD dwFlags, DWORD dwUserActionTime) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INewWindowManager, 0xd2bc4c84, 0x3f72, 0x4a52, 0xa6,0x04, 0x7b,0xcb,0xf3,0x98,0x2c,0xbb) #endif #else typedef struct INewWindowManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INewWindowManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INewWindowManager *This); ULONG (STDMETHODCALLTYPE *Release)( INewWindowManager *This); /*** INewWindowManager methods ***/ HRESULT (STDMETHODCALLTYPE *EvaluateNewWindow)( INewWindowManager *This, LPCWSTR pszUrl, LPCWSTR pszName, LPCWSTR pszUrlContext, LPCWSTR pszFeatures, WINBOOL fReplace, DWORD dwFlags, DWORD dwUserActionTime); END_INTERFACE } INewWindowManagerVtbl; interface INewWindowManager { CONST_VTBL INewWindowManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INewWindowManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INewWindowManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define INewWindowManager_Release(This) (This)->lpVtbl->Release(This) /*** INewWindowManager methods ***/ #define INewWindowManager_EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime) (This)->lpVtbl->EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INewWindowManager_QueryInterface(INewWindowManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INewWindowManager_AddRef(INewWindowManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INewWindowManager_Release(INewWindowManager* This) { return This->lpVtbl->Release(This); } /*** INewWindowManager methods ***/ static FORCEINLINE HRESULT INewWindowManager_EvaluateNewWindow(INewWindowManager* This,LPCWSTR pszUrl,LPCWSTR pszName,LPCWSTR pszUrlContext,LPCWSTR pszFeatures,WINBOOL fReplace,DWORD dwFlags,DWORD dwUserActionTime) { return This->lpVtbl->EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime); } #endif #endif #endif #endif /* __INewWindowManager_INTERFACE_DEFINED__ */ /***************************************************************************** * IAttachmentExecute interface */ #ifndef __IAttachmentExecute_INTERFACE_DEFINED__ #define __IAttachmentExecute_INTERFACE_DEFINED__ typedef enum ATTACHMENT_PROMPT { ATTACHMENT_PROMPT_NONE = 0x0, ATTACHMENT_PROMPT_SAVE = 0x1, ATTACHMENT_PROMPT_EXEC = 0x2, ATTACHMENT_PROMPT_EXEC_OR_SAVE = 0x3 } ATTACHMENT_PROMPT; typedef enum ATTACHMENT_ACTION { ATTACHMENT_ACTION_CANCEL = 0x0, ATTACHMENT_ACTION_SAVE = 0x1, ATTACHMENT_ACTION_EXEC = 0x2 } ATTACHMENT_ACTION; DEFINE_GUID(IID_IAttachmentExecute, 0x73db1241, 0x1e85, 0x4581, 0x8e,0x4f, 0xa8,0x1e,0x1d,0x0f,0x8c,0x57); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("73db1241-1e85-4581-8e4f-a81e1d0f8c57") IAttachmentExecute : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetClientTitle( LPCWSTR pszTitle) = 0; virtual HRESULT STDMETHODCALLTYPE SetClientGuid( REFGUID guid) = 0; virtual HRESULT STDMETHODCALLTYPE SetLocalPath( LPCWSTR pszLocalPath) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileName( LPCWSTR pszFileName) = 0; virtual HRESULT STDMETHODCALLTYPE SetSource( LPCWSTR pszSource) = 0; virtual HRESULT STDMETHODCALLTYPE SetReferrer( LPCWSTR pszReferrer) = 0; virtual HRESULT STDMETHODCALLTYPE CheckPolicy( ) = 0; virtual HRESULT STDMETHODCALLTYPE Prompt( HWND hwnd, ATTACHMENT_PROMPT prompt, ATTACHMENT_ACTION *paction) = 0; virtual HRESULT STDMETHODCALLTYPE Save( ) = 0; virtual HRESULT STDMETHODCALLTYPE Execute( HWND hwnd, LPCWSTR pszVerb, HANDLE *phProcess) = 0; virtual HRESULT STDMETHODCALLTYPE SaveWithUI( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE ClearClientState( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAttachmentExecute, 0x73db1241, 0x1e85, 0x4581, 0x8e,0x4f, 0xa8,0x1e,0x1d,0x0f,0x8c,0x57) #endif #else typedef struct IAttachmentExecuteVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAttachmentExecute *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAttachmentExecute *This); ULONG (STDMETHODCALLTYPE *Release)( IAttachmentExecute *This); /*** IAttachmentExecute methods ***/ HRESULT (STDMETHODCALLTYPE *SetClientTitle)( IAttachmentExecute *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IAttachmentExecute *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *SetLocalPath)( IAttachmentExecute *This, LPCWSTR pszLocalPath); HRESULT (STDMETHODCALLTYPE *SetFileName)( IAttachmentExecute *This, LPCWSTR pszFileName); HRESULT (STDMETHODCALLTYPE *SetSource)( IAttachmentExecute *This, LPCWSTR pszSource); HRESULT (STDMETHODCALLTYPE *SetReferrer)( IAttachmentExecute *This, LPCWSTR pszReferrer); HRESULT (STDMETHODCALLTYPE *CheckPolicy)( IAttachmentExecute *This); HRESULT (STDMETHODCALLTYPE *Prompt)( IAttachmentExecute *This, HWND hwnd, ATTACHMENT_PROMPT prompt, ATTACHMENT_ACTION *paction); HRESULT (STDMETHODCALLTYPE *Save)( IAttachmentExecute *This); HRESULT (STDMETHODCALLTYPE *Execute)( IAttachmentExecute *This, HWND hwnd, LPCWSTR pszVerb, HANDLE *phProcess); HRESULT (STDMETHODCALLTYPE *SaveWithUI)( IAttachmentExecute *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ClearClientState)( IAttachmentExecute *This); END_INTERFACE } IAttachmentExecuteVtbl; interface IAttachmentExecute { CONST_VTBL IAttachmentExecuteVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAttachmentExecute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAttachmentExecute_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAttachmentExecute_Release(This) (This)->lpVtbl->Release(This) /*** IAttachmentExecute methods ***/ #define IAttachmentExecute_SetClientTitle(This,pszTitle) (This)->lpVtbl->SetClientTitle(This,pszTitle) #define IAttachmentExecute_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IAttachmentExecute_SetLocalPath(This,pszLocalPath) (This)->lpVtbl->SetLocalPath(This,pszLocalPath) #define IAttachmentExecute_SetFileName(This,pszFileName) (This)->lpVtbl->SetFileName(This,pszFileName) #define IAttachmentExecute_SetSource(This,pszSource) (This)->lpVtbl->SetSource(This,pszSource) #define IAttachmentExecute_SetReferrer(This,pszReferrer) (This)->lpVtbl->SetReferrer(This,pszReferrer) #define IAttachmentExecute_CheckPolicy(This) (This)->lpVtbl->CheckPolicy(This) #define IAttachmentExecute_Prompt(This,hwnd,prompt,paction) (This)->lpVtbl->Prompt(This,hwnd,prompt,paction) #define IAttachmentExecute_Save(This) (This)->lpVtbl->Save(This) #define IAttachmentExecute_Execute(This,hwnd,pszVerb,phProcess) (This)->lpVtbl->Execute(This,hwnd,pszVerb,phProcess) #define IAttachmentExecute_SaveWithUI(This,hwnd) (This)->lpVtbl->SaveWithUI(This,hwnd) #define IAttachmentExecute_ClearClientState(This) (This)->lpVtbl->ClearClientState(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAttachmentExecute_QueryInterface(IAttachmentExecute* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAttachmentExecute_AddRef(IAttachmentExecute* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAttachmentExecute_Release(IAttachmentExecute* This) { return This->lpVtbl->Release(This); } /*** IAttachmentExecute methods ***/ static FORCEINLINE HRESULT IAttachmentExecute_SetClientTitle(IAttachmentExecute* This,LPCWSTR pszTitle) { return This->lpVtbl->SetClientTitle(This,pszTitle); } static FORCEINLINE HRESULT IAttachmentExecute_SetClientGuid(IAttachmentExecute* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static FORCEINLINE HRESULT IAttachmentExecute_SetLocalPath(IAttachmentExecute* This,LPCWSTR pszLocalPath) { return This->lpVtbl->SetLocalPath(This,pszLocalPath); } static FORCEINLINE HRESULT IAttachmentExecute_SetFileName(IAttachmentExecute* This,LPCWSTR pszFileName) { return This->lpVtbl->SetFileName(This,pszFileName); } static FORCEINLINE HRESULT IAttachmentExecute_SetSource(IAttachmentExecute* This,LPCWSTR pszSource) { return This->lpVtbl->SetSource(This,pszSource); } static FORCEINLINE HRESULT IAttachmentExecute_SetReferrer(IAttachmentExecute* This,LPCWSTR pszReferrer) { return This->lpVtbl->SetReferrer(This,pszReferrer); } static FORCEINLINE HRESULT IAttachmentExecute_CheckPolicy(IAttachmentExecute* This) { return This->lpVtbl->CheckPolicy(This); } static FORCEINLINE HRESULT IAttachmentExecute_Prompt(IAttachmentExecute* This,HWND hwnd,ATTACHMENT_PROMPT prompt,ATTACHMENT_ACTION *paction) { return This->lpVtbl->Prompt(This,hwnd,prompt,paction); } static FORCEINLINE HRESULT IAttachmentExecute_Save(IAttachmentExecute* This) { return This->lpVtbl->Save(This); } static FORCEINLINE HRESULT IAttachmentExecute_Execute(IAttachmentExecute* This,HWND hwnd,LPCWSTR pszVerb,HANDLE *phProcess) { return This->lpVtbl->Execute(This,hwnd,pszVerb,phProcess); } static FORCEINLINE HRESULT IAttachmentExecute_SaveWithUI(IAttachmentExecute* This,HWND hwnd) { return This->lpVtbl->SaveWithUI(This,hwnd); } static FORCEINLINE HRESULT IAttachmentExecute_ClearClientState(IAttachmentExecute* This) { return This->lpVtbl->ClearClientState(This); } #endif #endif #endif #endif /* __IAttachmentExecute_INTERFACE_DEFINED__ */ #endif #if _WIN32_IE >= _WIN32_IE_IE60 #include typedef struct tagSMDATA { DWORD dwMask; DWORD dwFlags; HMENU hmenu; HWND hwnd; UINT uId; UINT uIdParent; UINT uIdAncestor; IUnknown *punk; PIDLIST_ABSOLUTE pidlFolder; PUITEMID_CHILD pidlItem; IShellFolder *psf; void *pvUserData; } SMDATA; typedef struct tagSMDATA *LPSMDATA; #define SMDM_SHELLFOLDER 0x00000001 #define SMDM_HMENU 0x00000002 #define SMDM_TOOLBAR 0x00000004 typedef struct tagSMINFO { DWORD dwMask; DWORD dwType; DWORD dwFlags; int iIcon; } SMINFO; typedef struct tagSMINFO *PSMINFO; typedef struct SHCSCHANGENOTIFYSTRUCT { LONG lEvent; PCIDLIST_ABSOLUTE pidl1; PCIDLIST_ABSOLUTE pidl2; } SMCSHCHANGENOTIFYSTRUCT; typedef struct SHCSCHANGENOTIFYSTRUCT *PSMCSHCHANGENOTIFYSTRUCT; #include enum tagSMINFOMASK { SMIM_TYPE = 0x1, SMIM_FLAGS = 0x2, SMIM_ICON = 0x4 }; enum tagSMINFOTYPE { SMIT_SEPARATOR = 0x1, SMIT_STRING = 0x2 }; enum tagSMINFOFLAGS { SMIF_ICON = 0x1, SMIF_ACCELERATOR = 0x2, SMIF_DROPTARGET = 0x4, SMIF_SUBMENU = 0x8, SMIF_CHECKED = 0x20, SMIF_DROPCASCADE = 0x40, SMIF_HIDDEN = 0x80, SMIF_DISABLED = 0x100, SMIF_TRACKPOPUP = 0x200, SMIF_DEMOTED = 0x400, SMIF_ALTSTATE = 0x800, SMIF_DRAGNDROP = 0x1000, SMIF_NEW = 0x2000 }; #define SMC_INITMENU 0x00000001 #define SMC_CREATE 0x00000002 #define SMC_EXITMENU 0x00000003 #define SMC_GETINFO 0x00000005 #define SMC_GETSFINFO 0x00000006 #define SMC_GETOBJECT 0x00000007 #define SMC_GETSFOBJECT 0x00000008 #define SMC_SFEXEC 0x00000009 #define SMC_SFSELECTITEM 0x0000000A #define SMC_REFRESH 0x00000010 #define SMC_DEMOTE 0x00000011 #define SMC_PROMOTE 0x00000012 #define SMC_DEFAULTICON 0x00000016 #define SMC_NEWITEM 0x00000017 #define SMC_CHEVRONEXPAND 0x00000019 #define SMC_DISPLAYCHEVRONTIP 0x0000002A #define SMC_SETSFOBJECT 0x0000002D #define SMC_SHCHANGENOTIFY 0x0000002E #define SMC_CHEVRONGETTIP 0x0000002F #define SMC_SFDDRESTRICTED 0x00000030 #if _WIN32_IE >= _WIN32_IE_IE70 #define SMC_SFEXEC_MIDDLE 0x00000031 #define SMC_GETAUTOEXPANDSTATE 0x00000041 #define SMC_AUTOEXPANDCHANGE 0x00000042 #define SMC_GETCONTEXTMENUMODIFIER 0x00000043 #define SMC_GETBKCONTEXTMENU 0x00000044 #define SMC_OPEN 0x00000045 #define SMAE_EXPANDED 0x00000001 #define SMAE_CONTRACTED 0x00000002 #define SMAE_USER 0x00000004 #define SMAE_VALID 0x00000007 #endif /***************************************************************************** * IShellMenuCallback interface */ #ifndef __IShellMenuCallback_INTERFACE_DEFINED__ #define __IShellMenuCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellMenuCallback, 0x4ca300a1, 0x9b8d, 0x11d1, 0x8b,0x22, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4ca300a1-9b8d-11d1-8b22-00c04fd918d0") IShellMenuCallback : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CallbackSM( LPSMDATA psmd, UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellMenuCallback, 0x4ca300a1, 0x9b8d, 0x11d1, 0x8b,0x22, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) #endif #else typedef struct IShellMenuCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellMenuCallback *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellMenuCallback *This); ULONG (STDMETHODCALLTYPE *Release)( IShellMenuCallback *This); /*** IShellMenuCallback methods ***/ HRESULT (STDMETHODCALLTYPE *CallbackSM)( IShellMenuCallback *This, LPSMDATA psmd, UINT uMsg, WPARAM wParam, LPARAM lParam); END_INTERFACE } IShellMenuCallbackVtbl; interface IShellMenuCallback { CONST_VTBL IShellMenuCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellMenuCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellMenuCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellMenuCallback_Release(This) (This)->lpVtbl->Release(This) /*** IShellMenuCallback methods ***/ #define IShellMenuCallback_CallbackSM(This,psmd,uMsg,wParam,lParam) (This)->lpVtbl->CallbackSM(This,psmd,uMsg,wParam,lParam) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellMenuCallback_QueryInterface(IShellMenuCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellMenuCallback_AddRef(IShellMenuCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellMenuCallback_Release(IShellMenuCallback* This) { return This->lpVtbl->Release(This); } /*** IShellMenuCallback methods ***/ static FORCEINLINE HRESULT IShellMenuCallback_CallbackSM(IShellMenuCallback* This,LPSMDATA psmd,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->CallbackSM(This,psmd,uMsg,wParam,lParam); } #endif #endif #endif #endif /* __IShellMenuCallback_INTERFACE_DEFINED__ */ #define SMINIT_DEFAULT 0x00000000 #define SMINIT_RESTRICT_DRAGDROP 0x00000002 #define SMINIT_TOPLEVEL 0x00000004 #define SMINIT_CACHED 0x00000010 #if _WIN32_IE >= _WIN32_IE_IE70 #define SMINIT_AUTOEXPAND 0x00000100 #define SMINIT_AUTOTOOLTIP 0x00000200 #define SMINIT_DROPONCONTAINER 0x00000400 #endif #define SMINIT_VERTICAL 0x10000000 #define SMINIT_HORIZONTAL 0x20000000 #define ANCESTORDEFAULT (UINT)-1 #define SMSET_TOP 0x10000000 #define SMSET_BOTTOM 0x20000000 #define SMSET_DONTOWN 0x00000001 #define SMINV_REFRESH 0x00000001 #define SMINV_ID 0x00000008 /***************************************************************************** * IShellMenu interface */ #ifndef __IShellMenu_INTERFACE_DEFINED__ #define __IShellMenu_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellMenu, 0xee1f7637, 0xe138, 0x11d1, 0x83,0x79, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ee1f7637-e138-11d1-8379-00c04fd918d0") IShellMenu : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( IShellMenuCallback *psmc, UINT uId, UINT uIdAncestor, DWORD dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetMenuInfo( IShellMenuCallback **ppsmc, UINT *puId, UINT *puIdAncestor, DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetShellFolder( IShellFolder *psf, PCIDLIST_ABSOLUTE pidlFolder, HKEY hKey, DWORD dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetShellFolder( DWORD *pdwFlags, PIDLIST_ABSOLUTE *ppidl, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE SetMenu( HMENU hmenu, HWND hwnd, DWORD dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetMenu( HMENU *phmenu, HWND *phwnd, DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE InvalidateItem( LPSMDATA psmd, DWORD dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetState( LPSMDATA psmd) = 0; virtual HRESULT STDMETHODCALLTYPE SetMenuToolbar( IUnknown *punk, DWORD dwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellMenu, 0xee1f7637, 0xe138, 0x11d1, 0x83,0x79, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) #endif #else typedef struct IShellMenuVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellMenu *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellMenu *This); ULONG (STDMETHODCALLTYPE *Release)( IShellMenu *This); /*** IShellMenu methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IShellMenu *This, IShellMenuCallback *psmc, UINT uId, UINT uIdAncestor, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *GetMenuInfo)( IShellMenu *This, IShellMenuCallback **ppsmc, UINT *puId, UINT *puIdAncestor, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *SetShellFolder)( IShellMenu *This, IShellFolder *psf, PCIDLIST_ABSOLUTE pidlFolder, HKEY hKey, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *GetShellFolder)( IShellMenu *This, DWORD *pdwFlags, PIDLIST_ABSOLUTE *ppidl, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *SetMenu)( IShellMenu *This, HMENU hmenu, HWND hwnd, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *GetMenu)( IShellMenu *This, HMENU *phmenu, HWND *phwnd, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *InvalidateItem)( IShellMenu *This, LPSMDATA psmd, DWORD dwFlags); HRESULT (STDMETHODCALLTYPE *GetState)( IShellMenu *This, LPSMDATA psmd); HRESULT (STDMETHODCALLTYPE *SetMenuToolbar)( IShellMenu *This, IUnknown *punk, DWORD dwFlags); END_INTERFACE } IShellMenuVtbl; interface IShellMenu { CONST_VTBL IShellMenuVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellMenu_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellMenu_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellMenu_Release(This) (This)->lpVtbl->Release(This) /*** IShellMenu methods ***/ #define IShellMenu_Initialize(This,psmc,uId,uIdAncestor,dwFlags) (This)->lpVtbl->Initialize(This,psmc,uId,uIdAncestor,dwFlags) #define IShellMenu_GetMenuInfo(This,ppsmc,puId,puIdAncestor,pdwFlags) (This)->lpVtbl->GetMenuInfo(This,ppsmc,puId,puIdAncestor,pdwFlags) #define IShellMenu_SetShellFolder(This,psf,pidlFolder,hKey,dwFlags) (This)->lpVtbl->SetShellFolder(This,psf,pidlFolder,hKey,dwFlags) #define IShellMenu_GetShellFolder(This,pdwFlags,ppidl,riid,ppv) (This)->lpVtbl->GetShellFolder(This,pdwFlags,ppidl,riid,ppv) #define IShellMenu_SetMenu(This,hmenu,hwnd,dwFlags) (This)->lpVtbl->SetMenu(This,hmenu,hwnd,dwFlags) #define IShellMenu_GetMenu(This,phmenu,phwnd,pdwFlags) (This)->lpVtbl->GetMenu(This,phmenu,phwnd,pdwFlags) #define IShellMenu_InvalidateItem(This,psmd,dwFlags) (This)->lpVtbl->InvalidateItem(This,psmd,dwFlags) #define IShellMenu_GetState(This,psmd) (This)->lpVtbl->GetState(This,psmd) #define IShellMenu_SetMenuToolbar(This,punk,dwFlags) (This)->lpVtbl->SetMenuToolbar(This,punk,dwFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellMenu_QueryInterface(IShellMenu* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellMenu_AddRef(IShellMenu* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellMenu_Release(IShellMenu* This) { return This->lpVtbl->Release(This); } /*** IShellMenu methods ***/ static FORCEINLINE HRESULT IShellMenu_Initialize(IShellMenu* This,IShellMenuCallback *psmc,UINT uId,UINT uIdAncestor,DWORD dwFlags) { return This->lpVtbl->Initialize(This,psmc,uId,uIdAncestor,dwFlags); } static FORCEINLINE HRESULT IShellMenu_GetMenuInfo(IShellMenu* This,IShellMenuCallback **ppsmc,UINT *puId,UINT *puIdAncestor,DWORD *pdwFlags) { return This->lpVtbl->GetMenuInfo(This,ppsmc,puId,puIdAncestor,pdwFlags); } static FORCEINLINE HRESULT IShellMenu_SetShellFolder(IShellMenu* This,IShellFolder *psf,PCIDLIST_ABSOLUTE pidlFolder,HKEY hKey,DWORD dwFlags) { return This->lpVtbl->SetShellFolder(This,psf,pidlFolder,hKey,dwFlags); } static FORCEINLINE HRESULT IShellMenu_GetShellFolder(IShellMenu* This,DWORD *pdwFlags,PIDLIST_ABSOLUTE *ppidl,REFIID riid,void **ppv) { return This->lpVtbl->GetShellFolder(This,pdwFlags,ppidl,riid,ppv); } static FORCEINLINE HRESULT IShellMenu_SetMenu(IShellMenu* This,HMENU hmenu,HWND hwnd,DWORD dwFlags) { return This->lpVtbl->SetMenu(This,hmenu,hwnd,dwFlags); } static FORCEINLINE HRESULT IShellMenu_GetMenu(IShellMenu* This,HMENU *phmenu,HWND *phwnd,DWORD *pdwFlags) { return This->lpVtbl->GetMenu(This,phmenu,phwnd,pdwFlags); } static FORCEINLINE HRESULT IShellMenu_InvalidateItem(IShellMenu* This,LPSMDATA psmd,DWORD dwFlags) { return This->lpVtbl->InvalidateItem(This,psmd,dwFlags); } static FORCEINLINE HRESULT IShellMenu_GetState(IShellMenu* This,LPSMDATA psmd) { return This->lpVtbl->GetState(This,psmd); } static FORCEINLINE HRESULT IShellMenu_SetMenuToolbar(IShellMenu* This,IUnknown *punk,DWORD dwFlags) { return This->lpVtbl->SetMenuToolbar(This,punk,dwFlags); } #endif #endif #endif #endif /* __IShellMenu_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IShellRunDll interface */ #ifndef __IShellRunDll_INTERFACE_DEFINED__ #define __IShellRunDll_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellRunDll, 0xfce4bde0, 0x4b68, 0x4b80, 0x8e,0x9c, 0x74,0x26,0x31,0x5a,0x73,0x88); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fce4bde0-4b68-4b80-8e9c-7426315a7388") IShellRunDll : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Run( LPCWSTR pszArgs) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellRunDll, 0xfce4bde0, 0x4b68, 0x4b80, 0x8e,0x9c, 0x74,0x26,0x31,0x5a,0x73,0x88) #endif #else typedef struct IShellRunDllVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellRunDll *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellRunDll *This); ULONG (STDMETHODCALLTYPE *Release)( IShellRunDll *This); /*** IShellRunDll methods ***/ HRESULT (STDMETHODCALLTYPE *Run)( IShellRunDll *This, LPCWSTR pszArgs); END_INTERFACE } IShellRunDllVtbl; interface IShellRunDll { CONST_VTBL IShellRunDllVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellRunDll_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellRunDll_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellRunDll_Release(This) (This)->lpVtbl->Release(This) /*** IShellRunDll methods ***/ #define IShellRunDll_Run(This,pszArgs) (This)->lpVtbl->Run(This,pszArgs) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellRunDll_QueryInterface(IShellRunDll* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellRunDll_AddRef(IShellRunDll* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellRunDll_Release(IShellRunDll* This) { return This->lpVtbl->Release(This); } /*** IShellRunDll methods ***/ static FORCEINLINE HRESULT IShellRunDll_Run(IShellRunDll* This,LPCWSTR pszArgs) { return This->lpVtbl->Run(This,pszArgs); } #endif #endif #endif #endif /* __IShellRunDll_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA typedef enum KF_CATEGORY { KF_CATEGORY_VIRTUAL = 1, KF_CATEGORY_FIXED = 2, KF_CATEGORY_COMMON = 3, KF_CATEGORY_PERUSER = 4 } KF_CATEGORY; enum _KF_DEFINITION_FLAGS { KFDF_LOCAL_REDIRECT_ONLY = 0x2, KFDF_ROAMABLE = 0x4, KFDF_PRECREATE = 0x8, KFDF_STREAM = 0x10, KFDF_PUBLISHEXPANDEDPATH = 0x20 }; typedef DWORD KF_DEFINITION_FLAGS; enum _KF_REDIRECT_FLAGS { KF_REDIRECT_USER_EXCLUSIVE = 0x1, KF_REDIRECT_COPY_SOURCE_DACL = 0x2, KF_REDIRECT_OWNER_USER = 0x4, KF_REDIRECT_SET_OWNER_EXPLICIT = 0x8, KF_REDIRECT_CHECK_ONLY = 0x10, KF_REDIRECT_WITH_UI = 0x20, KF_REDIRECT_UNPIN = 0x40, KF_REDIRECT_PIN = 0x80, KF_REDIRECT_COPY_CONTENTS = 0x200, KF_REDIRECT_DEL_SOURCE_CONTENTS = 0x400, KF_REDIRECT_EXCLUDE_ALL_KNOWN_SUBFOLDERS = 0x800 }; typedef DWORD KF_REDIRECT_FLAGS; enum _KF_REDIRECTION_CAPABILITIES { KF_REDIRECTION_CAPABILITIES_ALLOW_ALL = 0xff, KF_REDIRECTION_CAPABILITIES_REDIRECTABLE = 0x1, KF_REDIRECTION_CAPABILITIES_DENY_ALL = 0xfff00, KF_REDIRECTION_CAPABILITIES_DENY_POLICY_REDIRECTED = 0x100, KF_REDIRECTION_CAPABILITIES_DENY_POLICY = 0x200, KF_REDIRECTION_CAPABILITIES_DENY_PERMISSIONS = 0x400 }; typedef DWORD KF_REDIRECTION_CAPABILITIES; typedef struct KNOWNFOLDER_DEFINITION { KF_CATEGORY category; LPWSTR pszName; LPWSTR pszDescription; KNOWNFOLDERID fidParent; LPWSTR pszRelativePath; LPWSTR pszParsingName; LPWSTR pszTooltip; LPWSTR pszLocalizedName; LPWSTR pszIcon; LPWSTR pszSecurity; DWORD dwAttributes; KF_DEFINITION_FLAGS kfdFlags; FOLDERTYPEID ftidType; } KNOWNFOLDER_DEFINITION; /***************************************************************************** * IKnownFolder interface */ #ifndef __IKnownFolder_INTERFACE_DEFINED__ #define __IKnownFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IKnownFolder, 0x3aa7af7e, 0x9b36, 0x420c, 0xa8,0xe3, 0xf7,0x7d,0x46,0x74,0xa4,0x88); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3aa7af7e-9b36-420c-a8e3-f77d4674a488") IKnownFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetId( KNOWNFOLDERID *pkfid) = 0; virtual HRESULT STDMETHODCALLTYPE GetCategory( KF_CATEGORY *pCategory) = 0; virtual HRESULT STDMETHODCALLTYPE GetShellItem( DWORD dwFlags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPath( DWORD dwFlags, LPWSTR *ppszPath) = 0; virtual HRESULT STDMETHODCALLTYPE SetPath( DWORD dwFlags, LPCWSTR pszPath) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( DWORD dwFlags, PIDLIST_ABSOLUTE *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderType( FOLDERTYPEID *pftid) = 0; virtual HRESULT STDMETHODCALLTYPE GetRedirectionCapabilities( KF_REDIRECTION_CAPABILITIES *pCapabilities) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderDefinition( KNOWNFOLDER_DEFINITION *pKFD) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IKnownFolder, 0x3aa7af7e, 0x9b36, 0x420c, 0xa8,0xe3, 0xf7,0x7d,0x46,0x74,0xa4,0x88) #endif #else typedef struct IKnownFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IKnownFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IKnownFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IKnownFolder *This); /*** IKnownFolder methods ***/ HRESULT (STDMETHODCALLTYPE *GetId)( IKnownFolder *This, KNOWNFOLDERID *pkfid); HRESULT (STDMETHODCALLTYPE *GetCategory)( IKnownFolder *This, KF_CATEGORY *pCategory); HRESULT (STDMETHODCALLTYPE *GetShellItem)( IKnownFolder *This, DWORD dwFlags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPath)( IKnownFolder *This, DWORD dwFlags, LPWSTR *ppszPath); HRESULT (STDMETHODCALLTYPE *SetPath)( IKnownFolder *This, DWORD dwFlags, LPCWSTR pszPath); HRESULT (STDMETHODCALLTYPE *GetIDList)( IKnownFolder *This, DWORD dwFlags, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetFolderType)( IKnownFolder *This, FOLDERTYPEID *pftid); HRESULT (STDMETHODCALLTYPE *GetRedirectionCapabilities)( IKnownFolder *This, KF_REDIRECTION_CAPABILITIES *pCapabilities); HRESULT (STDMETHODCALLTYPE *GetFolderDefinition)( IKnownFolder *This, KNOWNFOLDER_DEFINITION *pKFD); END_INTERFACE } IKnownFolderVtbl; interface IKnownFolder { CONST_VTBL IKnownFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IKnownFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IKnownFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IKnownFolder_Release(This) (This)->lpVtbl->Release(This) /*** IKnownFolder methods ***/ #define IKnownFolder_GetId(This,pkfid) (This)->lpVtbl->GetId(This,pkfid) #define IKnownFolder_GetCategory(This,pCategory) (This)->lpVtbl->GetCategory(This,pCategory) #define IKnownFolder_GetShellItem(This,dwFlags,riid,ppv) (This)->lpVtbl->GetShellItem(This,dwFlags,riid,ppv) #define IKnownFolder_GetPath(This,dwFlags,ppszPath) (This)->lpVtbl->GetPath(This,dwFlags,ppszPath) #define IKnownFolder_SetPath(This,dwFlags,pszPath) (This)->lpVtbl->SetPath(This,dwFlags,pszPath) #define IKnownFolder_GetIDList(This,dwFlags,ppidl) (This)->lpVtbl->GetIDList(This,dwFlags,ppidl) #define IKnownFolder_GetFolderType(This,pftid) (This)->lpVtbl->GetFolderType(This,pftid) #define IKnownFolder_GetRedirectionCapabilities(This,pCapabilities) (This)->lpVtbl->GetRedirectionCapabilities(This,pCapabilities) #define IKnownFolder_GetFolderDefinition(This,pKFD) (This)->lpVtbl->GetFolderDefinition(This,pKFD) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IKnownFolder_QueryInterface(IKnownFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IKnownFolder_AddRef(IKnownFolder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IKnownFolder_Release(IKnownFolder* This) { return This->lpVtbl->Release(This); } /*** IKnownFolder methods ***/ static FORCEINLINE HRESULT IKnownFolder_GetId(IKnownFolder* This,KNOWNFOLDERID *pkfid) { return This->lpVtbl->GetId(This,pkfid); } static FORCEINLINE HRESULT IKnownFolder_GetCategory(IKnownFolder* This,KF_CATEGORY *pCategory) { return This->lpVtbl->GetCategory(This,pCategory); } static FORCEINLINE HRESULT IKnownFolder_GetShellItem(IKnownFolder* This,DWORD dwFlags,REFIID riid,void **ppv) { return This->lpVtbl->GetShellItem(This,dwFlags,riid,ppv); } static FORCEINLINE HRESULT IKnownFolder_GetPath(IKnownFolder* This,DWORD dwFlags,LPWSTR *ppszPath) { return This->lpVtbl->GetPath(This,dwFlags,ppszPath); } static FORCEINLINE HRESULT IKnownFolder_SetPath(IKnownFolder* This,DWORD dwFlags,LPCWSTR pszPath) { return This->lpVtbl->SetPath(This,dwFlags,pszPath); } static FORCEINLINE HRESULT IKnownFolder_GetIDList(IKnownFolder* This,DWORD dwFlags,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetIDList(This,dwFlags,ppidl); } static FORCEINLINE HRESULT IKnownFolder_GetFolderType(IKnownFolder* This,FOLDERTYPEID *pftid) { return This->lpVtbl->GetFolderType(This,pftid); } static FORCEINLINE HRESULT IKnownFolder_GetRedirectionCapabilities(IKnownFolder* This,KF_REDIRECTION_CAPABILITIES *pCapabilities) { return This->lpVtbl->GetRedirectionCapabilities(This,pCapabilities); } static FORCEINLINE HRESULT IKnownFolder_GetFolderDefinition(IKnownFolder* This,KNOWNFOLDER_DEFINITION *pKFD) { return This->lpVtbl->GetFolderDefinition(This,pKFD); } #endif #endif #endif #endif /* __IKnownFolder_INTERFACE_DEFINED__ */ /***************************************************************************** * IKnownFolderManager interface */ #ifndef __IKnownFolderManager_INTERFACE_DEFINED__ #define __IKnownFolderManager_INTERFACE_DEFINED__ typedef enum FFFP_MODE { FFFP_EXACTMATCH = 0, FFFP_NEARESTPARENTMATCH = 1 } FFFP_MODE; DEFINE_GUID(IID_IKnownFolderManager, 0x8be2d872, 0x86aa, 0x4d47, 0xb7,0x76, 0x32,0xcc,0xa4,0x0c,0x70,0x18); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8be2d872-86aa-4d47-b776-32cca40c7018") IKnownFolderManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE FolderIdFromCsidl( int nCsidl, KNOWNFOLDERID *pfid) = 0; virtual HRESULT STDMETHODCALLTYPE FolderIdToCsidl( REFKNOWNFOLDERID rfid, int *pnCsidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderIds( KNOWNFOLDERID **ppKFId, UINT *pCount) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( REFKNOWNFOLDERID rfid, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderByName( LPCWSTR pszCanonicalName, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterFolder( REFKNOWNFOLDERID rfid, const KNOWNFOLDER_DEFINITION *pKFD) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterFolder( REFKNOWNFOLDERID rfid) = 0; virtual HRESULT STDMETHODCALLTYPE FindFolderFromPath( LPCWSTR pszPath, FFFP_MODE mode, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE FindFolderFromIDList( PCIDLIST_ABSOLUTE pidl, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE Redirect( REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const KNOWNFOLDERID *pExclusion, LPWSTR *ppszError) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IKnownFolderManager, 0x8be2d872, 0x86aa, 0x4d47, 0xb7,0x76, 0x32,0xcc,0xa4,0x0c,0x70,0x18) #endif #else typedef struct IKnownFolderManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IKnownFolderManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IKnownFolderManager *This); ULONG (STDMETHODCALLTYPE *Release)( IKnownFolderManager *This); /*** IKnownFolderManager methods ***/ HRESULT (STDMETHODCALLTYPE *FolderIdFromCsidl)( IKnownFolderManager *This, int nCsidl, KNOWNFOLDERID *pfid); HRESULT (STDMETHODCALLTYPE *FolderIdToCsidl)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, int *pnCsidl); HRESULT (STDMETHODCALLTYPE *GetFolderIds)( IKnownFolderManager *This, KNOWNFOLDERID **ppKFId, UINT *pCount); HRESULT (STDMETHODCALLTYPE *GetFolder)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *GetFolderByName)( IKnownFolderManager *This, LPCWSTR pszCanonicalName, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *RegisterFolder)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, const KNOWNFOLDER_DEFINITION *pKFD); HRESULT (STDMETHODCALLTYPE *UnregisterFolder)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid); HRESULT (STDMETHODCALLTYPE *FindFolderFromPath)( IKnownFolderManager *This, LPCWSTR pszPath, FFFP_MODE mode, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *FindFolderFromIDList)( IKnownFolderManager *This, PCIDLIST_ABSOLUTE pidl, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *Redirect)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const KNOWNFOLDERID *pExclusion, LPWSTR *ppszError); END_INTERFACE } IKnownFolderManagerVtbl; interface IKnownFolderManager { CONST_VTBL IKnownFolderManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IKnownFolderManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IKnownFolderManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IKnownFolderManager_Release(This) (This)->lpVtbl->Release(This) /*** IKnownFolderManager methods ***/ #define IKnownFolderManager_FolderIdFromCsidl(This,nCsidl,pfid) (This)->lpVtbl->FolderIdFromCsidl(This,nCsidl,pfid) #define IKnownFolderManager_FolderIdToCsidl(This,rfid,pnCsidl) (This)->lpVtbl->FolderIdToCsidl(This,rfid,pnCsidl) #define IKnownFolderManager_GetFolderIds(This,ppKFId,pCount) (This)->lpVtbl->GetFolderIds(This,ppKFId,pCount) #define IKnownFolderManager_GetFolder(This,rfid,ppkf) (This)->lpVtbl->GetFolder(This,rfid,ppkf) #define IKnownFolderManager_GetFolderByName(This,pszCanonicalName,ppkf) (This)->lpVtbl->GetFolderByName(This,pszCanonicalName,ppkf) #define IKnownFolderManager_RegisterFolder(This,rfid,pKFD) (This)->lpVtbl->RegisterFolder(This,rfid,pKFD) #define IKnownFolderManager_UnregisterFolder(This,rfid) (This)->lpVtbl->UnregisterFolder(This,rfid) #define IKnownFolderManager_FindFolderFromPath(This,pszPath,mode,ppkf) (This)->lpVtbl->FindFolderFromPath(This,pszPath,mode,ppkf) #define IKnownFolderManager_FindFolderFromIDList(This,pidl,ppkf) (This)->lpVtbl->FindFolderFromIDList(This,pidl,ppkf) #define IKnownFolderManager_Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError) (This)->lpVtbl->Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IKnownFolderManager_QueryInterface(IKnownFolderManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IKnownFolderManager_AddRef(IKnownFolderManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IKnownFolderManager_Release(IKnownFolderManager* This) { return This->lpVtbl->Release(This); } /*** IKnownFolderManager methods ***/ static FORCEINLINE HRESULT IKnownFolderManager_FolderIdFromCsidl(IKnownFolderManager* This,int nCsidl,KNOWNFOLDERID *pfid) { return This->lpVtbl->FolderIdFromCsidl(This,nCsidl,pfid); } static FORCEINLINE HRESULT IKnownFolderManager_FolderIdToCsidl(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,int *pnCsidl) { return This->lpVtbl->FolderIdToCsidl(This,rfid,pnCsidl); } static FORCEINLINE HRESULT IKnownFolderManager_GetFolderIds(IKnownFolderManager* This,KNOWNFOLDERID **ppKFId,UINT *pCount) { return This->lpVtbl->GetFolderIds(This,ppKFId,pCount); } static FORCEINLINE HRESULT IKnownFolderManager_GetFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,IKnownFolder **ppkf) { return This->lpVtbl->GetFolder(This,rfid,ppkf); } static FORCEINLINE HRESULT IKnownFolderManager_GetFolderByName(IKnownFolderManager* This,LPCWSTR pszCanonicalName,IKnownFolder **ppkf) { return This->lpVtbl->GetFolderByName(This,pszCanonicalName,ppkf); } static FORCEINLINE HRESULT IKnownFolderManager_RegisterFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,const KNOWNFOLDER_DEFINITION *pKFD) { return This->lpVtbl->RegisterFolder(This,rfid,pKFD); } static FORCEINLINE HRESULT IKnownFolderManager_UnregisterFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid) { return This->lpVtbl->UnregisterFolder(This,rfid); } static FORCEINLINE HRESULT IKnownFolderManager_FindFolderFromPath(IKnownFolderManager* This,LPCWSTR pszPath,FFFP_MODE mode,IKnownFolder **ppkf) { return This->lpVtbl->FindFolderFromPath(This,pszPath,mode,ppkf); } static FORCEINLINE HRESULT IKnownFolderManager_FindFolderFromIDList(IKnownFolderManager* This,PCIDLIST_ABSOLUTE pidl,IKnownFolder **ppkf) { return This->lpVtbl->FindFolderFromIDList(This,pidl,ppkf); } static FORCEINLINE HRESULT IKnownFolderManager_Redirect(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,HWND hwnd,KF_REDIRECT_FLAGS flags,LPCWSTR pszTargetPath,UINT cFolders,const KNOWNFOLDERID *pExclusion,LPWSTR *ppszError) { return This->lpVtbl->Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IKnownFolderManager_RemoteRedirect_Proxy( IKnownFolderManager* This, REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const GUID *pExclusion, LPWSTR *ppszError); void __RPC_STUB IKnownFolderManager_RemoteRedirect_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IKnownFolderManager_Redirect_Proxy( IKnownFolderManager* This, REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const KNOWNFOLDERID *pExclusion, LPWSTR *ppszError); HRESULT __RPC_STUB IKnownFolderManager_Redirect_Stub( IKnownFolderManager* This, REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const GUID *pExclusion, LPWSTR *ppszError); #endif /* __IKnownFolderManager_INTERFACE_DEFINED__ */ __forceinline void FreeKnownFolderDefinitionFields(KNOWNFOLDER_DEFINITION *pKFD) { CoTaskMemFree(pKFD->pszName); CoTaskMemFree(pKFD->pszDescription); CoTaskMemFree(pKFD->pszRelativePath); CoTaskMemFree(pKFD->pszParsingName); CoTaskMemFree(pKFD->pszTooltip); CoTaskMemFree(pKFD->pszLocalizedName); CoTaskMemFree(pKFD->pszIcon); CoTaskMemFree(pKFD->pszSecurity); } typedef enum SHARE_ROLE { SHARE_ROLE_INVALID = -1, SHARE_ROLE_READER = 0, SHARE_ROLE_CONTRIBUTOR = 1, SHARE_ROLE_CO_OWNER = 2, SHARE_ROLE_OWNER = 3, SHARE_ROLE_CUSTOM = 4, SHARE_ROLE_MIXED = 5 } SHARE_ROLE; typedef enum DEF_SHARE_ID { DEFSHAREID_USERS = 1, DEFSHAREID_PUBLIC = 2 } DEF_SHARE_ID; /***************************************************************************** * ISharingConfigurationManager interface */ #ifndef __ISharingConfigurationManager_INTERFACE_DEFINED__ #define __ISharingConfigurationManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_ISharingConfigurationManager, 0xb4cd448a, 0x9c86, 0x4466, 0x92,0x01, 0x2e,0x62,0x10,0x5b,0x87,0xae); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b4cd448a-9c86-4466-9201-2e62105b87ae") ISharingConfigurationManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateShare( DEF_SHARE_ID dsid, SHARE_ROLE role) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteShare( DEF_SHARE_ID dsid) = 0; virtual HRESULT STDMETHODCALLTYPE ShareExists( DEF_SHARE_ID dsid) = 0; virtual HRESULT STDMETHODCALLTYPE GetSharePermissions( DEF_SHARE_ID dsid, SHARE_ROLE *pRole) = 0; virtual HRESULT STDMETHODCALLTYPE SharePrinters( ) = 0; virtual HRESULT STDMETHODCALLTYPE StopSharingPrinters( ) = 0; virtual HRESULT STDMETHODCALLTYPE ArePrintersShared( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ISharingConfigurationManager, 0xb4cd448a, 0x9c86, 0x4466, 0x92,0x01, 0x2e,0x62,0x10,0x5b,0x87,0xae) #endif #else typedef struct ISharingConfigurationManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ISharingConfigurationManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ISharingConfigurationManager *This); ULONG (STDMETHODCALLTYPE *Release)( ISharingConfigurationManager *This); /*** ISharingConfigurationManager methods ***/ HRESULT (STDMETHODCALLTYPE *CreateShare)( ISharingConfigurationManager *This, DEF_SHARE_ID dsid, SHARE_ROLE role); HRESULT (STDMETHODCALLTYPE *DeleteShare)( ISharingConfigurationManager *This, DEF_SHARE_ID dsid); HRESULT (STDMETHODCALLTYPE *ShareExists)( ISharingConfigurationManager *This, DEF_SHARE_ID dsid); HRESULT (STDMETHODCALLTYPE *GetSharePermissions)( ISharingConfigurationManager *This, DEF_SHARE_ID dsid, SHARE_ROLE *pRole); HRESULT (STDMETHODCALLTYPE *SharePrinters)( ISharingConfigurationManager *This); HRESULT (STDMETHODCALLTYPE *StopSharingPrinters)( ISharingConfigurationManager *This); HRESULT (STDMETHODCALLTYPE *ArePrintersShared)( ISharingConfigurationManager *This); END_INTERFACE } ISharingConfigurationManagerVtbl; interface ISharingConfigurationManager { CONST_VTBL ISharingConfigurationManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ISharingConfigurationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ISharingConfigurationManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define ISharingConfigurationManager_Release(This) (This)->lpVtbl->Release(This) /*** ISharingConfigurationManager methods ***/ #define ISharingConfigurationManager_CreateShare(This,dsid,role) (This)->lpVtbl->CreateShare(This,dsid,role) #define ISharingConfigurationManager_DeleteShare(This,dsid) (This)->lpVtbl->DeleteShare(This,dsid) #define ISharingConfigurationManager_ShareExists(This,dsid) (This)->lpVtbl->ShareExists(This,dsid) #define ISharingConfigurationManager_GetSharePermissions(This,dsid,pRole) (This)->lpVtbl->GetSharePermissions(This,dsid,pRole) #define ISharingConfigurationManager_SharePrinters(This) (This)->lpVtbl->SharePrinters(This) #define ISharingConfigurationManager_StopSharingPrinters(This) (This)->lpVtbl->StopSharingPrinters(This) #define ISharingConfigurationManager_ArePrintersShared(This) (This)->lpVtbl->ArePrintersShared(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ISharingConfigurationManager_QueryInterface(ISharingConfigurationManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ISharingConfigurationManager_AddRef(ISharingConfigurationManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ISharingConfigurationManager_Release(ISharingConfigurationManager* This) { return This->lpVtbl->Release(This); } /*** ISharingConfigurationManager methods ***/ static FORCEINLINE HRESULT ISharingConfigurationManager_CreateShare(ISharingConfigurationManager* This,DEF_SHARE_ID dsid,SHARE_ROLE role) { return This->lpVtbl->CreateShare(This,dsid,role); } static FORCEINLINE HRESULT ISharingConfigurationManager_DeleteShare(ISharingConfigurationManager* This,DEF_SHARE_ID dsid) { return This->lpVtbl->DeleteShare(This,dsid); } static FORCEINLINE HRESULT ISharingConfigurationManager_ShareExists(ISharingConfigurationManager* This,DEF_SHARE_ID dsid) { return This->lpVtbl->ShareExists(This,dsid); } static FORCEINLINE HRESULT ISharingConfigurationManager_GetSharePermissions(ISharingConfigurationManager* This,DEF_SHARE_ID dsid,SHARE_ROLE *pRole) { return This->lpVtbl->GetSharePermissions(This,dsid,pRole); } static FORCEINLINE HRESULT ISharingConfigurationManager_SharePrinters(ISharingConfigurationManager* This) { return This->lpVtbl->SharePrinters(This); } static FORCEINLINE HRESULT ISharingConfigurationManager_StopSharingPrinters(ISharingConfigurationManager* This) { return This->lpVtbl->StopSharingPrinters(This); } static FORCEINLINE HRESULT ISharingConfigurationManager_ArePrintersShared(ISharingConfigurationManager* This) { return This->lpVtbl->ArePrintersShared(This); } #endif #endif #endif #endif /* __ISharingConfigurationManager_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IPreviousVersionsInfo interface */ #ifndef __IPreviousVersionsInfo_INTERFACE_DEFINED__ #define __IPreviousVersionsInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPreviousVersionsInfo, 0x76e54780, 0xad74, 0x48e3, 0xa6,0x95, 0x3b,0xa9,0xa0,0xaf,0xf1,0x0d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("76e54780-ad74-48e3-a695-3ba9a0aff10d") IPreviousVersionsInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AreSnapshotsAvailable( LPCWSTR pszPath, WINBOOL fOkToBeSlow, WINBOOL *pfAvailable) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviousVersionsInfo, 0x76e54780, 0xad74, 0x48e3, 0xa6,0x95, 0x3b,0xa9,0xa0,0xaf,0xf1,0x0d) #endif #else typedef struct IPreviousVersionsInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviousVersionsInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviousVersionsInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviousVersionsInfo *This); /*** IPreviousVersionsInfo methods ***/ HRESULT (STDMETHODCALLTYPE *AreSnapshotsAvailable)( IPreviousVersionsInfo *This, LPCWSTR pszPath, WINBOOL fOkToBeSlow, WINBOOL *pfAvailable); END_INTERFACE } IPreviousVersionsInfoVtbl; interface IPreviousVersionsInfo { CONST_VTBL IPreviousVersionsInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviousVersionsInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviousVersionsInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviousVersionsInfo_Release(This) (This)->lpVtbl->Release(This) /*** IPreviousVersionsInfo methods ***/ #define IPreviousVersionsInfo_AreSnapshotsAvailable(This,pszPath,fOkToBeSlow,pfAvailable) (This)->lpVtbl->AreSnapshotsAvailable(This,pszPath,fOkToBeSlow,pfAvailable) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPreviousVersionsInfo_QueryInterface(IPreviousVersionsInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPreviousVersionsInfo_AddRef(IPreviousVersionsInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPreviousVersionsInfo_Release(IPreviousVersionsInfo* This) { return This->lpVtbl->Release(This); } /*** IPreviousVersionsInfo methods ***/ static FORCEINLINE HRESULT IPreviousVersionsInfo_AreSnapshotsAvailable(IPreviousVersionsInfo* This,LPCWSTR pszPath,WINBOOL fOkToBeSlow,WINBOOL *pfAvailable) { return This->lpVtbl->AreSnapshotsAvailable(This,pszPath,fOkToBeSlow,pfAvailable); } #endif #endif #endif #endif /* __IPreviousVersionsInfo_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * IRelatedItem interface */ #ifndef __IRelatedItem_INTERFACE_DEFINED__ #define __IRelatedItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IRelatedItem, 0xa73ce67a, 0x8ab1, 0x44f1, 0x8d,0x43, 0xd2,0xfc,0xbf,0x6b,0x1c,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a73ce67a-8ab1-44f1-8d43-d2fcbf6b1cd0") IRelatedItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetItemIDList( PIDLIST_ABSOLUTE *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetItem( IShellItem **ppsi) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IRelatedItem, 0xa73ce67a, 0x8ab1, 0x44f1, 0x8d,0x43, 0xd2,0xfc,0xbf,0x6b,0x1c,0xd0) #endif #else typedef struct IRelatedItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IRelatedItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IRelatedItem *This); ULONG (STDMETHODCALLTYPE *Release)( IRelatedItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IRelatedItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IRelatedItem *This, IShellItem **ppsi); END_INTERFACE } IRelatedItemVtbl; interface IRelatedItem { CONST_VTBL IRelatedItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IRelatedItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IRelatedItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IRelatedItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IRelatedItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IRelatedItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IRelatedItem_QueryInterface(IRelatedItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IRelatedItem_AddRef(IRelatedItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IRelatedItem_Release(IRelatedItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IRelatedItem_GetItemIDList(IRelatedItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IRelatedItem_GetItem(IRelatedItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IRelatedItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IIdentityName interface */ #ifndef __IIdentityName_INTERFACE_DEFINED__ #define __IIdentityName_INTERFACE_DEFINED__ DEFINE_GUID(IID_IIdentityName, 0x7d903fca, 0xd6f9, 0x4810, 0x83,0x32, 0x94,0x6c,0x01,0x77,0xe2,0x47); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7d903fca-d6f9-4810-8332-946c0177e247") IIdentityName : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IIdentityName, 0x7d903fca, 0xd6f9, 0x4810, 0x83,0x32, 0x94,0x6c,0x01,0x77,0xe2,0x47) #endif #else typedef struct IIdentityNameVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IIdentityName *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IIdentityName *This); ULONG (STDMETHODCALLTYPE *Release)( IIdentityName *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IIdentityName *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IIdentityName *This, IShellItem **ppsi); END_INTERFACE } IIdentityNameVtbl; interface IIdentityName { CONST_VTBL IIdentityNameVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IIdentityName_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IIdentityName_AddRef(This) (This)->lpVtbl->AddRef(This) #define IIdentityName_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IIdentityName_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IIdentityName_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IIdentityName_QueryInterface(IIdentityName* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IIdentityName_AddRef(IIdentityName* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IIdentityName_Release(IIdentityName* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IIdentityName_GetItemIDList(IIdentityName* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IIdentityName_GetItem(IIdentityName* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IIdentityName_INTERFACE_DEFINED__ */ /***************************************************************************** * IDelegateItem interface */ #ifndef __IDelegateItem_INTERFACE_DEFINED__ #define __IDelegateItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDelegateItem, 0x3c5a1c94, 0xc951, 0x4cb7, 0xbb,0x6d, 0x3b,0x93,0xf3,0x0c,0xce,0x93); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3c5a1c94-c951-4cb7-bb6d-3b93f30cce93") IDelegateItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDelegateItem, 0x3c5a1c94, 0xc951, 0x4cb7, 0xbb,0x6d, 0x3b,0x93,0xf3,0x0c,0xce,0x93) #endif #else typedef struct IDelegateItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDelegateItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDelegateItem *This); ULONG (STDMETHODCALLTYPE *Release)( IDelegateItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IDelegateItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IDelegateItem *This, IShellItem **ppsi); END_INTERFACE } IDelegateItemVtbl; interface IDelegateItem { CONST_VTBL IDelegateItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDelegateItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDelegateItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDelegateItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IDelegateItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IDelegateItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDelegateItem_QueryInterface(IDelegateItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDelegateItem_AddRef(IDelegateItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDelegateItem_Release(IDelegateItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IDelegateItem_GetItemIDList(IDelegateItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IDelegateItem_GetItem(IDelegateItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IDelegateItem_INTERFACE_DEFINED__ */ /***************************************************************************** * ICurrentItem interface */ #ifndef __ICurrentItem_INTERFACE_DEFINED__ #define __ICurrentItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICurrentItem, 0x240a7174, 0xd653, 0x4a1d, 0xa6,0xd3, 0xd4,0x94,0x3c,0xfb,0xfe,0x3d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("240a7174-d653-4a1d-a6d3-d4943cfbfe3d") ICurrentItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICurrentItem, 0x240a7174, 0xd653, 0x4a1d, 0xa6,0xd3, 0xd4,0x94,0x3c,0xfb,0xfe,0x3d) #endif #else typedef struct ICurrentItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICurrentItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICurrentItem *This); ULONG (STDMETHODCALLTYPE *Release)( ICurrentItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( ICurrentItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( ICurrentItem *This, IShellItem **ppsi); END_INTERFACE } ICurrentItemVtbl; interface ICurrentItem { CONST_VTBL ICurrentItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICurrentItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICurrentItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICurrentItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define ICurrentItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define ICurrentItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICurrentItem_QueryInterface(ICurrentItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICurrentItem_AddRef(ICurrentItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICurrentItem_Release(ICurrentItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT ICurrentItem_GetItemIDList(ICurrentItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT ICurrentItem_GetItem(ICurrentItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __ICurrentItem_INTERFACE_DEFINED__ */ /***************************************************************************** * ITransferMediumItem interface */ #ifndef __ITransferMediumItem_INTERFACE_DEFINED__ #define __ITransferMediumItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITransferMediumItem, 0x77f295d5, 0x2d6f, 0x4e19, 0xb8,0xae, 0x32,0x2f,0x3e,0x72,0x1a,0xb5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("77f295d5-2d6f-4e19-b8ae-322f3e721ab5") ITransferMediumItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferMediumItem, 0x77f295d5, 0x2d6f, 0x4e19, 0xb8,0xae, 0x32,0x2f,0x3e,0x72,0x1a,0xb5) #endif #else typedef struct ITransferMediumItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferMediumItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferMediumItem *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferMediumItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( ITransferMediumItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( ITransferMediumItem *This, IShellItem **ppsi); END_INTERFACE } ITransferMediumItemVtbl; interface ITransferMediumItem { CONST_VTBL ITransferMediumItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferMediumItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferMediumItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferMediumItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define ITransferMediumItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define ITransferMediumItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITransferMediumItem_QueryInterface(ITransferMediumItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITransferMediumItem_AddRef(ITransferMediumItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITransferMediumItem_Release(ITransferMediumItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT ITransferMediumItem_GetItemIDList(ITransferMediumItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT ITransferMediumItem_GetItem(ITransferMediumItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __ITransferMediumItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IUseToBrowseItem interface */ #ifndef __IUseToBrowseItem_INTERFACE_DEFINED__ #define __IUseToBrowseItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IUseToBrowseItem, 0x05edda5c, 0x98a3, 0x4717, 0x8a,0xdb, 0xc5,0xe7,0xda,0x99,0x1e,0xb1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("05edda5c-98a3-4717-8adb-c5e7da991eb1") IUseToBrowseItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IUseToBrowseItem, 0x05edda5c, 0x98a3, 0x4717, 0x8a,0xdb, 0xc5,0xe7,0xda,0x99,0x1e,0xb1) #endif #else typedef struct IUseToBrowseItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IUseToBrowseItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IUseToBrowseItem *This); ULONG (STDMETHODCALLTYPE *Release)( IUseToBrowseItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IUseToBrowseItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IUseToBrowseItem *This, IShellItem **ppsi); END_INTERFACE } IUseToBrowseItemVtbl; interface IUseToBrowseItem { CONST_VTBL IUseToBrowseItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IUseToBrowseItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IUseToBrowseItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IUseToBrowseItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IUseToBrowseItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IUseToBrowseItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IUseToBrowseItem_QueryInterface(IUseToBrowseItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IUseToBrowseItem_AddRef(IUseToBrowseItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IUseToBrowseItem_Release(IUseToBrowseItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IUseToBrowseItem_GetItemIDList(IUseToBrowseItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IUseToBrowseItem_GetItem(IUseToBrowseItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IUseToBrowseItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IDisplayItem interface */ #ifndef __IDisplayItem_INTERFACE_DEFINED__ #define __IDisplayItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDisplayItem, 0xc6fd5997, 0x9f6b, 0x4888, 0x87,0x03, 0x94,0xe8,0x0e,0x8c,0xde,0x3f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c6fd5997-9f6b-4888-8703-94e80e8cde3f") IDisplayItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDisplayItem, 0xc6fd5997, 0x9f6b, 0x4888, 0x87,0x03, 0x94,0xe8,0x0e,0x8c,0xde,0x3f) #endif #else typedef struct IDisplayItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDisplayItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDisplayItem *This); ULONG (STDMETHODCALLTYPE *Release)( IDisplayItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IDisplayItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IDisplayItem *This, IShellItem **ppsi); END_INTERFACE } IDisplayItemVtbl; interface IDisplayItem { CONST_VTBL IDisplayItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDisplayItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDisplayItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDisplayItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IDisplayItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IDisplayItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDisplayItem_QueryInterface(IDisplayItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDisplayItem_AddRef(IDisplayItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDisplayItem_Release(IDisplayItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IDisplayItem_GetItemIDList(IDisplayItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IDisplayItem_GetItem(IDisplayItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IDisplayItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IViewStateIdentityItem interface */ #ifndef __IViewStateIdentityItem_INTERFACE_DEFINED__ #define __IViewStateIdentityItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IViewStateIdentityItem, 0x9d264146, 0xa94f, 0x4195, 0x9f,0x9f, 0x3b,0xb1,0x2c,0xe0,0xc9,0x55); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9d264146-a94f-4195-9f9f-3bb12ce0c955") IViewStateIdentityItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IViewStateIdentityItem, 0x9d264146, 0xa94f, 0x4195, 0x9f,0x9f, 0x3b,0xb1,0x2c,0xe0,0xc9,0x55) #endif #else typedef struct IViewStateIdentityItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IViewStateIdentityItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IViewStateIdentityItem *This); ULONG (STDMETHODCALLTYPE *Release)( IViewStateIdentityItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IViewStateIdentityItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IViewStateIdentityItem *This, IShellItem **ppsi); END_INTERFACE } IViewStateIdentityItemVtbl; interface IViewStateIdentityItem { CONST_VTBL IViewStateIdentityItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IViewStateIdentityItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IViewStateIdentityItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IViewStateIdentityItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IViewStateIdentityItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IViewStateIdentityItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IViewStateIdentityItem_QueryInterface(IViewStateIdentityItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IViewStateIdentityItem_AddRef(IViewStateIdentityItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IViewStateIdentityItem_Release(IViewStateIdentityItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IViewStateIdentityItem_GetItemIDList(IViewStateIdentityItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IViewStateIdentityItem_GetItem(IViewStateIdentityItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IViewStateIdentityItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IPreviewItem interface */ #ifndef __IPreviewItem_INTERFACE_DEFINED__ #define __IPreviewItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPreviewItem, 0x36149969, 0x0a8f, 0x49c8, 0x8b,0x00, 0x4a,0xec,0xb2,0x02,0x22,0xfb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("36149969-0a8f-49c8-8b00-4aecb20222fb") IPreviewItem : public IRelatedItem { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewItem, 0x36149969, 0x0a8f, 0x49c8, 0x8b,0x00, 0x4a,0xec,0xb2,0x02,0x22,0xfb) #endif #else typedef struct IPreviewItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewItem *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewItem *This); /*** IRelatedItem methods ***/ HRESULT (STDMETHODCALLTYPE *GetItemIDList)( IPreviewItem *This, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetItem)( IPreviewItem *This, IShellItem **ppsi); END_INTERFACE } IPreviewItemVtbl; interface IPreviewItem { CONST_VTBL IPreviewItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewItem_Release(This) (This)->lpVtbl->Release(This) /*** IRelatedItem methods ***/ #define IPreviewItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) #define IPreviewItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPreviewItem_QueryInterface(IPreviewItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPreviewItem_AddRef(IPreviewItem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPreviewItem_Release(IPreviewItem* This) { return This->lpVtbl->Release(This); } /*** IRelatedItem methods ***/ static FORCEINLINE HRESULT IPreviewItem_GetItemIDList(IPreviewItem* This,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetItemIDList(This,ppidl); } static FORCEINLINE HRESULT IPreviewItem_GetItem(IPreviewItem* This,IShellItem **ppsi) { return This->lpVtbl->GetItem(This,ppsi); } #endif #endif #endif #endif /* __IPreviewItem_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IDestinationStreamFactory interface */ #ifndef __IDestinationStreamFactory_INTERFACE_DEFINED__ #define __IDestinationStreamFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDestinationStreamFactory, 0x8a87781b, 0x39a7, 0x4a1f, 0xaa,0xb3, 0xa3,0x9b,0x9c,0x34,0xa7,0xd9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8a87781b-39a7-4a1f-aab3-a39b9c34a7d9") IDestinationStreamFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDestinationStream( IStream **ppstm) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDestinationStreamFactory, 0x8a87781b, 0x39a7, 0x4a1f, 0xaa,0xb3, 0xa3,0x9b,0x9c,0x34,0xa7,0xd9) #endif #else typedef struct IDestinationStreamFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDestinationStreamFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDestinationStreamFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IDestinationStreamFactory *This); /*** IDestinationStreamFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetDestinationStream)( IDestinationStreamFactory *This, IStream **ppstm); END_INTERFACE } IDestinationStreamFactoryVtbl; interface IDestinationStreamFactory { CONST_VTBL IDestinationStreamFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDestinationStreamFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDestinationStreamFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDestinationStreamFactory_Release(This) (This)->lpVtbl->Release(This) /*** IDestinationStreamFactory methods ***/ #define IDestinationStreamFactory_GetDestinationStream(This,ppstm) (This)->lpVtbl->GetDestinationStream(This,ppstm) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDestinationStreamFactory_QueryInterface(IDestinationStreamFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDestinationStreamFactory_AddRef(IDestinationStreamFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDestinationStreamFactory_Release(IDestinationStreamFactory* This) { return This->lpVtbl->Release(This); } /*** IDestinationStreamFactory methods ***/ static FORCEINLINE HRESULT IDestinationStreamFactory_GetDestinationStream(IDestinationStreamFactory* This,IStream **ppstm) { return This->lpVtbl->GetDestinationStream(This,ppstm); } #endif #endif #endif #endif /* __IDestinationStreamFactory_INTERFACE_DEFINED__ */ enum _NMCII_FLAGS { NMCII_NONE = 0x0, NMCII_ITEMS = 0x1, NMCII_FOLDERS = 0x2 }; typedef int NMCII_FLAGS; enum _NMCSAEI_FLAGS { NMCSAEI_SELECT = 0x0, NMCSAEI_EDIT = 0x1 }; typedef int NMCSAEI_FLAGS; /***************************************************************************** * INewMenuClient interface */ #ifndef __INewMenuClient_INTERFACE_DEFINED__ #define __INewMenuClient_INTERFACE_DEFINED__ DEFINE_GUID(IID_INewMenuClient, 0xdcb07fdc, 0x3bb5, 0x451c, 0x90,0xbe, 0x96,0x66,0x44,0xfe,0xd7,0xb0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dcb07fdc-3bb5-451c-90be-966644fed7b0") INewMenuClient : public IUnknown { virtual HRESULT STDMETHODCALLTYPE IncludeItems( NMCII_FLAGS *pflags) = 0; virtual HRESULT STDMETHODCALLTYPE SelectAndEditItem( PCIDLIST_ABSOLUTE pidlItem, NMCSAEI_FLAGS flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INewMenuClient, 0xdcb07fdc, 0x3bb5, 0x451c, 0x90,0xbe, 0x96,0x66,0x44,0xfe,0xd7,0xb0) #endif #else typedef struct INewMenuClientVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INewMenuClient *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INewMenuClient *This); ULONG (STDMETHODCALLTYPE *Release)( INewMenuClient *This); /*** INewMenuClient methods ***/ HRESULT (STDMETHODCALLTYPE *IncludeItems)( INewMenuClient *This, NMCII_FLAGS *pflags); HRESULT (STDMETHODCALLTYPE *SelectAndEditItem)( INewMenuClient *This, PCIDLIST_ABSOLUTE pidlItem, NMCSAEI_FLAGS flags); END_INTERFACE } INewMenuClientVtbl; interface INewMenuClient { CONST_VTBL INewMenuClientVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INewMenuClient_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INewMenuClient_AddRef(This) (This)->lpVtbl->AddRef(This) #define INewMenuClient_Release(This) (This)->lpVtbl->Release(This) /*** INewMenuClient methods ***/ #define INewMenuClient_IncludeItems(This,pflags) (This)->lpVtbl->IncludeItems(This,pflags) #define INewMenuClient_SelectAndEditItem(This,pidlItem,flags) (This)->lpVtbl->SelectAndEditItem(This,pidlItem,flags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INewMenuClient_QueryInterface(INewMenuClient* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INewMenuClient_AddRef(INewMenuClient* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INewMenuClient_Release(INewMenuClient* This) { return This->lpVtbl->Release(This); } /*** INewMenuClient methods ***/ static FORCEINLINE HRESULT INewMenuClient_IncludeItems(INewMenuClient* This,NMCII_FLAGS *pflags) { return This->lpVtbl->IncludeItems(This,pflags); } static FORCEINLINE HRESULT INewMenuClient_SelectAndEditItem(INewMenuClient* This,PCIDLIST_ABSOLUTE pidlItem,NMCSAEI_FLAGS flags) { return This->lpVtbl->SelectAndEditItem(This,pidlItem,flags); } #endif #endif #endif #endif /* __INewMenuClient_INTERFACE_DEFINED__ */ #define SID_SNewMenuClient IID_INewMenuClient DEFINE_GUID(SID_SCommandBarState, 0xB99EAA5C, 0x3850, 0x4400, 0xBC, 0x33, 0x2C, 0xE5, 0x34, 0x04, 0x8B, 0xF8); #if _WIN32_IE >= _WIN32_IE_IE70 /***************************************************************************** * IInitializeWithBindCtx interface */ #ifndef __IInitializeWithBindCtx_INTERFACE_DEFINED__ #define __IInitializeWithBindCtx_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeWithBindCtx, 0x71c0d2bc, 0x726d, 0x45cc, 0xa6,0xc0, 0x2e,0x31,0xc1,0xdb,0x21,0x59); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("71c0d2bc-726d-45cc-a6c0-2e31c1db2159") IInitializeWithBindCtx : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( IBindCtx *pbc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeWithBindCtx, 0x71c0d2bc, 0x726d, 0x45cc, 0xa6,0xc0, 0x2e,0x31,0xc1,0xdb,0x21,0x59) #endif #else typedef struct IInitializeWithBindCtxVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeWithBindCtx *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeWithBindCtx *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeWithBindCtx *This); /*** IInitializeWithBindCtx methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeWithBindCtx *This, IBindCtx *pbc); END_INTERFACE } IInitializeWithBindCtxVtbl; interface IInitializeWithBindCtx { CONST_VTBL IInitializeWithBindCtxVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeWithBindCtx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeWithBindCtx_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeWithBindCtx_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeWithBindCtx methods ***/ #define IInitializeWithBindCtx_Initialize(This,pbc) (This)->lpVtbl->Initialize(This,pbc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeWithBindCtx_QueryInterface(IInitializeWithBindCtx* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeWithBindCtx_AddRef(IInitializeWithBindCtx* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeWithBindCtx_Release(IInitializeWithBindCtx* This) { return This->lpVtbl->Release(This); } /*** IInitializeWithBindCtx methods ***/ static FORCEINLINE HRESULT IInitializeWithBindCtx_Initialize(IInitializeWithBindCtx* This,IBindCtx *pbc) { return This->lpVtbl->Initialize(This,pbc); } #endif #endif #endif #endif /* __IInitializeWithBindCtx_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellItemFilter interface */ #ifndef __IShellItemFilter_INTERFACE_DEFINED__ #define __IShellItemFilter_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellItemFilter, 0x2659b475, 0xeeb8, 0x48b7, 0x8f,0x07, 0xb3,0x78,0x81,0x0f,0x48,0xcf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2659b475-eeb8-48b7-8f07-b378810f48cf") IShellItemFilter : public IUnknown { virtual HRESULT STDMETHODCALLTYPE IncludeItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE GetEnumFlagsForItem( IShellItem *psi, SHCONTF *pgrfFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemFilter, 0x2659b475, 0xeeb8, 0x48b7, 0x8f,0x07, 0xb3,0x78,0x81,0x0f,0x48,0xcf) #endif #else typedef struct IShellItemFilterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemFilter *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemFilter *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemFilter *This); /*** IShellItemFilter methods ***/ HRESULT (STDMETHODCALLTYPE *IncludeItem)( IShellItemFilter *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetEnumFlagsForItem)( IShellItemFilter *This, IShellItem *psi, SHCONTF *pgrfFlags); END_INTERFACE } IShellItemFilterVtbl; interface IShellItemFilter { CONST_VTBL IShellItemFilterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemFilter_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemFilter_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemFilter methods ***/ #define IShellItemFilter_IncludeItem(This,psi) (This)->lpVtbl->IncludeItem(This,psi) #define IShellItemFilter_GetEnumFlagsForItem(This,psi,pgrfFlags) (This)->lpVtbl->GetEnumFlagsForItem(This,psi,pgrfFlags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellItemFilter_QueryInterface(IShellItemFilter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellItemFilter_AddRef(IShellItemFilter* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellItemFilter_Release(IShellItemFilter* This) { return This->lpVtbl->Release(This); } /*** IShellItemFilter methods ***/ static FORCEINLINE HRESULT IShellItemFilter_IncludeItem(IShellItemFilter* This,IShellItem *psi) { return This->lpVtbl->IncludeItem(This,psi); } static FORCEINLINE HRESULT IShellItemFilter_GetEnumFlagsForItem(IShellItemFilter* This,IShellItem *psi,SHCONTF *pgrfFlags) { return This->lpVtbl->GetEnumFlagsForItem(This,psi,pgrfFlags); } #endif #endif #endif #endif /* __IShellItemFilter_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * INameSpaceTreeControl interface */ #ifndef __INameSpaceTreeControl_INTERFACE_DEFINED__ #define __INameSpaceTreeControl_INTERFACE_DEFINED__ enum _NSTCSTYLE { NSTCS_HASEXPANDOS = 0x1, NSTCS_HASLINES = 0x2, NSTCS_SINGLECLICKEXPAND = 0x4, NSTCS_FULLROWSELECT = 0x8, NSTCS_SPRINGEXPAND = 0x10, NSTCS_HORIZONTALSCROLL = 0x20, NSTCS_ROOTHASEXPANDO = 0x40, NSTCS_SHOWSELECTIONALWAYS = 0x80, NSTCS_NOINFOTIP = 0x200, NSTCS_EVENHEIGHT = 0x400, NSTCS_NOREPLACEOPEN = 0x800, NSTCS_DISABLEDRAGDROP = 0x1000, NSTCS_NOORDERSTREAM = 0x2000, NSTCS_RICHTOOLTIP = 0x4000, NSTCS_BORDER = 0x8000, NSTCS_NOEDITLABELS = 0x10000, NSTCS_TABSTOP = 0x20000, NSTCS_FAVORITESMODE = 0x80000, NSTCS_AUTOHSCROLL = 0x100000, NSTCS_FADEINOUTEXPANDOS = 0x200000, NSTCS_EMPTYTEXT = 0x400000, NSTCS_CHECKBOXES = 0x800000, NSTCS_PARTIALCHECKBOXES = 0x1000000, NSTCS_EXCLUSIONCHECKBOXES = 0x2000000, NSTCS_DIMMEDCHECKBOXES = 0x4000000, NSTCS_NOINDENTCHECKS = 0x8000000, NSTCS_ALLOWJUNCTIONS = 0x10000000, NSTCS_SHOWTABSBUTTON = 0x20000000, NSTCS_SHOWDELETEBUTTON = 0x40000000, NSTCS_SHOWREFRESHBUTTON = (int)0x80000000 }; typedef DWORD NSTCSTYLE; enum _NSTCROOTSTYLE { NSTCRS_VISIBLE = 0x0, NSTCRS_HIDDEN = 0x1, NSTCRS_EXPANDED = 0x2 }; typedef DWORD NSTCROOTSTYLE; enum _NSTCITEMSTATE { NSTCIS_NONE = 0x0, NSTCIS_SELECTED = 0x1, NSTCIS_EXPANDED = 0x2, NSTCIS_BOLD = 0x4, NSTCIS_DISABLED = 0x8, NSTCIS_SELECTEDNOEXPAND = 0x10 }; typedef DWORD NSTCITEMSTATE; typedef enum NSTCGNI { NSTCGNI_NEXT = 0, NSTCGNI_NEXTVISIBLE = 1, NSTCGNI_PREV = 2, NSTCGNI_PREVVISIBLE = 3, NSTCGNI_PARENT = 4, NSTCGNI_CHILD = 5, NSTCGNI_FIRSTVISIBLE = 6, NSTCGNI_LASTVISIBLE = 7 } NSTCGNI; DEFINE_GUID(IID_INameSpaceTreeControl, 0x028212a3, 0xb627, 0x47e9, 0x88,0x56, 0xc1,0x42,0x65,0x55,0x4e,0x4f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("028212a3-b627-47e9-8856-c14265554e4f") INameSpaceTreeControl : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwndParent, RECT *prc, NSTCSTYLE nsctsFlags) = 0; virtual HRESULT STDMETHODCALLTYPE TreeAdvise( IUnknown *punk, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE TreeUnadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE AppendRoot( IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif) = 0; virtual HRESULT STDMETHODCALLTYPE InsertRoot( int iIndex, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveRoot( IShellItem *psiRoot) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAllRoots( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetRootItems( IShellItemArray **ppsiaRootItems) = 0; virtual HRESULT STDMETHODCALLTYPE SetItemState( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemState( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE *pnstcisFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedItems( IShellItemArray **psiaItems) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemCustomState( IShellItem *psi, int *piStateNumber) = 0; virtual HRESULT STDMETHODCALLTYPE SetItemCustomState( IShellItem *psi, int iStateNumber) = 0; virtual HRESULT STDMETHODCALLTYPE EnsureItemVisible( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE SetTheme( LPCWSTR pszTheme) = 0; virtual HRESULT STDMETHODCALLTYPE GetNextItem( IShellItem *psi, NSTCGNI nstcgi, IShellItem **ppsiNext) = 0; virtual HRESULT STDMETHODCALLTYPE HitTest( POINT *ppt, IShellItem **ppsiOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemRect( IShellItem *psi, RECT *prect) = 0; virtual HRESULT STDMETHODCALLTYPE CollapseAll( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControl, 0x028212a3, 0xb627, 0x47e9, 0x88,0x56, 0xc1,0x42,0x65,0x55,0x4e,0x4f) #endif #else typedef struct INameSpaceTreeControlVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControl *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControl *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControl *This); /*** INameSpaceTreeControl methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( INameSpaceTreeControl *This, HWND hwndParent, RECT *prc, NSTCSTYLE nsctsFlags); HRESULT (STDMETHODCALLTYPE *TreeAdvise)( INameSpaceTreeControl *This, IUnknown *punk, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *TreeUnadvise)( INameSpaceTreeControl *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *AppendRoot)( INameSpaceTreeControl *This, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *InsertRoot)( INameSpaceTreeControl *This, int iIndex, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *RemoveRoot)( INameSpaceTreeControl *This, IShellItem *psiRoot); HRESULT (STDMETHODCALLTYPE *RemoveAllRoots)( INameSpaceTreeControl *This); HRESULT (STDMETHODCALLTYPE *GetRootItems)( INameSpaceTreeControl *This, IShellItemArray **ppsiaRootItems); HRESULT (STDMETHODCALLTYPE *SetItemState)( INameSpaceTreeControl *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisFlags); HRESULT (STDMETHODCALLTYPE *GetItemState)( INameSpaceTreeControl *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE *pnstcisFlags); HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( INameSpaceTreeControl *This, IShellItemArray **psiaItems); HRESULT (STDMETHODCALLTYPE *GetItemCustomState)( INameSpaceTreeControl *This, IShellItem *psi, int *piStateNumber); HRESULT (STDMETHODCALLTYPE *SetItemCustomState)( INameSpaceTreeControl *This, IShellItem *psi, int iStateNumber); HRESULT (STDMETHODCALLTYPE *EnsureItemVisible)( INameSpaceTreeControl *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetTheme)( INameSpaceTreeControl *This, LPCWSTR pszTheme); HRESULT (STDMETHODCALLTYPE *GetNextItem)( INameSpaceTreeControl *This, IShellItem *psi, NSTCGNI nstcgi, IShellItem **ppsiNext); HRESULT (STDMETHODCALLTYPE *HitTest)( INameSpaceTreeControl *This, POINT *ppt, IShellItem **ppsiOut); HRESULT (STDMETHODCALLTYPE *GetItemRect)( INameSpaceTreeControl *This, IShellItem *psi, RECT *prect); HRESULT (STDMETHODCALLTYPE *CollapseAll)( INameSpaceTreeControl *This); END_INTERFACE } INameSpaceTreeControlVtbl; interface INameSpaceTreeControl { CONST_VTBL INameSpaceTreeControlVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControl_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControl_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControl methods ***/ #define INameSpaceTreeControl_Initialize(This,hwndParent,prc,nsctsFlags) (This)->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags) #define INameSpaceTreeControl_TreeAdvise(This,punk,pdwCookie) (This)->lpVtbl->TreeAdvise(This,punk,pdwCookie) #define INameSpaceTreeControl_TreeUnadvise(This,dwCookie) (This)->lpVtbl->TreeUnadvise(This,dwCookie) #define INameSpaceTreeControl_AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl_InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl_RemoveRoot(This,psiRoot) (This)->lpVtbl->RemoveRoot(This,psiRoot) #define INameSpaceTreeControl_RemoveAllRoots(This) (This)->lpVtbl->RemoveAllRoots(This) #define INameSpaceTreeControl_GetRootItems(This,ppsiaRootItems) (This)->lpVtbl->GetRootItems(This,ppsiaRootItems) #define INameSpaceTreeControl_SetItemState(This,psi,nstcisMask,nstcisFlags) (This)->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags) #define INameSpaceTreeControl_GetItemState(This,psi,nstcisMask,pnstcisFlags) (This)->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags) #define INameSpaceTreeControl_GetSelectedItems(This,psiaItems) (This)->lpVtbl->GetSelectedItems(This,psiaItems) #define INameSpaceTreeControl_GetItemCustomState(This,psi,piStateNumber) (This)->lpVtbl->GetItemCustomState(This,psi,piStateNumber) #define INameSpaceTreeControl_SetItemCustomState(This,psi,iStateNumber) (This)->lpVtbl->SetItemCustomState(This,psi,iStateNumber) #define INameSpaceTreeControl_EnsureItemVisible(This,psi) (This)->lpVtbl->EnsureItemVisible(This,psi) #define INameSpaceTreeControl_SetTheme(This,pszTheme) (This)->lpVtbl->SetTheme(This,pszTheme) #define INameSpaceTreeControl_GetNextItem(This,psi,nstcgi,ppsiNext) (This)->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext) #define INameSpaceTreeControl_HitTest(This,ppt,ppsiOut) (This)->lpVtbl->HitTest(This,ppt,ppsiOut) #define INameSpaceTreeControl_GetItemRect(This,psi,prect) (This)->lpVtbl->GetItemRect(This,psi,prect) #define INameSpaceTreeControl_CollapseAll(This) (This)->lpVtbl->CollapseAll(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControl_QueryInterface(INameSpaceTreeControl* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeControl_AddRef(INameSpaceTreeControl* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeControl_Release(INameSpaceTreeControl* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControl methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControl_Initialize(INameSpaceTreeControl* This,HWND hwndParent,RECT *prc,NSTCSTYLE nsctsFlags) { return This->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags); } static FORCEINLINE HRESULT INameSpaceTreeControl_TreeAdvise(INameSpaceTreeControl* This,IUnknown *punk,DWORD *pdwCookie) { return This->lpVtbl->TreeAdvise(This,punk,pdwCookie); } static FORCEINLINE HRESULT INameSpaceTreeControl_TreeUnadvise(INameSpaceTreeControl* This,DWORD dwCookie) { return This->lpVtbl->TreeUnadvise(This,dwCookie); } static FORCEINLINE HRESULT INameSpaceTreeControl_AppendRoot(INameSpaceTreeControl* This,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif); } static FORCEINLINE HRESULT INameSpaceTreeControl_InsertRoot(INameSpaceTreeControl* This,int iIndex,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif); } static FORCEINLINE HRESULT INameSpaceTreeControl_RemoveRoot(INameSpaceTreeControl* This,IShellItem *psiRoot) { return This->lpVtbl->RemoveRoot(This,psiRoot); } static FORCEINLINE HRESULT INameSpaceTreeControl_RemoveAllRoots(INameSpaceTreeControl* This) { return This->lpVtbl->RemoveAllRoots(This); } static FORCEINLINE HRESULT INameSpaceTreeControl_GetRootItems(INameSpaceTreeControl* This,IShellItemArray **ppsiaRootItems) { return This->lpVtbl->GetRootItems(This,ppsiaRootItems); } static FORCEINLINE HRESULT INameSpaceTreeControl_SetItemState(INameSpaceTreeControl* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisFlags) { return This->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags); } static FORCEINLINE HRESULT INameSpaceTreeControl_GetItemState(INameSpaceTreeControl* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE *pnstcisFlags) { return This->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags); } static FORCEINLINE HRESULT INameSpaceTreeControl_GetSelectedItems(INameSpaceTreeControl* This,IShellItemArray **psiaItems) { return This->lpVtbl->GetSelectedItems(This,psiaItems); } static FORCEINLINE HRESULT INameSpaceTreeControl_GetItemCustomState(INameSpaceTreeControl* This,IShellItem *psi,int *piStateNumber) { return This->lpVtbl->GetItemCustomState(This,psi,piStateNumber); } static FORCEINLINE HRESULT INameSpaceTreeControl_SetItemCustomState(INameSpaceTreeControl* This,IShellItem *psi,int iStateNumber) { return This->lpVtbl->SetItemCustomState(This,psi,iStateNumber); } static FORCEINLINE HRESULT INameSpaceTreeControl_EnsureItemVisible(INameSpaceTreeControl* This,IShellItem *psi) { return This->lpVtbl->EnsureItemVisible(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControl_SetTheme(INameSpaceTreeControl* This,LPCWSTR pszTheme) { return This->lpVtbl->SetTheme(This,pszTheme); } static FORCEINLINE HRESULT INameSpaceTreeControl_GetNextItem(INameSpaceTreeControl* This,IShellItem *psi,NSTCGNI nstcgi,IShellItem **ppsiNext) { return This->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext); } static FORCEINLINE HRESULT INameSpaceTreeControl_HitTest(INameSpaceTreeControl* This,POINT *ppt,IShellItem **ppsiOut) { return This->lpVtbl->HitTest(This,ppt,ppsiOut); } static FORCEINLINE HRESULT INameSpaceTreeControl_GetItemRect(INameSpaceTreeControl* This,IShellItem *psi,RECT *prect) { return This->lpVtbl->GetItemRect(This,psi,prect); } static FORCEINLINE HRESULT INameSpaceTreeControl_CollapseAll(INameSpaceTreeControl* This) { return This->lpVtbl->CollapseAll(This); } #endif #endif #endif #endif /* __INameSpaceTreeControl_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControl2 interface */ #ifndef __INameSpaceTreeControl2_INTERFACE_DEFINED__ #define __INameSpaceTreeControl2_INTERFACE_DEFINED__ typedef enum NSTCSTYLE2 { NSTCS2_DEFAULT = 0x0, NSTCS2_INTERRUPTNOTIFICATIONS = 0x1, NSTCS2_SHOWNULLSPACEMENU = 0x2, NSTCS2_DISPLAYPADDING = 0x4, NSTCS2_DISPLAYPINNEDONLY = 0x8, NTSCS2_NOSINGLETONAUTOEXPAND = 0x10, NTSCS2_NEVERINSERTNONENUMERATED = 0x20 } NSTCSTYLE2; DEFINE_ENUM_FLAG_OPERATORS(NSTCSTYLE2) DEFINE_GUID(IID_INameSpaceTreeControl2, 0x7cc7aed8, 0x290e, 0x49bc, 0x89,0x45, 0xc1,0x40,0x1c,0xc9,0x30,0x6c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7cc7aed8-290e-49bc-8945-c1401cc9306c") INameSpaceTreeControl2 : public INameSpaceTreeControl { virtual HRESULT STDMETHODCALLTYPE SetControlStyle( NSTCSTYLE nstcsMask, NSTCSTYLE nstcsStyle) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlStyle( NSTCSTYLE nstcsMask, NSTCSTYLE *pnstcsStyle) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlStyle2( NSTCSTYLE2 nstcsMask, NSTCSTYLE2 nstcsStyle) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlStyle2( NSTCSTYLE2 nstcsMask, NSTCSTYLE2 *pnstcsStyle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControl2, 0x7cc7aed8, 0x290e, 0x49bc, 0x89,0x45, 0xc1,0x40,0x1c,0xc9,0x30,0x6c) #endif #else typedef struct INameSpaceTreeControl2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControl2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControl2 *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControl2 *This); /*** INameSpaceTreeControl methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( INameSpaceTreeControl2 *This, HWND hwndParent, RECT *prc, NSTCSTYLE nsctsFlags); HRESULT (STDMETHODCALLTYPE *TreeAdvise)( INameSpaceTreeControl2 *This, IUnknown *punk, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *TreeUnadvise)( INameSpaceTreeControl2 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *AppendRoot)( INameSpaceTreeControl2 *This, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *InsertRoot)( INameSpaceTreeControl2 *This, int iIndex, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *RemoveRoot)( INameSpaceTreeControl2 *This, IShellItem *psiRoot); HRESULT (STDMETHODCALLTYPE *RemoveAllRoots)( INameSpaceTreeControl2 *This); HRESULT (STDMETHODCALLTYPE *GetRootItems)( INameSpaceTreeControl2 *This, IShellItemArray **ppsiaRootItems); HRESULT (STDMETHODCALLTYPE *SetItemState)( INameSpaceTreeControl2 *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisFlags); HRESULT (STDMETHODCALLTYPE *GetItemState)( INameSpaceTreeControl2 *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE *pnstcisFlags); HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( INameSpaceTreeControl2 *This, IShellItemArray **psiaItems); HRESULT (STDMETHODCALLTYPE *GetItemCustomState)( INameSpaceTreeControl2 *This, IShellItem *psi, int *piStateNumber); HRESULT (STDMETHODCALLTYPE *SetItemCustomState)( INameSpaceTreeControl2 *This, IShellItem *psi, int iStateNumber); HRESULT (STDMETHODCALLTYPE *EnsureItemVisible)( INameSpaceTreeControl2 *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetTheme)( INameSpaceTreeControl2 *This, LPCWSTR pszTheme); HRESULT (STDMETHODCALLTYPE *GetNextItem)( INameSpaceTreeControl2 *This, IShellItem *psi, NSTCGNI nstcgi, IShellItem **ppsiNext); HRESULT (STDMETHODCALLTYPE *HitTest)( INameSpaceTreeControl2 *This, POINT *ppt, IShellItem **ppsiOut); HRESULT (STDMETHODCALLTYPE *GetItemRect)( INameSpaceTreeControl2 *This, IShellItem *psi, RECT *prect); HRESULT (STDMETHODCALLTYPE *CollapseAll)( INameSpaceTreeControl2 *This); /*** INameSpaceTreeControl2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetControlStyle)( INameSpaceTreeControl2 *This, NSTCSTYLE nstcsMask, NSTCSTYLE nstcsStyle); HRESULT (STDMETHODCALLTYPE *GetControlStyle)( INameSpaceTreeControl2 *This, NSTCSTYLE nstcsMask, NSTCSTYLE *pnstcsStyle); HRESULT (STDMETHODCALLTYPE *SetControlStyle2)( INameSpaceTreeControl2 *This, NSTCSTYLE2 nstcsMask, NSTCSTYLE2 nstcsStyle); HRESULT (STDMETHODCALLTYPE *GetControlStyle2)( INameSpaceTreeControl2 *This, NSTCSTYLE2 nstcsMask, NSTCSTYLE2 *pnstcsStyle); END_INTERFACE } INameSpaceTreeControl2Vtbl; interface INameSpaceTreeControl2 { CONST_VTBL INameSpaceTreeControl2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControl2_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControl2_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControl methods ***/ #define INameSpaceTreeControl2_Initialize(This,hwndParent,prc,nsctsFlags) (This)->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags) #define INameSpaceTreeControl2_TreeAdvise(This,punk,pdwCookie) (This)->lpVtbl->TreeAdvise(This,punk,pdwCookie) #define INameSpaceTreeControl2_TreeUnadvise(This,dwCookie) (This)->lpVtbl->TreeUnadvise(This,dwCookie) #define INameSpaceTreeControl2_AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl2_InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl2_RemoveRoot(This,psiRoot) (This)->lpVtbl->RemoveRoot(This,psiRoot) #define INameSpaceTreeControl2_RemoveAllRoots(This) (This)->lpVtbl->RemoveAllRoots(This) #define INameSpaceTreeControl2_GetRootItems(This,ppsiaRootItems) (This)->lpVtbl->GetRootItems(This,ppsiaRootItems) #define INameSpaceTreeControl2_SetItemState(This,psi,nstcisMask,nstcisFlags) (This)->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags) #define INameSpaceTreeControl2_GetItemState(This,psi,nstcisMask,pnstcisFlags) (This)->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags) #define INameSpaceTreeControl2_GetSelectedItems(This,psiaItems) (This)->lpVtbl->GetSelectedItems(This,psiaItems) #define INameSpaceTreeControl2_GetItemCustomState(This,psi,piStateNumber) (This)->lpVtbl->GetItemCustomState(This,psi,piStateNumber) #define INameSpaceTreeControl2_SetItemCustomState(This,psi,iStateNumber) (This)->lpVtbl->SetItemCustomState(This,psi,iStateNumber) #define INameSpaceTreeControl2_EnsureItemVisible(This,psi) (This)->lpVtbl->EnsureItemVisible(This,psi) #define INameSpaceTreeControl2_SetTheme(This,pszTheme) (This)->lpVtbl->SetTheme(This,pszTheme) #define INameSpaceTreeControl2_GetNextItem(This,psi,nstcgi,ppsiNext) (This)->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext) #define INameSpaceTreeControl2_HitTest(This,ppt,ppsiOut) (This)->lpVtbl->HitTest(This,ppt,ppsiOut) #define INameSpaceTreeControl2_GetItemRect(This,psi,prect) (This)->lpVtbl->GetItemRect(This,psi,prect) #define INameSpaceTreeControl2_CollapseAll(This) (This)->lpVtbl->CollapseAll(This) /*** INameSpaceTreeControl2 methods ***/ #define INameSpaceTreeControl2_SetControlStyle(This,nstcsMask,nstcsStyle) (This)->lpVtbl->SetControlStyle(This,nstcsMask,nstcsStyle) #define INameSpaceTreeControl2_GetControlStyle(This,nstcsMask,pnstcsStyle) (This)->lpVtbl->GetControlStyle(This,nstcsMask,pnstcsStyle) #define INameSpaceTreeControl2_SetControlStyle2(This,nstcsMask,nstcsStyle) (This)->lpVtbl->SetControlStyle2(This,nstcsMask,nstcsStyle) #define INameSpaceTreeControl2_GetControlStyle2(This,nstcsMask,pnstcsStyle) (This)->lpVtbl->GetControlStyle2(This,nstcsMask,pnstcsStyle) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControl2_QueryInterface(INameSpaceTreeControl2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeControl2_AddRef(INameSpaceTreeControl2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeControl2_Release(INameSpaceTreeControl2* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControl methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControl2_Initialize(INameSpaceTreeControl2* This,HWND hwndParent,RECT *prc,NSTCSTYLE nsctsFlags) { return This->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags); } static FORCEINLINE HRESULT INameSpaceTreeControl2_TreeAdvise(INameSpaceTreeControl2* This,IUnknown *punk,DWORD *pdwCookie) { return This->lpVtbl->TreeAdvise(This,punk,pdwCookie); } static FORCEINLINE HRESULT INameSpaceTreeControl2_TreeUnadvise(INameSpaceTreeControl2* This,DWORD dwCookie) { return This->lpVtbl->TreeUnadvise(This,dwCookie); } static FORCEINLINE HRESULT INameSpaceTreeControl2_AppendRoot(INameSpaceTreeControl2* This,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif); } static FORCEINLINE HRESULT INameSpaceTreeControl2_InsertRoot(INameSpaceTreeControl2* This,int iIndex,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif); } static FORCEINLINE HRESULT INameSpaceTreeControl2_RemoveRoot(INameSpaceTreeControl2* This,IShellItem *psiRoot) { return This->lpVtbl->RemoveRoot(This,psiRoot); } static FORCEINLINE HRESULT INameSpaceTreeControl2_RemoveAllRoots(INameSpaceTreeControl2* This) { return This->lpVtbl->RemoveAllRoots(This); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetRootItems(INameSpaceTreeControl2* This,IShellItemArray **ppsiaRootItems) { return This->lpVtbl->GetRootItems(This,ppsiaRootItems); } static FORCEINLINE HRESULT INameSpaceTreeControl2_SetItemState(INameSpaceTreeControl2* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisFlags) { return This->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetItemState(INameSpaceTreeControl2* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE *pnstcisFlags) { return This->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetSelectedItems(INameSpaceTreeControl2* This,IShellItemArray **psiaItems) { return This->lpVtbl->GetSelectedItems(This,psiaItems); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetItemCustomState(INameSpaceTreeControl2* This,IShellItem *psi,int *piStateNumber) { return This->lpVtbl->GetItemCustomState(This,psi,piStateNumber); } static FORCEINLINE HRESULT INameSpaceTreeControl2_SetItemCustomState(INameSpaceTreeControl2* This,IShellItem *psi,int iStateNumber) { return This->lpVtbl->SetItemCustomState(This,psi,iStateNumber); } static FORCEINLINE HRESULT INameSpaceTreeControl2_EnsureItemVisible(INameSpaceTreeControl2* This,IShellItem *psi) { return This->lpVtbl->EnsureItemVisible(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControl2_SetTheme(INameSpaceTreeControl2* This,LPCWSTR pszTheme) { return This->lpVtbl->SetTheme(This,pszTheme); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetNextItem(INameSpaceTreeControl2* This,IShellItem *psi,NSTCGNI nstcgi,IShellItem **ppsiNext) { return This->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext); } static FORCEINLINE HRESULT INameSpaceTreeControl2_HitTest(INameSpaceTreeControl2* This,POINT *ppt,IShellItem **ppsiOut) { return This->lpVtbl->HitTest(This,ppt,ppsiOut); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetItemRect(INameSpaceTreeControl2* This,IShellItem *psi,RECT *prect) { return This->lpVtbl->GetItemRect(This,psi,prect); } static FORCEINLINE HRESULT INameSpaceTreeControl2_CollapseAll(INameSpaceTreeControl2* This) { return This->lpVtbl->CollapseAll(This); } /*** INameSpaceTreeControl2 methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControl2_SetControlStyle(INameSpaceTreeControl2* This,NSTCSTYLE nstcsMask,NSTCSTYLE nstcsStyle) { return This->lpVtbl->SetControlStyle(This,nstcsMask,nstcsStyle); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetControlStyle(INameSpaceTreeControl2* This,NSTCSTYLE nstcsMask,NSTCSTYLE *pnstcsStyle) { return This->lpVtbl->GetControlStyle(This,nstcsMask,pnstcsStyle); } static FORCEINLINE HRESULT INameSpaceTreeControl2_SetControlStyle2(INameSpaceTreeControl2* This,NSTCSTYLE2 nstcsMask,NSTCSTYLE2 nstcsStyle) { return This->lpVtbl->SetControlStyle2(This,nstcsMask,nstcsStyle); } static FORCEINLINE HRESULT INameSpaceTreeControl2_GetControlStyle2(INameSpaceTreeControl2* This,NSTCSTYLE2 nstcsMask,NSTCSTYLE2 *pnstcsStyle) { return This->lpVtbl->GetControlStyle2(This,nstcsMask,pnstcsStyle); } #endif #endif #endif #endif /* __INameSpaceTreeControl2_INTERFACE_DEFINED__ */ #define NSTCS2_ALLMASK (NSTCS2_INTERRUPTNOTIFICATIONS | NSTCS2_SHOWNULLSPACEMENU | NSTCS2_DISPLAYPADDING) #define SID_SNavigationPane IID_INameSpaceTreeControl #define ISLBUTTON(x) (NSTCECT_LBUTTON == ((x) & NSTCECT_BUTTON)) #define ISMBUTTON(x) (NSTCECT_MBUTTON == ((x) & NSTCECT_BUTTON)) #define ISRBUTTON(x) (NSTCECT_RBUTTON == ((x) & NSTCECT_BUTTON)) #define ISDBLCLICK(x) (NSTCECT_DBLCLICK == ((x) & NSTCECT_DBLCLICK)) /***************************************************************************** * INameSpaceTreeControlEvents interface */ #ifndef __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ #define __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ enum _NSTCEHITTEST { NSTCEHT_NOWHERE = 0x1, NSTCEHT_ONITEMICON = 0x2, NSTCEHT_ONITEMLABEL = 0x4, NSTCEHT_ONITEMINDENT = 0x8, NSTCEHT_ONITEMBUTTON = 0x10, NSTCEHT_ONITEMRIGHT = 0x20, NSTCEHT_ONITEMSTATEICON = 0x40, NSTCEHT_ONITEM = 0x46, NSTCEHT_ONITEMTABBUTTON = 0x1000 }; typedef DWORD NSTCEHITTEST; enum _NSTCECLICKTYPE { NSTCECT_LBUTTON = 0x1, NSTCECT_MBUTTON = 0x2, NSTCECT_RBUTTON = 0x3, NSTCECT_BUTTON = 0x3, NSTCECT_DBLCLICK = 0x4 }; typedef DWORD NSTCECLICKTYPE; DEFINE_GUID(IID_INameSpaceTreeControlEvents, 0x93d77985, 0xb3d8, 0x4484, 0x83,0x18, 0x67,0x2c,0xdd,0xa0,0x02,0xce); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("93d77985-b3d8-4484-8318-672cdda002ce") INameSpaceTreeControlEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnItemClick( IShellItem *psi, NSTCEHITTEST nstceHitTest, NSTCECLICKTYPE nstceClickType) = 0; virtual HRESULT STDMETHODCALLTYPE OnPropertyItemCommit( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemStateChanging( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemStateChanged( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState) = 0; virtual HRESULT STDMETHODCALLTYPE OnSelectionChanged( IShellItemArray *psiaSelection) = 0; virtual HRESULT STDMETHODCALLTYPE OnKeyboardInput( UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeExpand( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnAfterExpand( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeginLabelEdit( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnEndLabelEdit( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnGetToolTip( IShellItem *psi, LPWSTR pszTip, int cchTip) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeItemDelete( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemAdded( IShellItem *psi, WINBOOL fIsRoot) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemDeleted( IShellItem *psi, WINBOOL fIsRoot) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeContextMenu( IShellItem *psi, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE OnAfterContextMenu( IShellItem *psi, IContextMenu *pcmIn, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeStateImageChange( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnGetDefaultIconIndex( IShellItem *psi, int *piDefaultIcon, int *piOpenIcon) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlEvents, 0x93d77985, 0xb3d8, 0x4484, 0x83,0x18, 0x67,0x2c,0xdd,0xa0,0x02,0xce) #endif #else typedef struct INameSpaceTreeControlEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlEvents *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlEvents *This); /*** INameSpaceTreeControlEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnItemClick)( INameSpaceTreeControlEvents *This, IShellItem *psi, NSTCEHITTEST nstceHitTest, NSTCECLICKTYPE nstceClickType); HRESULT (STDMETHODCALLTYPE *OnPropertyItemCommit)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnItemStateChanging)( INameSpaceTreeControlEvents *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState); HRESULT (STDMETHODCALLTYPE *OnItemStateChanged)( INameSpaceTreeControlEvents *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState); HRESULT (STDMETHODCALLTYPE *OnSelectionChanged)( INameSpaceTreeControlEvents *This, IShellItemArray *psiaSelection); HRESULT (STDMETHODCALLTYPE *OnKeyboardInput)( INameSpaceTreeControlEvents *This, UINT uMsg, WPARAM wParam, LPARAM lParam); HRESULT (STDMETHODCALLTYPE *OnBeforeExpand)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnAfterExpand)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnBeginLabelEdit)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnEndLabelEdit)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnGetToolTip)( INameSpaceTreeControlEvents *This, IShellItem *psi, LPWSTR pszTip, int cchTip); HRESULT (STDMETHODCALLTYPE *OnBeforeItemDelete)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnItemAdded)( INameSpaceTreeControlEvents *This, IShellItem *psi, WINBOOL fIsRoot); HRESULT (STDMETHODCALLTYPE *OnItemDeleted)( INameSpaceTreeControlEvents *This, IShellItem *psi, WINBOOL fIsRoot); HRESULT (STDMETHODCALLTYPE *OnBeforeContextMenu)( INameSpaceTreeControlEvents *This, IShellItem *psi, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *OnAfterContextMenu)( INameSpaceTreeControlEvents *This, IShellItem *psi, IContextMenu *pcmIn, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *OnBeforeStateImageChange)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnGetDefaultIconIndex)( INameSpaceTreeControlEvents *This, IShellItem *psi, int *piDefaultIcon, int *piOpenIcon); END_INTERFACE } INameSpaceTreeControlEventsVtbl; interface INameSpaceTreeControlEvents { CONST_VTBL INameSpaceTreeControlEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlEvents_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlEvents methods ***/ #define INameSpaceTreeControlEvents_OnItemClick(This,psi,nstceHitTest,nstceClickType) (This)->lpVtbl->OnItemClick(This,psi,nstceHitTest,nstceClickType) #define INameSpaceTreeControlEvents_OnPropertyItemCommit(This,psi) (This)->lpVtbl->OnPropertyItemCommit(This,psi) #define INameSpaceTreeControlEvents_OnItemStateChanging(This,psi,nstcisMask,nstcisState) (This)->lpVtbl->OnItemStateChanging(This,psi,nstcisMask,nstcisState) #define INameSpaceTreeControlEvents_OnItemStateChanged(This,psi,nstcisMask,nstcisState) (This)->lpVtbl->OnItemStateChanged(This,psi,nstcisMask,nstcisState) #define INameSpaceTreeControlEvents_OnSelectionChanged(This,psiaSelection) (This)->lpVtbl->OnSelectionChanged(This,psiaSelection) #define INameSpaceTreeControlEvents_OnKeyboardInput(This,uMsg,wParam,lParam) (This)->lpVtbl->OnKeyboardInput(This,uMsg,wParam,lParam) #define INameSpaceTreeControlEvents_OnBeforeExpand(This,psi) (This)->lpVtbl->OnBeforeExpand(This,psi) #define INameSpaceTreeControlEvents_OnAfterExpand(This,psi) (This)->lpVtbl->OnAfterExpand(This,psi) #define INameSpaceTreeControlEvents_OnBeginLabelEdit(This,psi) (This)->lpVtbl->OnBeginLabelEdit(This,psi) #define INameSpaceTreeControlEvents_OnEndLabelEdit(This,psi) (This)->lpVtbl->OnEndLabelEdit(This,psi) #define INameSpaceTreeControlEvents_OnGetToolTip(This,psi,pszTip,cchTip) (This)->lpVtbl->OnGetToolTip(This,psi,pszTip,cchTip) #define INameSpaceTreeControlEvents_OnBeforeItemDelete(This,psi) (This)->lpVtbl->OnBeforeItemDelete(This,psi) #define INameSpaceTreeControlEvents_OnItemAdded(This,psi,fIsRoot) (This)->lpVtbl->OnItemAdded(This,psi,fIsRoot) #define INameSpaceTreeControlEvents_OnItemDeleted(This,psi,fIsRoot) (This)->lpVtbl->OnItemDeleted(This,psi,fIsRoot) #define INameSpaceTreeControlEvents_OnBeforeContextMenu(This,psi,riid,ppv) (This)->lpVtbl->OnBeforeContextMenu(This,psi,riid,ppv) #define INameSpaceTreeControlEvents_OnAfterContextMenu(This,psi,pcmIn,riid,ppv) (This)->lpVtbl->OnAfterContextMenu(This,psi,pcmIn,riid,ppv) #define INameSpaceTreeControlEvents_OnBeforeStateImageChange(This,psi) (This)->lpVtbl->OnBeforeStateImageChange(This,psi) #define INameSpaceTreeControlEvents_OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon) (This)->lpVtbl->OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlEvents_QueryInterface(INameSpaceTreeControlEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeControlEvents_AddRef(INameSpaceTreeControlEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeControlEvents_Release(INameSpaceTreeControlEvents* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlEvents methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemClick(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCEHITTEST nstceHitTest,NSTCECLICKTYPE nstceClickType) { return This->lpVtbl->OnItemClick(This,psi,nstceHitTest,nstceClickType); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnPropertyItemCommit(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnPropertyItemCommit(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemStateChanging(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisState) { return This->lpVtbl->OnItemStateChanging(This,psi,nstcisMask,nstcisState); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemStateChanged(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisState) { return This->lpVtbl->OnItemStateChanged(This,psi,nstcisMask,nstcisState); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnSelectionChanged(INameSpaceTreeControlEvents* This,IShellItemArray *psiaSelection) { return This->lpVtbl->OnSelectionChanged(This,psiaSelection); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnKeyboardInput(INameSpaceTreeControlEvents* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->OnKeyboardInput(This,uMsg,wParam,lParam); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeExpand(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeforeExpand(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnAfterExpand(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnAfterExpand(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeginLabelEdit(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeginLabelEdit(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnEndLabelEdit(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnEndLabelEdit(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnGetToolTip(INameSpaceTreeControlEvents* This,IShellItem *psi,LPWSTR pszTip,int cchTip) { return This->lpVtbl->OnGetToolTip(This,psi,pszTip,cchTip); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeItemDelete(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeforeItemDelete(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemAdded(INameSpaceTreeControlEvents* This,IShellItem *psi,WINBOOL fIsRoot) { return This->lpVtbl->OnItemAdded(This,psi,fIsRoot); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemDeleted(INameSpaceTreeControlEvents* This,IShellItem *psi,WINBOOL fIsRoot) { return This->lpVtbl->OnItemDeleted(This,psi,fIsRoot); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeContextMenu(INameSpaceTreeControlEvents* This,IShellItem *psi,REFIID riid,void **ppv) { return This->lpVtbl->OnBeforeContextMenu(This,psi,riid,ppv); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnAfterContextMenu(INameSpaceTreeControlEvents* This,IShellItem *psi,IContextMenu *pcmIn,REFIID riid,void **ppv) { return This->lpVtbl->OnAfterContextMenu(This,psi,pcmIn,riid,ppv); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeStateImageChange(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeforeStateImageChange(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnGetDefaultIconIndex(INameSpaceTreeControlEvents* This,IShellItem *psi,int *piDefaultIcon,int *piOpenIcon) { return This->lpVtbl->OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon); } #endif #endif #endif #endif /* __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ */ #define NSTCDHPOS_ONTOP -1 /***************************************************************************** * INameSpaceTreeControlDropHandler interface */ #ifndef __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ #define __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_INameSpaceTreeControlDropHandler, 0xf9c665d6, 0xc2f2, 0x4c19, 0xbf,0x33, 0x83,0x22,0xd7,0x35,0x2f,0x51); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f9c665d6-c2f2-4c19-bf33-8322d7352f51") INameSpaceTreeControlDropHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnDragEnter( IShellItem *psiOver, IShellItemArray *psiaData, WINBOOL fOutsideSource, DWORD grfKeyState, DWORD *pdwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE OnDragOver( IShellItem *psiOver, IShellItemArray *psiaData, DWORD grfKeyState, DWORD *pdwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE OnDragPosition( IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition) = 0; virtual HRESULT STDMETHODCALLTYPE OnDrop( IShellItem *psiOver, IShellItemArray *psiaData, int iPosition, DWORD grfKeyState, DWORD *pdwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE OnDropPosition( IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition) = 0; virtual HRESULT STDMETHODCALLTYPE OnDragLeave( IShellItem *psiOver) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlDropHandler, 0xf9c665d6, 0xc2f2, 0x4c19, 0xbf,0x33, 0x83,0x22,0xd7,0x35,0x2f,0x51) #endif #else typedef struct INameSpaceTreeControlDropHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlDropHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlDropHandler *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlDropHandler *This); /*** INameSpaceTreeControlDropHandler methods ***/ HRESULT (STDMETHODCALLTYPE *OnDragEnter)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, WINBOOL fOutsideSource, DWORD grfKeyState, DWORD *pdwEffect); HRESULT (STDMETHODCALLTYPE *OnDragOver)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, DWORD grfKeyState, DWORD *pdwEffect); HRESULT (STDMETHODCALLTYPE *OnDragPosition)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition); HRESULT (STDMETHODCALLTYPE *OnDrop)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, int iPosition, DWORD grfKeyState, DWORD *pdwEffect); HRESULT (STDMETHODCALLTYPE *OnDropPosition)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition); HRESULT (STDMETHODCALLTYPE *OnDragLeave)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver); END_INTERFACE } INameSpaceTreeControlDropHandlerVtbl; interface INameSpaceTreeControlDropHandler { CONST_VTBL INameSpaceTreeControlDropHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlDropHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlDropHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlDropHandler_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlDropHandler methods ***/ #define INameSpaceTreeControlDropHandler_OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect) (This)->lpVtbl->OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect) #define INameSpaceTreeControlDropHandler_OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect) (This)->lpVtbl->OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect) #define INameSpaceTreeControlDropHandler_OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) (This)->lpVtbl->OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) #define INameSpaceTreeControlDropHandler_OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect) (This)->lpVtbl->OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect) #define INameSpaceTreeControlDropHandler_OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) (This)->lpVtbl->OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) #define INameSpaceTreeControlDropHandler_OnDragLeave(This,psiOver) (This)->lpVtbl->OnDragLeave(This,psiOver) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_QueryInterface(INameSpaceTreeControlDropHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeControlDropHandler_AddRef(INameSpaceTreeControlDropHandler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeControlDropHandler_Release(INameSpaceTreeControlDropHandler* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlDropHandler methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragEnter(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,WINBOOL fOutsideSource,DWORD grfKeyState,DWORD *pdwEffect) { return This->lpVtbl->OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect); } static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragOver(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,DWORD grfKeyState,DWORD *pdwEffect) { return This->lpVtbl->OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect); } static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragPosition(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iNewPosition,int iOldPosition) { return This->lpVtbl->OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition); } static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDrop(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iPosition,DWORD grfKeyState,DWORD *pdwEffect) { return This->lpVtbl->OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect); } static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDropPosition(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iNewPosition,int iOldPosition) { return This->lpVtbl->OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition); } static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragLeave(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver) { return This->lpVtbl->OnDragLeave(This,psiOver); } #endif #endif #endif #endif /* __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeAccessible interface */ #ifndef __INameSpaceTreeAccessible_INTERFACE_DEFINED__ #define __INameSpaceTreeAccessible_INTERFACE_DEFINED__ DEFINE_GUID(IID_INameSpaceTreeAccessible, 0x71f312de, 0x43ed, 0x4190, 0x84,0x77, 0xe9,0x53,0x6b,0x82,0x35,0x0b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("71f312de-43ed-4190-8477-e9536b82350b") INameSpaceTreeAccessible : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnGetDefaultAccessibilityAction( IShellItem *psi, BSTR *pbstrDefaultAction) = 0; virtual HRESULT STDMETHODCALLTYPE OnDoDefaultAccessibilityAction( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnGetAccessibilityRole( IShellItem *psi, VARIANT *pvarRole) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeAccessible, 0x71f312de, 0x43ed, 0x4190, 0x84,0x77, 0xe9,0x53,0x6b,0x82,0x35,0x0b) #endif #else typedef struct INameSpaceTreeAccessibleVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeAccessible *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeAccessible *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeAccessible *This); /*** INameSpaceTreeAccessible methods ***/ HRESULT (STDMETHODCALLTYPE *OnGetDefaultAccessibilityAction)( INameSpaceTreeAccessible *This, IShellItem *psi, BSTR *pbstrDefaultAction); HRESULT (STDMETHODCALLTYPE *OnDoDefaultAccessibilityAction)( INameSpaceTreeAccessible *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnGetAccessibilityRole)( INameSpaceTreeAccessible *This, IShellItem *psi, VARIANT *pvarRole); END_INTERFACE } INameSpaceTreeAccessibleVtbl; interface INameSpaceTreeAccessible { CONST_VTBL INameSpaceTreeAccessibleVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeAccessible_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeAccessible_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeAccessible_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeAccessible methods ***/ #define INameSpaceTreeAccessible_OnGetDefaultAccessibilityAction(This,psi,pbstrDefaultAction) (This)->lpVtbl->OnGetDefaultAccessibilityAction(This,psi,pbstrDefaultAction) #define INameSpaceTreeAccessible_OnDoDefaultAccessibilityAction(This,psi) (This)->lpVtbl->OnDoDefaultAccessibilityAction(This,psi) #define INameSpaceTreeAccessible_OnGetAccessibilityRole(This,psi,pvarRole) (This)->lpVtbl->OnGetAccessibilityRole(This,psi,pvarRole) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeAccessible_QueryInterface(INameSpaceTreeAccessible* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeAccessible_AddRef(INameSpaceTreeAccessible* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeAccessible_Release(INameSpaceTreeAccessible* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeAccessible methods ***/ static FORCEINLINE HRESULT INameSpaceTreeAccessible_OnGetDefaultAccessibilityAction(INameSpaceTreeAccessible* This,IShellItem *psi,BSTR *pbstrDefaultAction) { return This->lpVtbl->OnGetDefaultAccessibilityAction(This,psi,pbstrDefaultAction); } static FORCEINLINE HRESULT INameSpaceTreeAccessible_OnDoDefaultAccessibilityAction(INameSpaceTreeAccessible* This,IShellItem *psi) { return This->lpVtbl->OnDoDefaultAccessibilityAction(This,psi); } static FORCEINLINE HRESULT INameSpaceTreeAccessible_OnGetAccessibilityRole(INameSpaceTreeAccessible* This,IShellItem *psi,VARIANT *pvarRole) { return This->lpVtbl->OnGetAccessibilityRole(This,psi,pvarRole); } #endif #endif #endif #endif /* __INameSpaceTreeAccessible_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControlCustomDraw interface */ #ifndef __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ #define __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ typedef struct NSTCCUSTOMDRAW { IShellItem *psi; UINT uItemState; NSTCITEMSTATE nstcis; LPCWSTR pszText; int iImage; HIMAGELIST himl; int iLevel; int iIndent; } NSTCCUSTOMDRAW; DEFINE_GUID(IID_INameSpaceTreeControlCustomDraw, 0x2d3ba758, 0x33ee, 0x42d5, 0xbb,0x7b, 0x5f,0x34,0x31,0xd8,0x6c,0x78); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2d3ba758-33ee-42d5-bb7b-5f3431d86c78") INameSpaceTreeControlCustomDraw : public IUnknown { virtual HRESULT STDMETHODCALLTYPE PrePaint( HDC hdc, RECT *prc, LRESULT *plres) = 0; virtual HRESULT STDMETHODCALLTYPE PostPaint( HDC hdc, RECT *prc) = 0; virtual HRESULT STDMETHODCALLTYPE ItemPrePaint( HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem, COLORREF *pclrText, COLORREF *pclrTextBk, LRESULT *plres) = 0; virtual HRESULT STDMETHODCALLTYPE ItemPostPaint( HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlCustomDraw, 0x2d3ba758, 0x33ee, 0x42d5, 0xbb,0x7b, 0x5f,0x34,0x31,0xd8,0x6c,0x78) #endif #else typedef struct INameSpaceTreeControlCustomDrawVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlCustomDraw *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlCustomDraw *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlCustomDraw *This); /*** INameSpaceTreeControlCustomDraw methods ***/ HRESULT (STDMETHODCALLTYPE *PrePaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc, LRESULT *plres); HRESULT (STDMETHODCALLTYPE *PostPaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc); HRESULT (STDMETHODCALLTYPE *ItemPrePaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem, COLORREF *pclrText, COLORREF *pclrTextBk, LRESULT *plres); HRESULT (STDMETHODCALLTYPE *ItemPostPaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem); END_INTERFACE } INameSpaceTreeControlCustomDrawVtbl; interface INameSpaceTreeControlCustomDraw { CONST_VTBL INameSpaceTreeControlCustomDrawVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlCustomDraw_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlCustomDraw_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlCustomDraw_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlCustomDraw methods ***/ #define INameSpaceTreeControlCustomDraw_PrePaint(This,hdc,prc,plres) (This)->lpVtbl->PrePaint(This,hdc,prc,plres) #define INameSpaceTreeControlCustomDraw_PostPaint(This,hdc,prc) (This)->lpVtbl->PostPaint(This,hdc,prc) #define INameSpaceTreeControlCustomDraw_ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres) (This)->lpVtbl->ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres) #define INameSpaceTreeControlCustomDraw_ItemPostPaint(This,hdc,prc,pnstccdItem) (This)->lpVtbl->ItemPostPaint(This,hdc,prc,pnstccdItem) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_QueryInterface(INameSpaceTreeControlCustomDraw* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeControlCustomDraw_AddRef(INameSpaceTreeControlCustomDraw* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeControlCustomDraw_Release(INameSpaceTreeControlCustomDraw* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlCustomDraw methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_PrePaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,LRESULT *plres) { return This->lpVtbl->PrePaint(This,hdc,prc,plres); } static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_PostPaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc) { return This->lpVtbl->PostPaint(This,hdc,prc); } static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_ItemPrePaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,NSTCCUSTOMDRAW *pnstccdItem,COLORREF *pclrText,COLORREF *pclrTextBk,LRESULT *plres) { return This->lpVtbl->ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres); } static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_ItemPostPaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,NSTCCUSTOMDRAW *pnstccdItem) { return This->lpVtbl->ItemPostPaint(This,hdc,prc,pnstccdItem); } #endif #endif #endif #endif /* __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * INameSpaceTreeControlFolderCapabilities interface */ #ifndef __INameSpaceTreeControlFolderCapabilities_INTERFACE_DEFINED__ #define __INameSpaceTreeControlFolderCapabilities_INTERFACE_DEFINED__ typedef enum NSTCFOLDERCAPABILITIES { NSTCFC_NONE = 0x0, NSTCFC_PINNEDITEMFILTERING = 0x1, NSTCFC_DELAY_REGISTER_NOTIFY = 0x2 } NSTCFOLDERCAPABILITIES; DEFINE_ENUM_FLAG_OPERATORS(NSTCFOLDERCAPABILITIES) DEFINE_GUID(IID_INameSpaceTreeControlFolderCapabilities, 0xe9701183, 0xe6b3, 0x4ff2, 0x85,0x68, 0x81,0x36,0x15,0xfe,0xc7,0xbe); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e9701183-e6b3-4ff2-8568-813615fec7be") INameSpaceTreeControlFolderCapabilities : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetFolderCapabilities( NSTCFOLDERCAPABILITIES nfcMask, NSTCFOLDERCAPABILITIES *pnfcValue) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlFolderCapabilities, 0xe9701183, 0xe6b3, 0x4ff2, 0x85,0x68, 0x81,0x36,0x15,0xfe,0xc7,0xbe) #endif #else typedef struct INameSpaceTreeControlFolderCapabilitiesVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlFolderCapabilities *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlFolderCapabilities *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlFolderCapabilities *This); /*** INameSpaceTreeControlFolderCapabilities methods ***/ HRESULT (STDMETHODCALLTYPE *GetFolderCapabilities)( INameSpaceTreeControlFolderCapabilities *This, NSTCFOLDERCAPABILITIES nfcMask, NSTCFOLDERCAPABILITIES *pnfcValue); END_INTERFACE } INameSpaceTreeControlFolderCapabilitiesVtbl; interface INameSpaceTreeControlFolderCapabilities { CONST_VTBL INameSpaceTreeControlFolderCapabilitiesVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlFolderCapabilities_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlFolderCapabilities_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlFolderCapabilities_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlFolderCapabilities methods ***/ #define INameSpaceTreeControlFolderCapabilities_GetFolderCapabilities(This,nfcMask,pnfcValue) (This)->lpVtbl->GetFolderCapabilities(This,nfcMask,pnfcValue) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlFolderCapabilities_QueryInterface(INameSpaceTreeControlFolderCapabilities* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INameSpaceTreeControlFolderCapabilities_AddRef(INameSpaceTreeControlFolderCapabilities* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INameSpaceTreeControlFolderCapabilities_Release(INameSpaceTreeControlFolderCapabilities* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlFolderCapabilities methods ***/ static FORCEINLINE HRESULT INameSpaceTreeControlFolderCapabilities_GetFolderCapabilities(INameSpaceTreeControlFolderCapabilities* This,NSTCFOLDERCAPABILITIES nfcMask,NSTCFOLDERCAPABILITIES *pnfcValue) { return This->lpVtbl->GetFolderCapabilities(This,nfcMask,pnfcValue); } #endif #endif #endif #endif /* __INameSpaceTreeControlFolderCapabilities_INTERFACE_DEFINED__ */ #endif #define E_PREVIEWHANDLER_DRM_FAIL _HRESULT_TYPEDEF_(0x86420001L) #define E_PREVIEWHANDLER_NOAUTH _HRESULT_TYPEDEF_(0x86420002L) #define E_PREVIEWHANDLER_NOTFOUND _HRESULT_TYPEDEF_(0x86420003L) #define E_PREVIEWHANDLER_CORRUPT _HRESULT_TYPEDEF_(0x86420004L) /***************************************************************************** * IPreviewHandler interface */ #ifndef __IPreviewHandler_INTERFACE_DEFINED__ #define __IPreviewHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPreviewHandler, 0x8895b1c6, 0xb41f, 0x4c1c, 0xa5,0x62, 0x0d,0x56,0x42,0x50,0x83,0x6f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8895b1c6-b41f-4c1c-a562-0d564250836f") IPreviewHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetWindow( HWND hwnd, const RECT *prc) = 0; virtual HRESULT STDMETHODCALLTYPE SetRect( const RECT *prc) = 0; virtual HRESULT STDMETHODCALLTYPE DoPreview( ) = 0; virtual HRESULT STDMETHODCALLTYPE Unload( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetFocus( ) = 0; virtual HRESULT STDMETHODCALLTYPE QueryFocus( HWND *phwnd) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( MSG *pmsg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewHandler, 0x8895b1c6, 0xb41f, 0x4c1c, 0xa5,0x62, 0x0d,0x56,0x42,0x50,0x83,0x6f) #endif #else typedef struct IPreviewHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewHandler *This); /*** IPreviewHandler methods ***/ HRESULT (STDMETHODCALLTYPE *SetWindow)( IPreviewHandler *This, HWND hwnd, const RECT *prc); HRESULT (STDMETHODCALLTYPE *SetRect)( IPreviewHandler *This, const RECT *prc); HRESULT (STDMETHODCALLTYPE *DoPreview)( IPreviewHandler *This); HRESULT (STDMETHODCALLTYPE *Unload)( IPreviewHandler *This); HRESULT (STDMETHODCALLTYPE *SetFocus)( IPreviewHandler *This); HRESULT (STDMETHODCALLTYPE *QueryFocus)( IPreviewHandler *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IPreviewHandler *This, MSG *pmsg); END_INTERFACE } IPreviewHandlerVtbl; interface IPreviewHandler { CONST_VTBL IPreviewHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewHandler_Release(This) (This)->lpVtbl->Release(This) /*** IPreviewHandler methods ***/ #define IPreviewHandler_SetWindow(This,hwnd,prc) (This)->lpVtbl->SetWindow(This,hwnd,prc) #define IPreviewHandler_SetRect(This,prc) (This)->lpVtbl->SetRect(This,prc) #define IPreviewHandler_DoPreview(This) (This)->lpVtbl->DoPreview(This) #define IPreviewHandler_Unload(This) (This)->lpVtbl->Unload(This) #define IPreviewHandler_SetFocus(This) (This)->lpVtbl->SetFocus(This) #define IPreviewHandler_QueryFocus(This,phwnd) (This)->lpVtbl->QueryFocus(This,phwnd) #define IPreviewHandler_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPreviewHandler_QueryInterface(IPreviewHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPreviewHandler_AddRef(IPreviewHandler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPreviewHandler_Release(IPreviewHandler* This) { return This->lpVtbl->Release(This); } /*** IPreviewHandler methods ***/ static FORCEINLINE HRESULT IPreviewHandler_SetWindow(IPreviewHandler* This,HWND hwnd,const RECT *prc) { return This->lpVtbl->SetWindow(This,hwnd,prc); } static FORCEINLINE HRESULT IPreviewHandler_SetRect(IPreviewHandler* This,const RECT *prc) { return This->lpVtbl->SetRect(This,prc); } static FORCEINLINE HRESULT IPreviewHandler_DoPreview(IPreviewHandler* This) { return This->lpVtbl->DoPreview(This); } static FORCEINLINE HRESULT IPreviewHandler_Unload(IPreviewHandler* This) { return This->lpVtbl->Unload(This); } static FORCEINLINE HRESULT IPreviewHandler_SetFocus(IPreviewHandler* This) { return This->lpVtbl->SetFocus(This); } static FORCEINLINE HRESULT IPreviewHandler_QueryFocus(IPreviewHandler* This,HWND *phwnd) { return This->lpVtbl->QueryFocus(This,phwnd); } static FORCEINLINE HRESULT IPreviewHandler_TranslateAccelerator(IPreviewHandler* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } #endif #endif #endif #endif /* __IPreviewHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * IPreviewHandlerFrame interface */ #ifndef __IPreviewHandlerFrame_INTERFACE_DEFINED__ #define __IPreviewHandlerFrame_INTERFACE_DEFINED__ typedef struct PREVIEWHANDLERFRAMEINFO { HACCEL haccel; UINT cAccelEntries; } PREVIEWHANDLERFRAMEINFO; DEFINE_GUID(IID_IPreviewHandlerFrame, 0xfec87aaf, 0x35f9, 0x447a, 0xad,0xb7, 0x20,0x23,0x44,0x91,0x40,0x1a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fec87aaf-35f9-447a-adb7-20234491401a") IPreviewHandlerFrame : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetWindowContext( PREVIEWHANDLERFRAMEINFO *pinfo) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( MSG *pmsg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewHandlerFrame, 0xfec87aaf, 0x35f9, 0x447a, 0xad,0xb7, 0x20,0x23,0x44,0x91,0x40,0x1a) #endif #else typedef struct IPreviewHandlerFrameVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewHandlerFrame *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewHandlerFrame *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewHandlerFrame *This); /*** IPreviewHandlerFrame methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindowContext)( IPreviewHandlerFrame *This, PREVIEWHANDLERFRAMEINFO *pinfo); HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IPreviewHandlerFrame *This, MSG *pmsg); END_INTERFACE } IPreviewHandlerFrameVtbl; interface IPreviewHandlerFrame { CONST_VTBL IPreviewHandlerFrameVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewHandlerFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewHandlerFrame_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewHandlerFrame_Release(This) (This)->lpVtbl->Release(This) /*** IPreviewHandlerFrame methods ***/ #define IPreviewHandlerFrame_GetWindowContext(This,pinfo) (This)->lpVtbl->GetWindowContext(This,pinfo) #define IPreviewHandlerFrame_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPreviewHandlerFrame_QueryInterface(IPreviewHandlerFrame* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPreviewHandlerFrame_AddRef(IPreviewHandlerFrame* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPreviewHandlerFrame_Release(IPreviewHandlerFrame* This) { return This->lpVtbl->Release(This); } /*** IPreviewHandlerFrame methods ***/ static FORCEINLINE HRESULT IPreviewHandlerFrame_GetWindowContext(IPreviewHandlerFrame* This,PREVIEWHANDLERFRAMEINFO *pinfo) { return This->lpVtbl->GetWindowContext(This,pinfo); } static FORCEINLINE HRESULT IPreviewHandlerFrame_TranslateAccelerator(IPreviewHandlerFrame* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } #endif #endif #endif #endif /* __IPreviewHandlerFrame_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * ITrayDeskBand interface */ #ifndef __ITrayDeskBand_INTERFACE_DEFINED__ #define __ITrayDeskBand_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITrayDeskBand, 0x6d67e846, 0x5b9c, 0x4db8, 0x9c,0xbc, 0xdd,0xe1,0x2f,0x42,0x54,0xf1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6d67e846-5b9c-4db8-9cbc-dde12f4254f1") ITrayDeskBand : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ShowDeskBand( REFCLSID clsid) = 0; virtual HRESULT STDMETHODCALLTYPE HideDeskBand( REFCLSID clsid) = 0; virtual HRESULT STDMETHODCALLTYPE IsDeskBandShown( REFCLSID clsid) = 0; virtual HRESULT STDMETHODCALLTYPE DeskBandRegistrationChanged( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITrayDeskBand, 0x6d67e846, 0x5b9c, 0x4db8, 0x9c,0xbc, 0xdd,0xe1,0x2f,0x42,0x54,0xf1) #endif #else typedef struct ITrayDeskBandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITrayDeskBand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITrayDeskBand *This); ULONG (STDMETHODCALLTYPE *Release)( ITrayDeskBand *This); /*** ITrayDeskBand methods ***/ HRESULT (STDMETHODCALLTYPE *ShowDeskBand)( ITrayDeskBand *This, REFCLSID clsid); HRESULT (STDMETHODCALLTYPE *HideDeskBand)( ITrayDeskBand *This, REFCLSID clsid); HRESULT (STDMETHODCALLTYPE *IsDeskBandShown)( ITrayDeskBand *This, REFCLSID clsid); HRESULT (STDMETHODCALLTYPE *DeskBandRegistrationChanged)( ITrayDeskBand *This); END_INTERFACE } ITrayDeskBandVtbl; interface ITrayDeskBand { CONST_VTBL ITrayDeskBandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITrayDeskBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITrayDeskBand_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITrayDeskBand_Release(This) (This)->lpVtbl->Release(This) /*** ITrayDeskBand methods ***/ #define ITrayDeskBand_ShowDeskBand(This,clsid) (This)->lpVtbl->ShowDeskBand(This,clsid) #define ITrayDeskBand_HideDeskBand(This,clsid) (This)->lpVtbl->HideDeskBand(This,clsid) #define ITrayDeskBand_IsDeskBandShown(This,clsid) (This)->lpVtbl->IsDeskBandShown(This,clsid) #define ITrayDeskBand_DeskBandRegistrationChanged(This) (This)->lpVtbl->DeskBandRegistrationChanged(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITrayDeskBand_QueryInterface(ITrayDeskBand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITrayDeskBand_AddRef(ITrayDeskBand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITrayDeskBand_Release(ITrayDeskBand* This) { return This->lpVtbl->Release(This); } /*** ITrayDeskBand methods ***/ static FORCEINLINE HRESULT ITrayDeskBand_ShowDeskBand(ITrayDeskBand* This,REFCLSID clsid) { return This->lpVtbl->ShowDeskBand(This,clsid); } static FORCEINLINE HRESULT ITrayDeskBand_HideDeskBand(ITrayDeskBand* This,REFCLSID clsid) { return This->lpVtbl->HideDeskBand(This,clsid); } static FORCEINLINE HRESULT ITrayDeskBand_IsDeskBandShown(ITrayDeskBand* This,REFCLSID clsid) { return This->lpVtbl->IsDeskBandShown(This,clsid); } static FORCEINLINE HRESULT ITrayDeskBand_DeskBandRegistrationChanged(ITrayDeskBand* This) { return This->lpVtbl->DeskBandRegistrationChanged(This); } #endif #endif #endif #endif /* __ITrayDeskBand_INTERFACE_DEFINED__ */ /***************************************************************************** * IBandHost interface */ #ifndef __IBandHost_INTERFACE_DEFINED__ #define __IBandHost_INTERFACE_DEFINED__ DEFINE_GUID(IID_IBandHost, 0xb9075c7c, 0xd48e, 0x403f, 0xab,0x99, 0xd6,0xc7,0x7a,0x10,0x84,0xac); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b9075c7c-d48e-403f-ab99-d6c77a1084ac") IBandHost : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateBand( REFCLSID rclsidBand, WINBOOL fAvailable, WINBOOL fVisible, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE SetBandAvailability( REFCLSID rclsidBand, WINBOOL fAvailable) = 0; virtual HRESULT STDMETHODCALLTYPE DestroyBand( REFCLSID rclsidBand) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IBandHost, 0xb9075c7c, 0xd48e, 0x403f, 0xab,0x99, 0xd6,0xc7,0x7a,0x10,0x84,0xac) #endif #else typedef struct IBandHostVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IBandHost *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IBandHost *This); ULONG (STDMETHODCALLTYPE *Release)( IBandHost *This); /*** IBandHost methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBand)( IBandHost *This, REFCLSID rclsidBand, WINBOOL fAvailable, WINBOOL fVisible, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *SetBandAvailability)( IBandHost *This, REFCLSID rclsidBand, WINBOOL fAvailable); HRESULT (STDMETHODCALLTYPE *DestroyBand)( IBandHost *This, REFCLSID rclsidBand); END_INTERFACE } IBandHostVtbl; interface IBandHost { CONST_VTBL IBandHostVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IBandHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IBandHost_AddRef(This) (This)->lpVtbl->AddRef(This) #define IBandHost_Release(This) (This)->lpVtbl->Release(This) /*** IBandHost methods ***/ #define IBandHost_CreateBand(This,rclsidBand,fAvailable,fVisible,riid,ppv) (This)->lpVtbl->CreateBand(This,rclsidBand,fAvailable,fVisible,riid,ppv) #define IBandHost_SetBandAvailability(This,rclsidBand,fAvailable) (This)->lpVtbl->SetBandAvailability(This,rclsidBand,fAvailable) #define IBandHost_DestroyBand(This,rclsidBand) (This)->lpVtbl->DestroyBand(This,rclsidBand) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IBandHost_QueryInterface(IBandHost* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IBandHost_AddRef(IBandHost* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IBandHost_Release(IBandHost* This) { return This->lpVtbl->Release(This); } /*** IBandHost methods ***/ static FORCEINLINE HRESULT IBandHost_CreateBand(IBandHost* This,REFCLSID rclsidBand,WINBOOL fAvailable,WINBOOL fVisible,REFIID riid,void **ppv) { return This->lpVtbl->CreateBand(This,rclsidBand,fAvailable,fVisible,riid,ppv); } static FORCEINLINE HRESULT IBandHost_SetBandAvailability(IBandHost* This,REFCLSID rclsidBand,WINBOOL fAvailable) { return This->lpVtbl->SetBandAvailability(This,rclsidBand,fAvailable); } static FORCEINLINE HRESULT IBandHost_DestroyBand(IBandHost* This,REFCLSID rclsidBand) { return This->lpVtbl->DestroyBand(This,rclsidBand); } #endif #endif #endif #endif /* __IBandHost_INTERFACE_DEFINED__ */ #define SID_SBandHost IID_IBandHost typedef GUID EXPLORERPANE; #if 0 typedef EXPLORERPANE *REFEXPLORERPANE; #endif #ifdef __cplusplus #define REFEXPLORERPANE const EXPLORERPANE & #else #define REFEXPLORERPANE const EXPLORERPANE * __MIDL_CONST #endif /***************************************************************************** * IExplorerPaneVisibility interface */ #ifndef __IExplorerPaneVisibility_INTERFACE_DEFINED__ #define __IExplorerPaneVisibility_INTERFACE_DEFINED__ enum _EXPLORERPANESTATE { EPS_DONTCARE = 0x0, EPS_DEFAULT_ON = 0x1, EPS_DEFAULT_OFF = 0x2, EPS_STATEMASK = 0xffff, EPS_INITIALSTATE = 0x10000, EPS_FORCE = 0x20000 }; typedef DWORD EXPLORERPANESTATE; DEFINE_GUID(IID_IExplorerPaneVisibility, 0xe07010ec, 0xbc17, 0x44c0, 0x97,0xb0, 0x46,0xc7,0xc9,0x5b,0x9e,0xdc); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e07010ec-bc17-44c0-97b0-46c7c95b9edc") IExplorerPaneVisibility : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPaneState( REFEXPLORERPANE ep, EXPLORERPANESTATE *peps) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerPaneVisibility, 0xe07010ec, 0xbc17, 0x44c0, 0x97,0xb0, 0x46,0xc7,0xc9,0x5b,0x9e,0xdc) #endif #else typedef struct IExplorerPaneVisibilityVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerPaneVisibility *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerPaneVisibility *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerPaneVisibility *This); /*** IExplorerPaneVisibility methods ***/ HRESULT (STDMETHODCALLTYPE *GetPaneState)( IExplorerPaneVisibility *This, REFEXPLORERPANE ep, EXPLORERPANESTATE *peps); END_INTERFACE } IExplorerPaneVisibilityVtbl; interface IExplorerPaneVisibility { CONST_VTBL IExplorerPaneVisibilityVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerPaneVisibility_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerPaneVisibility_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerPaneVisibility_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerPaneVisibility methods ***/ #define IExplorerPaneVisibility_GetPaneState(This,ep,peps) (This)->lpVtbl->GetPaneState(This,ep,peps) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExplorerPaneVisibility_QueryInterface(IExplorerPaneVisibility* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExplorerPaneVisibility_AddRef(IExplorerPaneVisibility* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExplorerPaneVisibility_Release(IExplorerPaneVisibility* This) { return This->lpVtbl->Release(This); } /*** IExplorerPaneVisibility methods ***/ static FORCEINLINE HRESULT IExplorerPaneVisibility_GetPaneState(IExplorerPaneVisibility* This,REFEXPLORERPANE ep,EXPLORERPANESTATE *peps) { return This->lpVtbl->GetPaneState(This,ep,peps); } #endif #endif #endif #endif /* __IExplorerPaneVisibility_INTERFACE_DEFINED__ */ #define SID_ExplorerPaneVisibility IID_IExplorerPaneVisibility /***************************************************************************** * IContextMenuCB interface */ #ifndef __IContextMenuCB_INTERFACE_DEFINED__ #define __IContextMenuCB_INTERFACE_DEFINED__ DEFINE_GUID(IID_IContextMenuCB, 0x3409e930, 0x5a39, 0x11d1, 0x83,0xfa, 0x00,0xa0,0xc9,0x0d,0xc8,0x49); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3409e930-5a39-11d1-83fa-00a0c90dc849") IContextMenuCB : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CallBack( IShellFolder *psf, HWND hwndOwner, IDataObject *pdtobj, UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenuCB, 0x3409e930, 0x5a39, 0x11d1, 0x83,0xfa, 0x00,0xa0,0xc9,0x0d,0xc8,0x49) #endif #else typedef struct IContextMenuCBVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenuCB *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenuCB *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenuCB *This); /*** IContextMenuCB methods ***/ HRESULT (STDMETHODCALLTYPE *CallBack)( IContextMenuCB *This, IShellFolder *psf, HWND hwndOwner, IDataObject *pdtobj, UINT uMsg, WPARAM wParam, LPARAM lParam); END_INTERFACE } IContextMenuCBVtbl; interface IContextMenuCB { CONST_VTBL IContextMenuCBVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenuCB_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenuCB_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenuCB_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenuCB methods ***/ #define IContextMenuCB_CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam) (This)->lpVtbl->CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IContextMenuCB_QueryInterface(IContextMenuCB* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IContextMenuCB_AddRef(IContextMenuCB* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IContextMenuCB_Release(IContextMenuCB* This) { return This->lpVtbl->Release(This); } /*** IContextMenuCB methods ***/ static FORCEINLINE HRESULT IContextMenuCB_CallBack(IContextMenuCB* This,IShellFolder *psf,HWND hwndOwner,IDataObject *pdtobj,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam); } #endif #endif #endif #endif /* __IContextMenuCB_INTERFACE_DEFINED__ */ #endif /***************************************************************************** * IDefaultExtractIconInit interface */ #ifndef __IDefaultExtractIconInit_INTERFACE_DEFINED__ #define __IDefaultExtractIconInit_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDefaultExtractIconInit, 0x41ded17d, 0xd6b3, 0x4261, 0x99,0x7d, 0x88,0xc6,0x0e,0x4b,0x1d,0x58); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("41ded17d-d6b3-4261-997d-88c60e4b1d58") IDefaultExtractIconInit : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFlags( UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetKey( HKEY hkey) = 0; virtual HRESULT STDMETHODCALLTYPE SetNormalIcon( LPCWSTR pszFile, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetOpenIcon( LPCWSTR pszFile, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetShortcutIcon( LPCWSTR pszFile, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetDefaultIcon( LPCWSTR pszFile, int iIcon) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDefaultExtractIconInit, 0x41ded17d, 0xd6b3, 0x4261, 0x99,0x7d, 0x88,0xc6,0x0e,0x4b,0x1d,0x58) #endif #else typedef struct IDefaultExtractIconInitVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDefaultExtractIconInit *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDefaultExtractIconInit *This); ULONG (STDMETHODCALLTYPE *Release)( IDefaultExtractIconInit *This); /*** IDefaultExtractIconInit methods ***/ HRESULT (STDMETHODCALLTYPE *SetFlags)( IDefaultExtractIconInit *This, UINT uFlags); HRESULT (STDMETHODCALLTYPE *SetKey)( IDefaultExtractIconInit *This, HKEY hkey); HRESULT (STDMETHODCALLTYPE *SetNormalIcon)( IDefaultExtractIconInit *This, LPCWSTR pszFile, int iIcon); HRESULT (STDMETHODCALLTYPE *SetOpenIcon)( IDefaultExtractIconInit *This, LPCWSTR pszFile, int iIcon); HRESULT (STDMETHODCALLTYPE *SetShortcutIcon)( IDefaultExtractIconInit *This, LPCWSTR pszFile, int iIcon); HRESULT (STDMETHODCALLTYPE *SetDefaultIcon)( IDefaultExtractIconInit *This, LPCWSTR pszFile, int iIcon); END_INTERFACE } IDefaultExtractIconInitVtbl; interface IDefaultExtractIconInit { CONST_VTBL IDefaultExtractIconInitVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDefaultExtractIconInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDefaultExtractIconInit_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDefaultExtractIconInit_Release(This) (This)->lpVtbl->Release(This) /*** IDefaultExtractIconInit methods ***/ #define IDefaultExtractIconInit_SetFlags(This,uFlags) (This)->lpVtbl->SetFlags(This,uFlags) #define IDefaultExtractIconInit_SetKey(This,hkey) (This)->lpVtbl->SetKey(This,hkey) #define IDefaultExtractIconInit_SetNormalIcon(This,pszFile,iIcon) (This)->lpVtbl->SetNormalIcon(This,pszFile,iIcon) #define IDefaultExtractIconInit_SetOpenIcon(This,pszFile,iIcon) (This)->lpVtbl->SetOpenIcon(This,pszFile,iIcon) #define IDefaultExtractIconInit_SetShortcutIcon(This,pszFile,iIcon) (This)->lpVtbl->SetShortcutIcon(This,pszFile,iIcon) #define IDefaultExtractIconInit_SetDefaultIcon(This,pszFile,iIcon) (This)->lpVtbl->SetDefaultIcon(This,pszFile,iIcon) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDefaultExtractIconInit_QueryInterface(IDefaultExtractIconInit* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDefaultExtractIconInit_AddRef(IDefaultExtractIconInit* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDefaultExtractIconInit_Release(IDefaultExtractIconInit* This) { return This->lpVtbl->Release(This); } /*** IDefaultExtractIconInit methods ***/ static FORCEINLINE HRESULT IDefaultExtractIconInit_SetFlags(IDefaultExtractIconInit* This,UINT uFlags) { return This->lpVtbl->SetFlags(This,uFlags); } static FORCEINLINE HRESULT IDefaultExtractIconInit_SetKey(IDefaultExtractIconInit* This,HKEY hkey) { return This->lpVtbl->SetKey(This,hkey); } static FORCEINLINE HRESULT IDefaultExtractIconInit_SetNormalIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { return This->lpVtbl->SetNormalIcon(This,pszFile,iIcon); } static FORCEINLINE HRESULT IDefaultExtractIconInit_SetOpenIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { return This->lpVtbl->SetOpenIcon(This,pszFile,iIcon); } static FORCEINLINE HRESULT IDefaultExtractIconInit_SetShortcutIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { return This->lpVtbl->SetShortcutIcon(This,pszFile,iIcon); } static FORCEINLINE HRESULT IDefaultExtractIconInit_SetDefaultIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { return This->lpVtbl->SetDefaultIcon(This,pszFile,iIcon); } #endif #endif #endif #endif /* __IDefaultExtractIconInit_INTERFACE_DEFINED__ */ STDAPI SHCreateDefaultExtractIcon(REFIID riid, void **ppv); #ifndef __IEnumExplorerCommand_FWD_DEFINED__ #define __IEnumExplorerCommand_FWD_DEFINED__ typedef interface IEnumExplorerCommand IEnumExplorerCommand; #ifdef __cplusplus interface IEnumExplorerCommand; #endif /* __cplusplus */ #endif /***************************************************************************** * IExplorerCommand interface */ #ifndef __IExplorerCommand_INTERFACE_DEFINED__ #define __IExplorerCommand_INTERFACE_DEFINED__ enum _EXPCMDSTATE { ECS_ENABLED = 0x0, ECS_DISABLED = 0x1, ECS_HIDDEN = 0x2, ECS_CHECKBOX = 0x4, ECS_CHECKED = 0x8, ECS_RADIOCHECK = 0x10 }; typedef DWORD EXPCMDSTATE; enum _EXPCMDFLAGS { ECF_DEFAULT = 0x0, ECF_HASSUBCOMMANDS = 0x1, ECF_HASSPLITBUTTON = 0x2, ECF_HIDELABEL = 0x4, ECF_ISSEPARATOR = 0x8, ECF_HASLUASHIELD = 0x10, ECF_SEPARATORBEFORE = 0x20, ECF_SEPARATORAFTER = 0x40, ECF_ISDROPDOWN = 0x80, ECF_TOGGLEABLE = 0x100, ECF_AUTOMENUICONS = 0x200 }; typedef DWORD EXPCMDFLAGS; DEFINE_GUID(IID_IExplorerCommand, 0xa08ce4d0, 0xfa25, 0x44ab, 0xb5,0x7c, 0xc7,0xb1,0xc3,0x23,0xe0,0xb9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a08ce4d0-fa25-44ab-b57c-c7b1c323e0b9") IExplorerCommand : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetTitle( IShellItemArray *psiItemArray, LPWSTR *ppszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetIcon( IShellItemArray *psiItemArray, LPWSTR *ppszIcon) = 0; virtual HRESULT STDMETHODCALLTYPE GetToolTip( IShellItemArray *psiItemArray, LPWSTR *ppszInfotip) = 0; virtual HRESULT STDMETHODCALLTYPE GetCanonicalName( GUID *pguidCommandName) = 0; virtual HRESULT STDMETHODCALLTYPE GetState( IShellItemArray *psiItemArray, WINBOOL fOkToBeSlow, EXPCMDSTATE *pCmdState) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( IShellItemArray *psiItemArray, IBindCtx *pbc) = 0; virtual HRESULT STDMETHODCALLTYPE GetFlags( EXPCMDFLAGS *pFlags) = 0; virtual HRESULT STDMETHODCALLTYPE EnumSubCommands( IEnumExplorerCommand **ppEnum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerCommand, 0xa08ce4d0, 0xfa25, 0x44ab, 0xb5,0x7c, 0xc7,0xb1,0xc3,0x23,0xe0,0xb9) #endif #else typedef struct IExplorerCommandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerCommand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerCommand *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerCommand *This); /*** IExplorerCommand methods ***/ HRESULT (STDMETHODCALLTYPE *GetTitle)( IExplorerCommand *This, IShellItemArray *psiItemArray, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetIcon)( IExplorerCommand *This, IShellItemArray *psiItemArray, LPWSTR *ppszIcon); HRESULT (STDMETHODCALLTYPE *GetToolTip)( IExplorerCommand *This, IShellItemArray *psiItemArray, LPWSTR *ppszInfotip); HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( IExplorerCommand *This, GUID *pguidCommandName); HRESULT (STDMETHODCALLTYPE *GetState)( IExplorerCommand *This, IShellItemArray *psiItemArray, WINBOOL fOkToBeSlow, EXPCMDSTATE *pCmdState); HRESULT (STDMETHODCALLTYPE *Invoke)( IExplorerCommand *This, IShellItemArray *psiItemArray, IBindCtx *pbc); HRESULT (STDMETHODCALLTYPE *GetFlags)( IExplorerCommand *This, EXPCMDFLAGS *pFlags); HRESULT (STDMETHODCALLTYPE *EnumSubCommands)( IExplorerCommand *This, IEnumExplorerCommand **ppEnum); END_INTERFACE } IExplorerCommandVtbl; interface IExplorerCommand { CONST_VTBL IExplorerCommandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerCommand_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerCommand_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerCommand methods ***/ #define IExplorerCommand_GetTitle(This,psiItemArray,ppszName) (This)->lpVtbl->GetTitle(This,psiItemArray,ppszName) #define IExplorerCommand_GetIcon(This,psiItemArray,ppszIcon) (This)->lpVtbl->GetIcon(This,psiItemArray,ppszIcon) #define IExplorerCommand_GetToolTip(This,psiItemArray,ppszInfotip) (This)->lpVtbl->GetToolTip(This,psiItemArray,ppszInfotip) #define IExplorerCommand_GetCanonicalName(This,pguidCommandName) (This)->lpVtbl->GetCanonicalName(This,pguidCommandName) #define IExplorerCommand_GetState(This,psiItemArray,fOkToBeSlow,pCmdState) (This)->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState) #define IExplorerCommand_Invoke(This,psiItemArray,pbc) (This)->lpVtbl->Invoke(This,psiItemArray,pbc) #define IExplorerCommand_GetFlags(This,pFlags) (This)->lpVtbl->GetFlags(This,pFlags) #define IExplorerCommand_EnumSubCommands(This,ppEnum) (This)->lpVtbl->EnumSubCommands(This,ppEnum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExplorerCommand_QueryInterface(IExplorerCommand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExplorerCommand_AddRef(IExplorerCommand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExplorerCommand_Release(IExplorerCommand* This) { return This->lpVtbl->Release(This); } /*** IExplorerCommand methods ***/ static FORCEINLINE HRESULT IExplorerCommand_GetTitle(IExplorerCommand* This,IShellItemArray *psiItemArray,LPWSTR *ppszName) { return This->lpVtbl->GetTitle(This,psiItemArray,ppszName); } static FORCEINLINE HRESULT IExplorerCommand_GetIcon(IExplorerCommand* This,IShellItemArray *psiItemArray,LPWSTR *ppszIcon) { return This->lpVtbl->GetIcon(This,psiItemArray,ppszIcon); } static FORCEINLINE HRESULT IExplorerCommand_GetToolTip(IExplorerCommand* This,IShellItemArray *psiItemArray,LPWSTR *ppszInfotip) { return This->lpVtbl->GetToolTip(This,psiItemArray,ppszInfotip); } static FORCEINLINE HRESULT IExplorerCommand_GetCanonicalName(IExplorerCommand* This,GUID *pguidCommandName) { return This->lpVtbl->GetCanonicalName(This,pguidCommandName); } static FORCEINLINE HRESULT IExplorerCommand_GetState(IExplorerCommand* This,IShellItemArray *psiItemArray,WINBOOL fOkToBeSlow,EXPCMDSTATE *pCmdState) { return This->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState); } static FORCEINLINE HRESULT IExplorerCommand_Invoke(IExplorerCommand* This,IShellItemArray *psiItemArray,IBindCtx *pbc) { return This->lpVtbl->Invoke(This,psiItemArray,pbc); } static FORCEINLINE HRESULT IExplorerCommand_GetFlags(IExplorerCommand* This,EXPCMDFLAGS *pFlags) { return This->lpVtbl->GetFlags(This,pFlags); } static FORCEINLINE HRESULT IExplorerCommand_EnumSubCommands(IExplorerCommand* This,IEnumExplorerCommand **ppEnum) { return This->lpVtbl->EnumSubCommands(This,ppEnum); } #endif #endif #endif #endif /* __IExplorerCommand_INTERFACE_DEFINED__ */ /***************************************************************************** * IExplorerCommandState interface */ #ifndef __IExplorerCommandState_INTERFACE_DEFINED__ #define __IExplorerCommandState_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExplorerCommandState, 0xbddacb60, 0x7657, 0x47ae, 0x84,0x45, 0xd2,0x3e,0x1a,0xcf,0x82,0xae); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bddacb60-7657-47ae-8445-d23e1acf82ae") IExplorerCommandState : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetState( IShellItemArray *psiItemArray, WINBOOL fOkToBeSlow, EXPCMDSTATE *pCmdState) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerCommandState, 0xbddacb60, 0x7657, 0x47ae, 0x84,0x45, 0xd2,0x3e,0x1a,0xcf,0x82,0xae) #endif #else typedef struct IExplorerCommandStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerCommandState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerCommandState *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerCommandState *This); /*** IExplorerCommandState methods ***/ HRESULT (STDMETHODCALLTYPE *GetState)( IExplorerCommandState *This, IShellItemArray *psiItemArray, WINBOOL fOkToBeSlow, EXPCMDSTATE *pCmdState); END_INTERFACE } IExplorerCommandStateVtbl; interface IExplorerCommandState { CONST_VTBL IExplorerCommandStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerCommandState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerCommandState_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerCommandState_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerCommandState methods ***/ #define IExplorerCommandState_GetState(This,psiItemArray,fOkToBeSlow,pCmdState) (This)->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExplorerCommandState_QueryInterface(IExplorerCommandState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExplorerCommandState_AddRef(IExplorerCommandState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExplorerCommandState_Release(IExplorerCommandState* This) { return This->lpVtbl->Release(This); } /*** IExplorerCommandState methods ***/ static FORCEINLINE HRESULT IExplorerCommandState_GetState(IExplorerCommandState* This,IShellItemArray *psiItemArray,WINBOOL fOkToBeSlow,EXPCMDSTATE *pCmdState) { return This->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState); } #endif #endif #endif #endif /* __IExplorerCommandState_INTERFACE_DEFINED__ */ /***************************************************************************** * IInitializeCommand interface */ #ifndef __IInitializeCommand_INTERFACE_DEFINED__ #define __IInitializeCommand_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeCommand, 0x85075acf, 0x231f, 0x40ea, 0x96,0x10, 0xd2,0x6b,0x7b,0x58,0xf6,0x38); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("85075acf-231f-40ea-9610-d26b7b58f638") IInitializeCommand : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( LPCWSTR pszCommandName, IPropertyBag *ppb) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeCommand, 0x85075acf, 0x231f, 0x40ea, 0x96,0x10, 0xd2,0x6b,0x7b,0x58,0xf6,0x38) #endif #else typedef struct IInitializeCommandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeCommand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeCommand *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeCommand *This); /*** IInitializeCommand methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeCommand *This, LPCWSTR pszCommandName, IPropertyBag *ppb); END_INTERFACE } IInitializeCommandVtbl; interface IInitializeCommand { CONST_VTBL IInitializeCommandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeCommand_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeCommand_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeCommand methods ***/ #define IInitializeCommand_Initialize(This,pszCommandName,ppb) (This)->lpVtbl->Initialize(This,pszCommandName,ppb) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeCommand_QueryInterface(IInitializeCommand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeCommand_AddRef(IInitializeCommand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeCommand_Release(IInitializeCommand* This) { return This->lpVtbl->Release(This); } /*** IInitializeCommand methods ***/ static FORCEINLINE HRESULT IInitializeCommand_Initialize(IInitializeCommand* This,LPCWSTR pszCommandName,IPropertyBag *ppb) { return This->lpVtbl->Initialize(This,pszCommandName,ppb); } #endif #endif #endif #endif /* __IInitializeCommand_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumExplorerCommand interface */ #ifndef __IEnumExplorerCommand_INTERFACE_DEFINED__ #define __IEnumExplorerCommand_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumExplorerCommand, 0xa88826f8, 0x186f, 0x4987, 0xaa,0xde, 0xea,0x0c,0xef,0x8f,0xbf,0xe8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a88826f8-186f-4987-aade-ea0cef8fbfe8") IEnumExplorerCommand : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, IExplorerCommand **pUICommand, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumExplorerCommand **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumExplorerCommand, 0xa88826f8, 0x186f, 0x4987, 0xaa,0xde, 0xea,0x0c,0xef,0x8f,0xbf,0xe8) #endif #else typedef struct IEnumExplorerCommandVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumExplorerCommand *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumExplorerCommand *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumExplorerCommand *This); /*** IEnumExplorerCommand methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumExplorerCommand *This, ULONG celt, IExplorerCommand **pUICommand, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumExplorerCommand *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumExplorerCommand *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumExplorerCommand *This, IEnumExplorerCommand **ppenum); END_INTERFACE } IEnumExplorerCommandVtbl; interface IEnumExplorerCommand { CONST_VTBL IEnumExplorerCommandVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumExplorerCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumExplorerCommand_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumExplorerCommand_Release(This) (This)->lpVtbl->Release(This) /*** IEnumExplorerCommand methods ***/ #define IEnumExplorerCommand_Next(This,celt,pUICommand,pceltFetched) (This)->lpVtbl->Next(This,celt,pUICommand,pceltFetched) #define IEnumExplorerCommand_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumExplorerCommand_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumExplorerCommand_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumExplorerCommand_QueryInterface(IEnumExplorerCommand* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumExplorerCommand_AddRef(IEnumExplorerCommand* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumExplorerCommand_Release(IEnumExplorerCommand* This) { return This->lpVtbl->Release(This); } /*** IEnumExplorerCommand methods ***/ static FORCEINLINE HRESULT IEnumExplorerCommand_Next(IEnumExplorerCommand* This,ULONG celt,IExplorerCommand **pUICommand,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,pUICommand,pceltFetched); } static FORCEINLINE HRESULT IEnumExplorerCommand_Skip(IEnumExplorerCommand* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumExplorerCommand_Reset(IEnumExplorerCommand* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumExplorerCommand_Clone(IEnumExplorerCommand* This,IEnumExplorerCommand **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumExplorerCommand_RemoteNext_Proxy( IEnumExplorerCommand* This, ULONG celt, IExplorerCommand **pUICommand, ULONG *pceltFetched); void __RPC_STUB IEnumExplorerCommand_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumExplorerCommand_Next_Proxy( IEnumExplorerCommand* This, ULONG celt, IExplorerCommand **pUICommand, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumExplorerCommand_Next_Stub( IEnumExplorerCommand* This, ULONG celt, IExplorerCommand **pUICommand, ULONG *pceltFetched); #endif /* __IEnumExplorerCommand_INTERFACE_DEFINED__ */ /***************************************************************************** * IExplorerCommandProvider interface */ #ifndef __IExplorerCommandProvider_INTERFACE_DEFINED__ #define __IExplorerCommandProvider_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExplorerCommandProvider, 0x64961751, 0x0835, 0x43c0, 0x8f,0xfe, 0xd5,0x76,0x86,0x53,0x0e,0x64); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("64961751-0835-43c0-8ffe-d57686530e64") IExplorerCommandProvider : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCommands( IUnknown *punkSite, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetCommand( REFGUID rguidCommandId, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerCommandProvider, 0x64961751, 0x0835, 0x43c0, 0x8f,0xfe, 0xd5,0x76,0x86,0x53,0x0e,0x64) #endif #else typedef struct IExplorerCommandProviderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerCommandProvider *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerCommandProvider *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerCommandProvider *This); /*** IExplorerCommandProvider methods ***/ HRESULT (STDMETHODCALLTYPE *GetCommands)( IExplorerCommandProvider *This, IUnknown *punkSite, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetCommand)( IExplorerCommandProvider *This, REFGUID rguidCommandId, REFIID riid, void **ppv); END_INTERFACE } IExplorerCommandProviderVtbl; interface IExplorerCommandProvider { CONST_VTBL IExplorerCommandProviderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerCommandProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerCommandProvider_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerCommandProvider_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerCommandProvider methods ***/ #define IExplorerCommandProvider_GetCommands(This,punkSite,riid,ppv) (This)->lpVtbl->GetCommands(This,punkSite,riid,ppv) #define IExplorerCommandProvider_GetCommand(This,rguidCommandId,riid,ppv) (This)->lpVtbl->GetCommand(This,rguidCommandId,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExplorerCommandProvider_QueryInterface(IExplorerCommandProvider* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExplorerCommandProvider_AddRef(IExplorerCommandProvider* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExplorerCommandProvider_Release(IExplorerCommandProvider* This) { return This->lpVtbl->Release(This); } /*** IExplorerCommandProvider methods ***/ static FORCEINLINE HRESULT IExplorerCommandProvider_GetCommands(IExplorerCommandProvider* This,IUnknown *punkSite,REFIID riid,void **ppv) { return This->lpVtbl->GetCommands(This,punkSite,riid,ppv); } static FORCEINLINE HRESULT IExplorerCommandProvider_GetCommand(IExplorerCommandProvider* This,REFGUID rguidCommandId,REFIID riid,void **ppv) { return This->lpVtbl->GetCommand(This,rguidCommandId,riid,ppv); } #endif #endif #endif #endif /* __IExplorerCommandProvider_INTERFACE_DEFINED__ */ typedef HANDLE HTHEME; /***************************************************************************** * IInitializeNetworkFolder interface */ #ifndef __IInitializeNetworkFolder_INTERFACE_DEFINED__ #define __IInitializeNetworkFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeNetworkFolder, 0x6e0f9881, 0x42a8, 0x4f2a, 0x97,0xf8, 0x8a,0xf4,0xe0,0x26,0xd9,0x2d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6e0f9881-42a8-4f2a-97f8-8af4e026d92d") IInitializeNetworkFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( PCIDLIST_ABSOLUTE pidl, PCIDLIST_ABSOLUTE pidlTarget, UINT uDisplayType, LPCWSTR pszResName, LPCWSTR pszProvider) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeNetworkFolder, 0x6e0f9881, 0x42a8, 0x4f2a, 0x97,0xf8, 0x8a,0xf4,0xe0,0x26,0xd9,0x2d) #endif #else typedef struct IInitializeNetworkFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeNetworkFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeNetworkFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeNetworkFolder *This); /*** IInitializeNetworkFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeNetworkFolder *This, PCIDLIST_ABSOLUTE pidl, PCIDLIST_ABSOLUTE pidlTarget, UINT uDisplayType, LPCWSTR pszResName, LPCWSTR pszProvider); END_INTERFACE } IInitializeNetworkFolderVtbl; interface IInitializeNetworkFolder { CONST_VTBL IInitializeNetworkFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeNetworkFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeNetworkFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeNetworkFolder_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeNetworkFolder methods ***/ #define IInitializeNetworkFolder_Initialize(This,pidl,pidlTarget,uDisplayType,pszResName,pszProvider) (This)->lpVtbl->Initialize(This,pidl,pidlTarget,uDisplayType,pszResName,pszProvider) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeNetworkFolder_QueryInterface(IInitializeNetworkFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeNetworkFolder_AddRef(IInitializeNetworkFolder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeNetworkFolder_Release(IInitializeNetworkFolder* This) { return This->lpVtbl->Release(This); } /*** IInitializeNetworkFolder methods ***/ static FORCEINLINE HRESULT IInitializeNetworkFolder_Initialize(IInitializeNetworkFolder* This,PCIDLIST_ABSOLUTE pidl,PCIDLIST_ABSOLUTE pidlTarget,UINT uDisplayType,LPCWSTR pszResName,LPCWSTR pszProvider) { return This->lpVtbl->Initialize(This,pidl,pidlTarget,uDisplayType,pszResName,pszProvider); } #endif #endif #endif #endif /* __IInitializeNetworkFolder_INTERFACE_DEFINED__ */ typedef enum CPVIEW { CPVIEW_CLASSIC = 0, CPVIEW_ALLITEMS = CPVIEW_CLASSIC, CPVIEW_CATEGORY = 1, CPVIEW_HOME = CPVIEW_CATEGORY } CPVIEW; /***************************************************************************** * IOpenControlPanel interface */ #ifndef __IOpenControlPanel_INTERFACE_DEFINED__ #define __IOpenControlPanel_INTERFACE_DEFINED__ DEFINE_GUID(IID_IOpenControlPanel, 0xd11ad862, 0x66de, 0x4df4, 0xbf,0x6c, 0x1f,0x56,0x21,0x99,0x6a,0xf1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d11ad862-66de-4df4-bf6c-1f5621996af1") IOpenControlPanel : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Open( LPCWSTR pszName, LPCWSTR pszPage, IUnknown *punkSite) = 0; virtual HRESULT STDMETHODCALLTYPE GetPath( LPCWSTR pszName, LPWSTR pszPath, UINT cchPath) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentView( CPVIEW *pView) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IOpenControlPanel, 0xd11ad862, 0x66de, 0x4df4, 0xbf,0x6c, 0x1f,0x56,0x21,0x99,0x6a,0xf1) #endif #else typedef struct IOpenControlPanelVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IOpenControlPanel *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IOpenControlPanel *This); ULONG (STDMETHODCALLTYPE *Release)( IOpenControlPanel *This); /*** IOpenControlPanel methods ***/ HRESULT (STDMETHODCALLTYPE *Open)( IOpenControlPanel *This, LPCWSTR pszName, LPCWSTR pszPage, IUnknown *punkSite); HRESULT (STDMETHODCALLTYPE *GetPath)( IOpenControlPanel *This, LPCWSTR pszName, LPWSTR pszPath, UINT cchPath); HRESULT (STDMETHODCALLTYPE *GetCurrentView)( IOpenControlPanel *This, CPVIEW *pView); END_INTERFACE } IOpenControlPanelVtbl; interface IOpenControlPanel { CONST_VTBL IOpenControlPanelVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IOpenControlPanel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IOpenControlPanel_AddRef(This) (This)->lpVtbl->AddRef(This) #define IOpenControlPanel_Release(This) (This)->lpVtbl->Release(This) /*** IOpenControlPanel methods ***/ #define IOpenControlPanel_Open(This,pszName,pszPage,punkSite) (This)->lpVtbl->Open(This,pszName,pszPage,punkSite) #define IOpenControlPanel_GetPath(This,pszName,pszPath,cchPath) (This)->lpVtbl->GetPath(This,pszName,pszPath,cchPath) #define IOpenControlPanel_GetCurrentView(This,pView) (This)->lpVtbl->GetCurrentView(This,pView) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IOpenControlPanel_QueryInterface(IOpenControlPanel* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IOpenControlPanel_AddRef(IOpenControlPanel* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IOpenControlPanel_Release(IOpenControlPanel* This) { return This->lpVtbl->Release(This); } /*** IOpenControlPanel methods ***/ static FORCEINLINE HRESULT IOpenControlPanel_Open(IOpenControlPanel* This,LPCWSTR pszName,LPCWSTR pszPage,IUnknown *punkSite) { return This->lpVtbl->Open(This,pszName,pszPage,punkSite); } static FORCEINLINE HRESULT IOpenControlPanel_GetPath(IOpenControlPanel* This,LPCWSTR pszName,LPWSTR pszPath,UINT cchPath) { return This->lpVtbl->GetPath(This,pszName,pszPath,cchPath); } static FORCEINLINE HRESULT IOpenControlPanel_GetCurrentView(IOpenControlPanel* This,CPVIEW *pView) { return This->lpVtbl->GetCurrentView(This,pView); } #endif #endif #endif #endif /* __IOpenControlPanel_INTERFACE_DEFINED__ */ /***************************************************************************** * IComputerInfoChangeNotify interface */ #ifndef __IComputerInfoChangeNotify_INTERFACE_DEFINED__ #define __IComputerInfoChangeNotify_INTERFACE_DEFINED__ DEFINE_GUID(IID_IComputerInfoChangeNotify, 0x0df60d92, 0x6818, 0x46d6, 0xb3,0x58, 0xd6,0x61,0x70,0xdd,0xe4,0x66); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0df60d92-6818-46d6-b358-d66170dde466") IComputerInfoChangeNotify : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ComputerInfoChanged( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IComputerInfoChangeNotify, 0x0df60d92, 0x6818, 0x46d6, 0xb3,0x58, 0xd6,0x61,0x70,0xdd,0xe4,0x66) #endif #else typedef struct IComputerInfoChangeNotifyVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IComputerInfoChangeNotify *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IComputerInfoChangeNotify *This); ULONG (STDMETHODCALLTYPE *Release)( IComputerInfoChangeNotify *This); /*** IComputerInfoChangeNotify methods ***/ HRESULT (STDMETHODCALLTYPE *ComputerInfoChanged)( IComputerInfoChangeNotify *This); END_INTERFACE } IComputerInfoChangeNotifyVtbl; interface IComputerInfoChangeNotify { CONST_VTBL IComputerInfoChangeNotifyVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IComputerInfoChangeNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IComputerInfoChangeNotify_AddRef(This) (This)->lpVtbl->AddRef(This) #define IComputerInfoChangeNotify_Release(This) (This)->lpVtbl->Release(This) /*** IComputerInfoChangeNotify methods ***/ #define IComputerInfoChangeNotify_ComputerInfoChanged(This) (This)->lpVtbl->ComputerInfoChanged(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IComputerInfoChangeNotify_QueryInterface(IComputerInfoChangeNotify* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IComputerInfoChangeNotify_AddRef(IComputerInfoChangeNotify* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IComputerInfoChangeNotify_Release(IComputerInfoChangeNotify* This) { return This->lpVtbl->Release(This); } /*** IComputerInfoChangeNotify methods ***/ static FORCEINLINE HRESULT IComputerInfoChangeNotify_ComputerInfoChanged(IComputerInfoChangeNotify* This) { return This->lpVtbl->ComputerInfoChanged(This); } #endif #endif #endif #endif /* __IComputerInfoChangeNotify_INTERFACE_DEFINED__ */ #define STR_FILE_SYS_BIND_DATA L"File System Bind Data" /***************************************************************************** * IFileSystemBindData interface */ #ifndef __IFileSystemBindData_INTERFACE_DEFINED__ #define __IFileSystemBindData_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("01e18d10-4d8b-11d2-855d-006008059367") IFileSystemBindData : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFindData( const WIN32_FIND_DATAW *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE GetFindData( WIN32_FIND_DATAW *pfd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67) #endif #else typedef struct IFileSystemBindDataVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileSystemBindData *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileSystemBindData *This); ULONG (STDMETHODCALLTYPE *Release)( IFileSystemBindData *This); /*** IFileSystemBindData methods ***/ HRESULT (STDMETHODCALLTYPE *SetFindData)( IFileSystemBindData *This, const WIN32_FIND_DATAW *pfd); HRESULT (STDMETHODCALLTYPE *GetFindData)( IFileSystemBindData *This, WIN32_FIND_DATAW *pfd); END_INTERFACE } IFileSystemBindDataVtbl; interface IFileSystemBindData { CONST_VTBL IFileSystemBindDataVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileSystemBindData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileSystemBindData_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileSystemBindData_Release(This) (This)->lpVtbl->Release(This) /*** IFileSystemBindData methods ***/ #define IFileSystemBindData_SetFindData(This,pfd) (This)->lpVtbl->SetFindData(This,pfd) #define IFileSystemBindData_GetFindData(This,pfd) (This)->lpVtbl->GetFindData(This,pfd) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileSystemBindData_QueryInterface(IFileSystemBindData* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileSystemBindData_AddRef(IFileSystemBindData* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileSystemBindData_Release(IFileSystemBindData* This) { return This->lpVtbl->Release(This); } /*** IFileSystemBindData methods ***/ static FORCEINLINE HRESULT IFileSystemBindData_SetFindData(IFileSystemBindData* This,const WIN32_FIND_DATAW *pfd) { return This->lpVtbl->SetFindData(This,pfd); } static FORCEINLINE HRESULT IFileSystemBindData_GetFindData(IFileSystemBindData* This,WIN32_FIND_DATAW *pfd) { return This->lpVtbl->GetFindData(This,pfd); } #endif #endif #endif #endif /* __IFileSystemBindData_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileSystemBindData2 interface */ #ifndef __IFileSystemBindData2_INTERFACE_DEFINED__ #define __IFileSystemBindData2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileSystemBindData2, 0x3acf075f, 0x71db, 0x4afa, 0x81,0xf0, 0x3f,0xc4,0xfd,0xf2,0xa5,0xb8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3acf075f-71db-4afa-81f0-3fc4fdf2a5b8") IFileSystemBindData2 : public IFileSystemBindData { virtual HRESULT STDMETHODCALLTYPE SetFileID( LARGE_INTEGER liFileID) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileID( LARGE_INTEGER *pliFileID) = 0; virtual HRESULT STDMETHODCALLTYPE SetJunctionCLSID( REFCLSID clsid) = 0; virtual HRESULT STDMETHODCALLTYPE GetJunctionCLSID( CLSID *pclsid) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileSystemBindData2, 0x3acf075f, 0x71db, 0x4afa, 0x81,0xf0, 0x3f,0xc4,0xfd,0xf2,0xa5,0xb8) #endif #else typedef struct IFileSystemBindData2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileSystemBindData2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileSystemBindData2 *This); ULONG (STDMETHODCALLTYPE *Release)( IFileSystemBindData2 *This); /*** IFileSystemBindData methods ***/ HRESULT (STDMETHODCALLTYPE *SetFindData)( IFileSystemBindData2 *This, const WIN32_FIND_DATAW *pfd); HRESULT (STDMETHODCALLTYPE *GetFindData)( IFileSystemBindData2 *This, WIN32_FIND_DATAW *pfd); /*** IFileSystemBindData2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileID)( IFileSystemBindData2 *This, LARGE_INTEGER liFileID); HRESULT (STDMETHODCALLTYPE *GetFileID)( IFileSystemBindData2 *This, LARGE_INTEGER *pliFileID); HRESULT (STDMETHODCALLTYPE *SetJunctionCLSID)( IFileSystemBindData2 *This, REFCLSID clsid); HRESULT (STDMETHODCALLTYPE *GetJunctionCLSID)( IFileSystemBindData2 *This, CLSID *pclsid); END_INTERFACE } IFileSystemBindData2Vtbl; interface IFileSystemBindData2 { CONST_VTBL IFileSystemBindData2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileSystemBindData2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileSystemBindData2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileSystemBindData2_Release(This) (This)->lpVtbl->Release(This) /*** IFileSystemBindData methods ***/ #define IFileSystemBindData2_SetFindData(This,pfd) (This)->lpVtbl->SetFindData(This,pfd) #define IFileSystemBindData2_GetFindData(This,pfd) (This)->lpVtbl->GetFindData(This,pfd) /*** IFileSystemBindData2 methods ***/ #define IFileSystemBindData2_SetFileID(This,liFileID) (This)->lpVtbl->SetFileID(This,liFileID) #define IFileSystemBindData2_GetFileID(This,pliFileID) (This)->lpVtbl->GetFileID(This,pliFileID) #define IFileSystemBindData2_SetJunctionCLSID(This,clsid) (This)->lpVtbl->SetJunctionCLSID(This,clsid) #define IFileSystemBindData2_GetJunctionCLSID(This,pclsid) (This)->lpVtbl->GetJunctionCLSID(This,pclsid) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFileSystemBindData2_QueryInterface(IFileSystemBindData2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFileSystemBindData2_AddRef(IFileSystemBindData2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFileSystemBindData2_Release(IFileSystemBindData2* This) { return This->lpVtbl->Release(This); } /*** IFileSystemBindData methods ***/ static FORCEINLINE HRESULT IFileSystemBindData2_SetFindData(IFileSystemBindData2* This,const WIN32_FIND_DATAW *pfd) { return This->lpVtbl->SetFindData(This,pfd); } static FORCEINLINE HRESULT IFileSystemBindData2_GetFindData(IFileSystemBindData2* This,WIN32_FIND_DATAW *pfd) { return This->lpVtbl->GetFindData(This,pfd); } /*** IFileSystemBindData2 methods ***/ static FORCEINLINE HRESULT IFileSystemBindData2_SetFileID(IFileSystemBindData2* This,LARGE_INTEGER liFileID) { return This->lpVtbl->SetFileID(This,liFileID); } static FORCEINLINE HRESULT IFileSystemBindData2_GetFileID(IFileSystemBindData2* This,LARGE_INTEGER *pliFileID) { return This->lpVtbl->GetFileID(This,pliFileID); } static FORCEINLINE HRESULT IFileSystemBindData2_SetJunctionCLSID(IFileSystemBindData2* This,REFCLSID clsid) { return This->lpVtbl->SetJunctionCLSID(This,clsid); } static FORCEINLINE HRESULT IFileSystemBindData2_GetJunctionCLSID(IFileSystemBindData2* This,CLSID *pclsid) { return This->lpVtbl->GetJunctionCLSID(This,pclsid); } #endif #endif #endif #endif /* __IFileSystemBindData2_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_WIN7 /***************************************************************************** * ICustomDestinationList interface */ #ifndef __ICustomDestinationList_INTERFACE_DEFINED__ #define __ICustomDestinationList_INTERFACE_DEFINED__ typedef enum KNOWNDESTCATEGORY { KDC_FREQUENT = 1, KDC_RECENT = 2 } KNOWNDESTCATEGORY; DEFINE_GUID(IID_ICustomDestinationList, 0x6332debf, 0x87b5, 0x4670, 0x90,0xc0, 0x5e,0x57,0xb4,0x08,0xa4,0x9e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6332debf-87b5-4670-90c0-5e57b408a49e") ICustomDestinationList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE BeginList( UINT *pcMinSlots, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE AppendCategory( LPCWSTR pszCategory, IObjectArray *poa) = 0; virtual HRESULT STDMETHODCALLTYPE AppendKnownCategory( KNOWNDESTCATEGORY category) = 0; virtual HRESULT STDMETHODCALLTYPE AddUserTasks( IObjectArray *poa) = 0; virtual HRESULT STDMETHODCALLTYPE CommitList( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetRemovedDestinations( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteList( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE AbortList( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICustomDestinationList, 0x6332debf, 0x87b5, 0x4670, 0x90,0xc0, 0x5e,0x57,0xb4,0x08,0xa4,0x9e) #endif #else typedef struct ICustomDestinationListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICustomDestinationList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICustomDestinationList *This); ULONG (STDMETHODCALLTYPE *Release)( ICustomDestinationList *This); /*** ICustomDestinationList methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( ICustomDestinationList *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *BeginList)( ICustomDestinationList *This, UINT *pcMinSlots, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *AppendCategory)( ICustomDestinationList *This, LPCWSTR pszCategory, IObjectArray *poa); HRESULT (STDMETHODCALLTYPE *AppendKnownCategory)( ICustomDestinationList *This, KNOWNDESTCATEGORY category); HRESULT (STDMETHODCALLTYPE *AddUserTasks)( ICustomDestinationList *This, IObjectArray *poa); HRESULT (STDMETHODCALLTYPE *CommitList)( ICustomDestinationList *This); HRESULT (STDMETHODCALLTYPE *GetRemovedDestinations)( ICustomDestinationList *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *DeleteList)( ICustomDestinationList *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *AbortList)( ICustomDestinationList *This); END_INTERFACE } ICustomDestinationListVtbl; interface ICustomDestinationList { CONST_VTBL ICustomDestinationListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICustomDestinationList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICustomDestinationList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICustomDestinationList_Release(This) (This)->lpVtbl->Release(This) /*** ICustomDestinationList methods ***/ #define ICustomDestinationList_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define ICustomDestinationList_BeginList(This,pcMinSlots,riid,ppv) (This)->lpVtbl->BeginList(This,pcMinSlots,riid,ppv) #define ICustomDestinationList_AppendCategory(This,pszCategory,poa) (This)->lpVtbl->AppendCategory(This,pszCategory,poa) #define ICustomDestinationList_AppendKnownCategory(This,category) (This)->lpVtbl->AppendKnownCategory(This,category) #define ICustomDestinationList_AddUserTasks(This,poa) (This)->lpVtbl->AddUserTasks(This,poa) #define ICustomDestinationList_CommitList(This) (This)->lpVtbl->CommitList(This) #define ICustomDestinationList_GetRemovedDestinations(This,riid,ppv) (This)->lpVtbl->GetRemovedDestinations(This,riid,ppv) #define ICustomDestinationList_DeleteList(This,pszAppID) (This)->lpVtbl->DeleteList(This,pszAppID) #define ICustomDestinationList_AbortList(This) (This)->lpVtbl->AbortList(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICustomDestinationList_QueryInterface(ICustomDestinationList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICustomDestinationList_AddRef(ICustomDestinationList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICustomDestinationList_Release(ICustomDestinationList* This) { return This->lpVtbl->Release(This); } /*** ICustomDestinationList methods ***/ static FORCEINLINE HRESULT ICustomDestinationList_SetAppID(ICustomDestinationList* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static FORCEINLINE HRESULT ICustomDestinationList_BeginList(ICustomDestinationList* This,UINT *pcMinSlots,REFIID riid,void **ppv) { return This->lpVtbl->BeginList(This,pcMinSlots,riid,ppv); } static FORCEINLINE HRESULT ICustomDestinationList_AppendCategory(ICustomDestinationList* This,LPCWSTR pszCategory,IObjectArray *poa) { return This->lpVtbl->AppendCategory(This,pszCategory,poa); } static FORCEINLINE HRESULT ICustomDestinationList_AppendKnownCategory(ICustomDestinationList* This,KNOWNDESTCATEGORY category) { return This->lpVtbl->AppendKnownCategory(This,category); } static FORCEINLINE HRESULT ICustomDestinationList_AddUserTasks(ICustomDestinationList* This,IObjectArray *poa) { return This->lpVtbl->AddUserTasks(This,poa); } static FORCEINLINE HRESULT ICustomDestinationList_CommitList(ICustomDestinationList* This) { return This->lpVtbl->CommitList(This); } static FORCEINLINE HRESULT ICustomDestinationList_GetRemovedDestinations(ICustomDestinationList* This,REFIID riid,void **ppv) { return This->lpVtbl->GetRemovedDestinations(This,riid,ppv); } static FORCEINLINE HRESULT ICustomDestinationList_DeleteList(ICustomDestinationList* This,LPCWSTR pszAppID) { return This->lpVtbl->DeleteList(This,pszAppID); } static FORCEINLINE HRESULT ICustomDestinationList_AbortList(ICustomDestinationList* This) { return This->lpVtbl->AbortList(This); } #endif #endif #endif #endif /* __ICustomDestinationList_INTERFACE_DEFINED__ */ /***************************************************************************** * IApplicationDestinations interface */ #ifndef __IApplicationDestinations_INTERFACE_DEFINED__ #define __IApplicationDestinations_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationDestinations, 0x12337d35, 0x94c6, 0x48a0, 0xbc,0xe7, 0x6a,0x9c,0x69,0xd4,0xd6,0x00); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("12337d35-94c6-48a0-bce7-6a9c69d4d600") IApplicationDestinations : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveDestination( IUnknown *punk) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAllDestinations( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationDestinations, 0x12337d35, 0x94c6, 0x48a0, 0xbc,0xe7, 0x6a,0x9c,0x69,0xd4,0xd6,0x00) #endif #else typedef struct IApplicationDestinationsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationDestinations *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationDestinations *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationDestinations *This); /*** IApplicationDestinations methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( IApplicationDestinations *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *RemoveDestination)( IApplicationDestinations *This, IUnknown *punk); HRESULT (STDMETHODCALLTYPE *RemoveAllDestinations)( IApplicationDestinations *This); END_INTERFACE } IApplicationDestinationsVtbl; interface IApplicationDestinations { CONST_VTBL IApplicationDestinationsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationDestinations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationDestinations_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationDestinations_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationDestinations methods ***/ #define IApplicationDestinations_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define IApplicationDestinations_RemoveDestination(This,punk) (This)->lpVtbl->RemoveDestination(This,punk) #define IApplicationDestinations_RemoveAllDestinations(This) (This)->lpVtbl->RemoveAllDestinations(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IApplicationDestinations_QueryInterface(IApplicationDestinations* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IApplicationDestinations_AddRef(IApplicationDestinations* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IApplicationDestinations_Release(IApplicationDestinations* This) { return This->lpVtbl->Release(This); } /*** IApplicationDestinations methods ***/ static FORCEINLINE HRESULT IApplicationDestinations_SetAppID(IApplicationDestinations* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static FORCEINLINE HRESULT IApplicationDestinations_RemoveDestination(IApplicationDestinations* This,IUnknown *punk) { return This->lpVtbl->RemoveDestination(This,punk); } static FORCEINLINE HRESULT IApplicationDestinations_RemoveAllDestinations(IApplicationDestinations* This) { return This->lpVtbl->RemoveAllDestinations(This); } #endif #endif #endif #endif /* __IApplicationDestinations_INTERFACE_DEFINED__ */ /***************************************************************************** * IApplicationDocumentLists interface */ #ifndef __IApplicationDocumentLists_INTERFACE_DEFINED__ #define __IApplicationDocumentLists_INTERFACE_DEFINED__ typedef enum APPDOCLISTTYPE { ADLT_RECENT = 0, ADLT_FREQUENT = 1 } APPDOCLISTTYPE; DEFINE_GUID(IID_IApplicationDocumentLists, 0x3c594f9f, 0x9f30, 0x47a1, 0x97,0x9a, 0xc9,0xe8,0x3d,0x3d,0x0a,0x06); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3c594f9f-9f30-47a1-979a-c9e83d3d0a06") IApplicationDocumentLists : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE GetList( APPDOCLISTTYPE listtype, UINT cItemsDesired, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationDocumentLists, 0x3c594f9f, 0x9f30, 0x47a1, 0x97,0x9a, 0xc9,0xe8,0x3d,0x3d,0x0a,0x06) #endif #else typedef struct IApplicationDocumentListsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationDocumentLists *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationDocumentLists *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationDocumentLists *This); /*** IApplicationDocumentLists methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( IApplicationDocumentLists *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *GetList)( IApplicationDocumentLists *This, APPDOCLISTTYPE listtype, UINT cItemsDesired, REFIID riid, void **ppv); END_INTERFACE } IApplicationDocumentListsVtbl; interface IApplicationDocumentLists { CONST_VTBL IApplicationDocumentListsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationDocumentLists_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationDocumentLists_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationDocumentLists_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationDocumentLists methods ***/ #define IApplicationDocumentLists_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define IApplicationDocumentLists_GetList(This,listtype,cItemsDesired,riid,ppv) (This)->lpVtbl->GetList(This,listtype,cItemsDesired,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IApplicationDocumentLists_QueryInterface(IApplicationDocumentLists* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IApplicationDocumentLists_AddRef(IApplicationDocumentLists* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IApplicationDocumentLists_Release(IApplicationDocumentLists* This) { return This->lpVtbl->Release(This); } /*** IApplicationDocumentLists methods ***/ static FORCEINLINE HRESULT IApplicationDocumentLists_SetAppID(IApplicationDocumentLists* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static FORCEINLINE HRESULT IApplicationDocumentLists_GetList(IApplicationDocumentLists* This,APPDOCLISTTYPE listtype,UINT cItemsDesired,REFIID riid,void **ppv) { return This->lpVtbl->GetList(This,listtype,cItemsDesired,riid,ppv); } #endif #endif #endif #endif /* __IApplicationDocumentLists_INTERFACE_DEFINED__ */ /***************************************************************************** * IObjectWithAppUserModelID interface */ #ifndef __IObjectWithAppUserModelID_INTERFACE_DEFINED__ #define __IObjectWithAppUserModelID_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithAppUserModelID, 0x36db0196, 0x9665, 0x46d1, 0x9b,0xa7, 0xd3,0x70,0x9e,0xec,0xf9,0xed); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("36db0196-9665-46d1-9ba7-d3709eecf9ed") IObjectWithAppUserModelID : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE GetAppID( LPWSTR *ppszAppID) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithAppUserModelID, 0x36db0196, 0x9665, 0x46d1, 0x9b,0xa7, 0xd3,0x70,0x9e,0xec,0xf9,0xed) #endif #else typedef struct IObjectWithAppUserModelIDVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithAppUserModelID *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithAppUserModelID *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithAppUserModelID *This); /*** IObjectWithAppUserModelID methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( IObjectWithAppUserModelID *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *GetAppID)( IObjectWithAppUserModelID *This, LPWSTR *ppszAppID); END_INTERFACE } IObjectWithAppUserModelIDVtbl; interface IObjectWithAppUserModelID { CONST_VTBL IObjectWithAppUserModelIDVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithAppUserModelID_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithAppUserModelID_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithAppUserModelID_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithAppUserModelID methods ***/ #define IObjectWithAppUserModelID_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define IObjectWithAppUserModelID_GetAppID(This,ppszAppID) (This)->lpVtbl->GetAppID(This,ppszAppID) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithAppUserModelID_QueryInterface(IObjectWithAppUserModelID* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithAppUserModelID_AddRef(IObjectWithAppUserModelID* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithAppUserModelID_Release(IObjectWithAppUserModelID* This) { return This->lpVtbl->Release(This); } /*** IObjectWithAppUserModelID methods ***/ static FORCEINLINE HRESULT IObjectWithAppUserModelID_SetAppID(IObjectWithAppUserModelID* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static FORCEINLINE HRESULT IObjectWithAppUserModelID_GetAppID(IObjectWithAppUserModelID* This,LPWSTR *ppszAppID) { return This->lpVtbl->GetAppID(This,ppszAppID); } #endif #endif #endif #endif /* __IObjectWithAppUserModelID_INTERFACE_DEFINED__ */ /***************************************************************************** * IObjectWithProgID interface */ #ifndef __IObjectWithProgID_INTERFACE_DEFINED__ #define __IObjectWithProgID_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithProgID, 0x71e806fb, 0x8dee, 0x46fc, 0xbf,0x8c, 0x77,0x48,0xa8,0xa1,0xae,0x13); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("71e806fb-8dee-46fc-bf8c-7748a8a1ae13") IObjectWithProgID : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetProgID( LPCWSTR pszProgID) = 0; virtual HRESULT STDMETHODCALLTYPE GetProgID( LPWSTR *ppszProgID) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithProgID, 0x71e806fb, 0x8dee, 0x46fc, 0xbf,0x8c, 0x77,0x48,0xa8,0xa1,0xae,0x13) #endif #else typedef struct IObjectWithProgIDVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithProgID *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithProgID *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithProgID *This); /*** IObjectWithProgID methods ***/ HRESULT (STDMETHODCALLTYPE *SetProgID)( IObjectWithProgID *This, LPCWSTR pszProgID); HRESULT (STDMETHODCALLTYPE *GetProgID)( IObjectWithProgID *This, LPWSTR *ppszProgID); END_INTERFACE } IObjectWithProgIDVtbl; interface IObjectWithProgID { CONST_VTBL IObjectWithProgIDVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithProgID_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithProgID_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithProgID_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithProgID methods ***/ #define IObjectWithProgID_SetProgID(This,pszProgID) (This)->lpVtbl->SetProgID(This,pszProgID) #define IObjectWithProgID_GetProgID(This,ppszProgID) (This)->lpVtbl->GetProgID(This,ppszProgID) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithProgID_QueryInterface(IObjectWithProgID* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithProgID_AddRef(IObjectWithProgID* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithProgID_Release(IObjectWithProgID* This) { return This->lpVtbl->Release(This); } /*** IObjectWithProgID methods ***/ static FORCEINLINE HRESULT IObjectWithProgID_SetProgID(IObjectWithProgID* This,LPCWSTR pszProgID) { return This->lpVtbl->SetProgID(This,pszProgID); } static FORCEINLINE HRESULT IObjectWithProgID_GetProgID(IObjectWithProgID* This,LPWSTR *ppszProgID) { return This->lpVtbl->GetProgID(This,ppszProgID); } #endif #endif #endif #endif /* __IObjectWithProgID_INTERFACE_DEFINED__ */ /***************************************************************************** * IUpdateIDList interface */ #ifndef __IUpdateIDList_INTERFACE_DEFINED__ #define __IUpdateIDList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IUpdateIDList, 0x6589b6d2, 0x5f8d, 0x4b9e, 0xb7,0xe0, 0x23,0xcd,0xd9,0x71,0x7d,0x8c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6589b6d2-5f8d-4b9e-b7e0-23cdd9717d8c") IUpdateIDList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Update( IBindCtx *pbc, PCUITEMID_CHILD pidlIn, PITEMID_CHILD *ppidlOut) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IUpdateIDList, 0x6589b6d2, 0x5f8d, 0x4b9e, 0xb7,0xe0, 0x23,0xcd,0xd9,0x71,0x7d,0x8c) #endif #else typedef struct IUpdateIDListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IUpdateIDList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IUpdateIDList *This); ULONG (STDMETHODCALLTYPE *Release)( IUpdateIDList *This); /*** IUpdateIDList methods ***/ HRESULT (STDMETHODCALLTYPE *Update)( IUpdateIDList *This, IBindCtx *pbc, PCUITEMID_CHILD pidlIn, PITEMID_CHILD *ppidlOut); END_INTERFACE } IUpdateIDListVtbl; interface IUpdateIDList { CONST_VTBL IUpdateIDListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IUpdateIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IUpdateIDList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IUpdateIDList_Release(This) (This)->lpVtbl->Release(This) /*** IUpdateIDList methods ***/ #define IUpdateIDList_Update(This,pbc,pidlIn,ppidlOut) (This)->lpVtbl->Update(This,pbc,pidlIn,ppidlOut) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IUpdateIDList_QueryInterface(IUpdateIDList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IUpdateIDList_AddRef(IUpdateIDList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IUpdateIDList_Release(IUpdateIDList* This) { return This->lpVtbl->Release(This); } /*** IUpdateIDList methods ***/ static FORCEINLINE HRESULT IUpdateIDList_Update(IUpdateIDList* This,IBindCtx *pbc,PCUITEMID_CHILD pidlIn,PITEMID_CHILD *ppidlOut) { return This->lpVtbl->Update(This,pbc,pidlIn,ppidlOut); } #endif #endif #endif #endif /* __IUpdateIDList_INTERFACE_DEFINED__ */ SHSTDAPI SetCurrentProcessExplicitAppUserModelID(PCWSTR AppID); SHSTDAPI GetCurrentProcessExplicitAppUserModelID(PWSTR *AppID); #endif /***************************************************************************** * IDesktopGadget interface */ #ifndef __IDesktopGadget_INTERFACE_DEFINED__ #define __IDesktopGadget_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDesktopGadget, 0xc1646bc4, 0xf298, 0x4f91, 0xa2,0x04, 0xeb,0x2d,0xd1,0x70,0x9d,0x1a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c1646bc4-f298-4f91-a204-eb2dd1709d1a") IDesktopGadget : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RunGadget( LPCWSTR gadgetPath) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDesktopGadget, 0xc1646bc4, 0xf298, 0x4f91, 0xa2,0x04, 0xeb,0x2d,0xd1,0x70,0x9d,0x1a) #endif #else typedef struct IDesktopGadgetVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDesktopGadget *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDesktopGadget *This); ULONG (STDMETHODCALLTYPE *Release)( IDesktopGadget *This); /*** IDesktopGadget methods ***/ HRESULT (STDMETHODCALLTYPE *RunGadget)( IDesktopGadget *This, LPCWSTR gadgetPath); END_INTERFACE } IDesktopGadgetVtbl; interface IDesktopGadget { CONST_VTBL IDesktopGadgetVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDesktopGadget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDesktopGadget_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDesktopGadget_Release(This) (This)->lpVtbl->Release(This) /*** IDesktopGadget methods ***/ #define IDesktopGadget_RunGadget(This,gadgetPath) (This)->lpVtbl->RunGadget(This,gadgetPath) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDesktopGadget_QueryInterface(IDesktopGadget* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDesktopGadget_AddRef(IDesktopGadget* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDesktopGadget_Release(IDesktopGadget* This) { return This->lpVtbl->Release(This); } /*** IDesktopGadget methods ***/ static FORCEINLINE HRESULT IDesktopGadget_RunGadget(IDesktopGadget* This,LPCWSTR gadgetPath) { return This->lpVtbl->RunGadget(This,gadgetPath); } #endif #endif #endif #endif /* __IDesktopGadget_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_WIN8 /***************************************************************************** * IDesktopWallpaper interface */ #ifndef __IDesktopWallpaper_INTERFACE_DEFINED__ #define __IDesktopWallpaper_INTERFACE_DEFINED__ typedef enum DESKTOP_SLIDESHOW_OPTIONS { DSO_SHUFFLEIMAGES = 0x1 } DESKTOP_SLIDESHOW_OPTIONS; DEFINE_ENUM_FLAG_OPERATORS(DESKTOP_SLIDESHOW_OPTIONS); typedef enum DESKTOP_SLIDESHOW_STATE { DSS_ENABLED = 0x1, DSS_SLIDESHOW = 0x2, DSS_DISABLED_BY_REMOTE_SESSION = 0x4 } DESKTOP_SLIDESHOW_STATE; DEFINE_ENUM_FLAG_OPERATORS(DESKTOP_SLIDESHOW_STATE); typedef enum DESKTOP_SLIDESHOW_DIRECTION { DSD_FORWARD = 0, DSD_BACKWARD = 1 } DESKTOP_SLIDESHOW_DIRECTION; typedef enum DESKTOP_WALLPAPER_POSITION { DWPOS_CENTER = 0, DWPOS_TILE = 1, DWPOS_STRETCH = 2, DWPOS_FIT = 3, DWPOS_FILL = 4, DWPOS_SPAN = 5 } DESKTOP_WALLPAPER_POSITION; DEFINE_GUID(IID_IDesktopWallpaper, 0xb92b56a9, 0x8b55, 0x4e14, 0x9a,0x89, 0x01,0x99,0xbb,0xb6,0xf9,0x3b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b92b56a9-8b55-4e14-9a89-0199bbb6f93b") IDesktopWallpaper : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetWallpaper( LPCWSTR monitorID, LPCWSTR wallpaper) = 0; virtual HRESULT STDMETHODCALLTYPE GetWallpaper( LPCWSTR monitorID, LPWSTR *wallpaper) = 0; virtual HRESULT STDMETHODCALLTYPE GetMonitorDevicePathAt( UINT monitorIndex, LPWSTR *monitorID) = 0; virtual HRESULT STDMETHODCALLTYPE GetMonitorDevicePathCount( UINT *count) = 0; virtual HRESULT STDMETHODCALLTYPE GetMonitorRECT( LPCWSTR monitorID, RECT *displayRect) = 0; virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( COLORREF color) = 0; virtual HRESULT STDMETHODCALLTYPE GetBackgroundColor( COLORREF *color) = 0; virtual HRESULT STDMETHODCALLTYPE SetPosition( DESKTOP_WALLPAPER_POSITION position) = 0; virtual HRESULT STDMETHODCALLTYPE GetPosition( DESKTOP_WALLPAPER_POSITION *position) = 0; virtual HRESULT STDMETHODCALLTYPE SetSlideshow( IShellItemArray *items) = 0; virtual HRESULT STDMETHODCALLTYPE GetSlideshow( IShellItemArray **items) = 0; virtual HRESULT STDMETHODCALLTYPE SetSlideshowOptions( DESKTOP_SLIDESHOW_OPTIONS options, UINT slideshowTick) = 0; virtual HRESULT STDMETHODCALLTYPE GetSlideshowOptions( DESKTOP_SLIDESHOW_OPTIONS *options, UINT *slideshowTick) = 0; virtual HRESULT STDMETHODCALLTYPE AdvanceSlideshow( LPCWSTR monitorID, DESKTOP_SLIDESHOW_DIRECTION direction) = 0; virtual HRESULT STDMETHODCALLTYPE GetStatus( DESKTOP_SLIDESHOW_STATE *state) = 0; virtual HRESULT STDMETHODCALLTYPE Enable( WINBOOL enable) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDesktopWallpaper, 0xb92b56a9, 0x8b55, 0x4e14, 0x9a,0x89, 0x01,0x99,0xbb,0xb6,0xf9,0x3b) #endif #else typedef struct IDesktopWallpaperVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDesktopWallpaper *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDesktopWallpaper *This); ULONG (STDMETHODCALLTYPE *Release)( IDesktopWallpaper *This); /*** IDesktopWallpaper methods ***/ HRESULT (STDMETHODCALLTYPE *SetWallpaper)( IDesktopWallpaper *This, LPCWSTR monitorID, LPCWSTR wallpaper); HRESULT (STDMETHODCALLTYPE *GetWallpaper)( IDesktopWallpaper *This, LPCWSTR monitorID, LPWSTR *wallpaper); HRESULT (STDMETHODCALLTYPE *GetMonitorDevicePathAt)( IDesktopWallpaper *This, UINT monitorIndex, LPWSTR *monitorID); HRESULT (STDMETHODCALLTYPE *GetMonitorDevicePathCount)( IDesktopWallpaper *This, UINT *count); HRESULT (STDMETHODCALLTYPE *GetMonitorRECT)( IDesktopWallpaper *This, LPCWSTR monitorID, RECT *displayRect); HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IDesktopWallpaper *This, COLORREF color); HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( IDesktopWallpaper *This, COLORREF *color); HRESULT (STDMETHODCALLTYPE *SetPosition)( IDesktopWallpaper *This, DESKTOP_WALLPAPER_POSITION position); HRESULT (STDMETHODCALLTYPE *GetPosition)( IDesktopWallpaper *This, DESKTOP_WALLPAPER_POSITION *position); HRESULT (STDMETHODCALLTYPE *SetSlideshow)( IDesktopWallpaper *This, IShellItemArray *items); HRESULT (STDMETHODCALLTYPE *GetSlideshow)( IDesktopWallpaper *This, IShellItemArray **items); HRESULT (STDMETHODCALLTYPE *SetSlideshowOptions)( IDesktopWallpaper *This, DESKTOP_SLIDESHOW_OPTIONS options, UINT slideshowTick); HRESULT (STDMETHODCALLTYPE *GetSlideshowOptions)( IDesktopWallpaper *This, DESKTOP_SLIDESHOW_OPTIONS *options, UINT *slideshowTick); HRESULT (STDMETHODCALLTYPE *AdvanceSlideshow)( IDesktopWallpaper *This, LPCWSTR monitorID, DESKTOP_SLIDESHOW_DIRECTION direction); HRESULT (STDMETHODCALLTYPE *GetStatus)( IDesktopWallpaper *This, DESKTOP_SLIDESHOW_STATE *state); HRESULT (STDMETHODCALLTYPE *Enable)( IDesktopWallpaper *This, WINBOOL enable); END_INTERFACE } IDesktopWallpaperVtbl; interface IDesktopWallpaper { CONST_VTBL IDesktopWallpaperVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDesktopWallpaper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDesktopWallpaper_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDesktopWallpaper_Release(This) (This)->lpVtbl->Release(This) /*** IDesktopWallpaper methods ***/ #define IDesktopWallpaper_SetWallpaper(This,monitorID,wallpaper) (This)->lpVtbl->SetWallpaper(This,monitorID,wallpaper) #define IDesktopWallpaper_GetWallpaper(This,monitorID,wallpaper) (This)->lpVtbl->GetWallpaper(This,monitorID,wallpaper) #define IDesktopWallpaper_GetMonitorDevicePathAt(This,monitorIndex,monitorID) (This)->lpVtbl->GetMonitorDevicePathAt(This,monitorIndex,monitorID) #define IDesktopWallpaper_GetMonitorDevicePathCount(This,count) (This)->lpVtbl->GetMonitorDevicePathCount(This,count) #define IDesktopWallpaper_GetMonitorRECT(This,monitorID,displayRect) (This)->lpVtbl->GetMonitorRECT(This,monitorID,displayRect) #define IDesktopWallpaper_SetBackgroundColor(This,color) (This)->lpVtbl->SetBackgroundColor(This,color) #define IDesktopWallpaper_GetBackgroundColor(This,color) (This)->lpVtbl->GetBackgroundColor(This,color) #define IDesktopWallpaper_SetPosition(This,position) (This)->lpVtbl->SetPosition(This,position) #define IDesktopWallpaper_GetPosition(This,position) (This)->lpVtbl->GetPosition(This,position) #define IDesktopWallpaper_SetSlideshow(This,items) (This)->lpVtbl->SetSlideshow(This,items) #define IDesktopWallpaper_GetSlideshow(This,items) (This)->lpVtbl->GetSlideshow(This,items) #define IDesktopWallpaper_SetSlideshowOptions(This,options,slideshowTick) (This)->lpVtbl->SetSlideshowOptions(This,options,slideshowTick) #define IDesktopWallpaper_GetSlideshowOptions(This,options,slideshowTick) (This)->lpVtbl->GetSlideshowOptions(This,options,slideshowTick) #define IDesktopWallpaper_AdvanceSlideshow(This,monitorID,direction) (This)->lpVtbl->AdvanceSlideshow(This,monitorID,direction) #define IDesktopWallpaper_GetStatus(This,state) (This)->lpVtbl->GetStatus(This,state) #define IDesktopWallpaper_Enable(This,enable) (This)->lpVtbl->Enable(This,enable) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDesktopWallpaper_QueryInterface(IDesktopWallpaper* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDesktopWallpaper_AddRef(IDesktopWallpaper* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDesktopWallpaper_Release(IDesktopWallpaper* This) { return This->lpVtbl->Release(This); } /*** IDesktopWallpaper methods ***/ static FORCEINLINE HRESULT IDesktopWallpaper_SetWallpaper(IDesktopWallpaper* This,LPCWSTR monitorID,LPCWSTR wallpaper) { return This->lpVtbl->SetWallpaper(This,monitorID,wallpaper); } static FORCEINLINE HRESULT IDesktopWallpaper_GetWallpaper(IDesktopWallpaper* This,LPCWSTR monitorID,LPWSTR *wallpaper) { return This->lpVtbl->GetWallpaper(This,monitorID,wallpaper); } static FORCEINLINE HRESULT IDesktopWallpaper_GetMonitorDevicePathAt(IDesktopWallpaper* This,UINT monitorIndex,LPWSTR *monitorID) { return This->lpVtbl->GetMonitorDevicePathAt(This,monitorIndex,monitorID); } static FORCEINLINE HRESULT IDesktopWallpaper_GetMonitorDevicePathCount(IDesktopWallpaper* This,UINT *count) { return This->lpVtbl->GetMonitorDevicePathCount(This,count); } static FORCEINLINE HRESULT IDesktopWallpaper_GetMonitorRECT(IDesktopWallpaper* This,LPCWSTR monitorID,RECT *displayRect) { return This->lpVtbl->GetMonitorRECT(This,monitorID,displayRect); } static FORCEINLINE HRESULT IDesktopWallpaper_SetBackgroundColor(IDesktopWallpaper* This,COLORREF color) { return This->lpVtbl->SetBackgroundColor(This,color); } static FORCEINLINE HRESULT IDesktopWallpaper_GetBackgroundColor(IDesktopWallpaper* This,COLORREF *color) { return This->lpVtbl->GetBackgroundColor(This,color); } static FORCEINLINE HRESULT IDesktopWallpaper_SetPosition(IDesktopWallpaper* This,DESKTOP_WALLPAPER_POSITION position) { return This->lpVtbl->SetPosition(This,position); } static FORCEINLINE HRESULT IDesktopWallpaper_GetPosition(IDesktopWallpaper* This,DESKTOP_WALLPAPER_POSITION *position) { return This->lpVtbl->GetPosition(This,position); } static FORCEINLINE HRESULT IDesktopWallpaper_SetSlideshow(IDesktopWallpaper* This,IShellItemArray *items) { return This->lpVtbl->SetSlideshow(This,items); } static FORCEINLINE HRESULT IDesktopWallpaper_GetSlideshow(IDesktopWallpaper* This,IShellItemArray **items) { return This->lpVtbl->GetSlideshow(This,items); } static FORCEINLINE HRESULT IDesktopWallpaper_SetSlideshowOptions(IDesktopWallpaper* This,DESKTOP_SLIDESHOW_OPTIONS options,UINT slideshowTick) { return This->lpVtbl->SetSlideshowOptions(This,options,slideshowTick); } static FORCEINLINE HRESULT IDesktopWallpaper_GetSlideshowOptions(IDesktopWallpaper* This,DESKTOP_SLIDESHOW_OPTIONS *options,UINT *slideshowTick) { return This->lpVtbl->GetSlideshowOptions(This,options,slideshowTick); } static FORCEINLINE HRESULT IDesktopWallpaper_AdvanceSlideshow(IDesktopWallpaper* This,LPCWSTR monitorID,DESKTOP_SLIDESHOW_DIRECTION direction) { return This->lpVtbl->AdvanceSlideshow(This,monitorID,direction); } static FORCEINLINE HRESULT IDesktopWallpaper_GetStatus(IDesktopWallpaper* This,DESKTOP_SLIDESHOW_STATE *state) { return This->lpVtbl->GetStatus(This,state); } static FORCEINLINE HRESULT IDesktopWallpaper_Enable(IDesktopWallpaper* This,WINBOOL enable) { return This->lpVtbl->Enable(This,enable); } #endif #endif #endif #endif /* __IDesktopWallpaper_INTERFACE_DEFINED__ */ #endif #define HOMEGROUP_SECURITY_GROUP_MULTI L"HUG" #define HOMEGROUP_SECURITY_GROUP L"HomeUsers" /***************************************************************************** * IHomeGroup interface */ #ifndef __IHomeGroup_INTERFACE_DEFINED__ #define __IHomeGroup_INTERFACE_DEFINED__ typedef enum HOMEGROUPSHARINGCHOICES { HGSC_NONE = 0x0, HGSC_MUSICLIBRARY = 0x1, HGSC_PICTURESLIBRARY = 0x2, HGSC_VIDEOSLIBRARY = 0x4, HGSC_DOCUMENTSLIBRARY = 0x8, HGSC_PRINTERS = 0x10 } HOMEGROUPSHARINGCHOICES; DEFINE_ENUM_FLAG_OPERATORS(HOMEGROUPSHARINGCHOICES) DEFINE_GUID(IID_IHomeGroup, 0x7a3bd1d9, 0x35a9, 0x4fb3, 0xa4,0x67, 0xf4,0x8c,0xac,0x35,0xe2,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7a3bd1d9-35a9-4fb3-a467-f48cac35e2d0") IHomeGroup : public IUnknown { virtual HRESULT STDMETHODCALLTYPE IsMember( WINBOOL *member) = 0; virtual HRESULT STDMETHODCALLTYPE ShowSharingWizard( HWND owner, HOMEGROUPSHARINGCHOICES *sharingchoices) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IHomeGroup, 0x7a3bd1d9, 0x35a9, 0x4fb3, 0xa4,0x67, 0xf4,0x8c,0xac,0x35,0xe2,0xd0) #endif #else typedef struct IHomeGroupVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IHomeGroup *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IHomeGroup *This); ULONG (STDMETHODCALLTYPE *Release)( IHomeGroup *This); /*** IHomeGroup methods ***/ HRESULT (STDMETHODCALLTYPE *IsMember)( IHomeGroup *This, WINBOOL *member); HRESULT (STDMETHODCALLTYPE *ShowSharingWizard)( IHomeGroup *This, HWND owner, HOMEGROUPSHARINGCHOICES *sharingchoices); END_INTERFACE } IHomeGroupVtbl; interface IHomeGroup { CONST_VTBL IHomeGroupVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IHomeGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IHomeGroup_AddRef(This) (This)->lpVtbl->AddRef(This) #define IHomeGroup_Release(This) (This)->lpVtbl->Release(This) /*** IHomeGroup methods ***/ #define IHomeGroup_IsMember(This,member) (This)->lpVtbl->IsMember(This,member) #define IHomeGroup_ShowSharingWizard(This,owner,sharingchoices) (This)->lpVtbl->ShowSharingWizard(This,owner,sharingchoices) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IHomeGroup_QueryInterface(IHomeGroup* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IHomeGroup_AddRef(IHomeGroup* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IHomeGroup_Release(IHomeGroup* This) { return This->lpVtbl->Release(This); } /*** IHomeGroup methods ***/ static FORCEINLINE HRESULT IHomeGroup_IsMember(IHomeGroup* This,WINBOOL *member) { return This->lpVtbl->IsMember(This,member); } static FORCEINLINE HRESULT IHomeGroup_ShowSharingWizard(IHomeGroup* This,HWND owner,HOMEGROUPSHARINGCHOICES *sharingchoices) { return This->lpVtbl->ShowSharingWizard(This,owner,sharingchoices); } #endif #endif #endif #endif /* __IHomeGroup_INTERFACE_DEFINED__ */ /***************************************************************************** * IInitializeWithPropertyStore interface */ #ifndef __IInitializeWithPropertyStore_INTERFACE_DEFINED__ #define __IInitializeWithPropertyStore_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeWithPropertyStore, 0xc3e12eb5, 0x7d8d, 0x44f8, 0xb6,0xdd, 0x0e,0x77,0xb3,0x4d,0x6d,0xe4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c3e12eb5-7d8d-44f8-b6dd-0e77b34d6de4") IInitializeWithPropertyStore : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( IPropertyStore *pps) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeWithPropertyStore, 0xc3e12eb5, 0x7d8d, 0x44f8, 0xb6,0xdd, 0x0e,0x77,0xb3,0x4d,0x6d,0xe4) #endif #else typedef struct IInitializeWithPropertyStoreVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeWithPropertyStore *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeWithPropertyStore *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeWithPropertyStore *This); /*** IInitializeWithPropertyStore methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeWithPropertyStore *This, IPropertyStore *pps); END_INTERFACE } IInitializeWithPropertyStoreVtbl; interface IInitializeWithPropertyStore { CONST_VTBL IInitializeWithPropertyStoreVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeWithPropertyStore_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeWithPropertyStore_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeWithPropertyStore_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeWithPropertyStore methods ***/ #define IInitializeWithPropertyStore_Initialize(This,pps) (This)->lpVtbl->Initialize(This,pps) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeWithPropertyStore_QueryInterface(IInitializeWithPropertyStore* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeWithPropertyStore_AddRef(IInitializeWithPropertyStore* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeWithPropertyStore_Release(IInitializeWithPropertyStore* This) { return This->lpVtbl->Release(This); } /*** IInitializeWithPropertyStore methods ***/ static FORCEINLINE HRESULT IInitializeWithPropertyStore_Initialize(IInitializeWithPropertyStore* This,IPropertyStore *pps) { return This->lpVtbl->Initialize(This,pps); } #endif #endif #endif #endif /* __IInitializeWithPropertyStore_INTERFACE_DEFINED__ */ /***************************************************************************** * IOpenSearchSource interface */ #ifndef __IOpenSearchSource_INTERFACE_DEFINED__ #define __IOpenSearchSource_INTERFACE_DEFINED__ DEFINE_GUID(IID_IOpenSearchSource, 0xf0ee7333, 0xe6fc, 0x479b, 0x9f,0x25, 0xa8,0x60,0xc2,0x34,0xa3,0x8e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f0ee7333-e6fc-479b-9f25-a860c234a38e") IOpenSearchSource : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetResults( HWND hwnd, LPCWSTR pszQuery, DWORD dwStartIndex, DWORD dwCount, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IOpenSearchSource, 0xf0ee7333, 0xe6fc, 0x479b, 0x9f,0x25, 0xa8,0x60,0xc2,0x34,0xa3,0x8e) #endif #else typedef struct IOpenSearchSourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IOpenSearchSource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IOpenSearchSource *This); ULONG (STDMETHODCALLTYPE *Release)( IOpenSearchSource *This); /*** IOpenSearchSource methods ***/ HRESULT (STDMETHODCALLTYPE *GetResults)( IOpenSearchSource *This, HWND hwnd, LPCWSTR pszQuery, DWORD dwStartIndex, DWORD dwCount, REFIID riid, void **ppv); END_INTERFACE } IOpenSearchSourceVtbl; interface IOpenSearchSource { CONST_VTBL IOpenSearchSourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IOpenSearchSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IOpenSearchSource_AddRef(This) (This)->lpVtbl->AddRef(This) #define IOpenSearchSource_Release(This) (This)->lpVtbl->Release(This) /*** IOpenSearchSource methods ***/ #define IOpenSearchSource_GetResults(This,hwnd,pszQuery,dwStartIndex,dwCount,riid,ppv) (This)->lpVtbl->GetResults(This,hwnd,pszQuery,dwStartIndex,dwCount,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IOpenSearchSource_QueryInterface(IOpenSearchSource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IOpenSearchSource_AddRef(IOpenSearchSource* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IOpenSearchSource_Release(IOpenSearchSource* This) { return This->lpVtbl->Release(This); } /*** IOpenSearchSource methods ***/ static FORCEINLINE HRESULT IOpenSearchSource_GetResults(IOpenSearchSource* This,HWND hwnd,LPCWSTR pszQuery,DWORD dwStartIndex,DWORD dwCount,REFIID riid,void **ppv) { return This->lpVtbl->GetResults(This,hwnd,pszQuery,dwStartIndex,dwCount,riid,ppv); } #endif #endif #endif #endif /* __IOpenSearchSource_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellLibrary interface */ #ifndef __IShellLibrary_INTERFACE_DEFINED__ #define __IShellLibrary_INTERFACE_DEFINED__ typedef enum LIBRARYFOLDERFILTER { LFF_FORCEFILESYSTEM = 1, LFF_STORAGEITEMS = 2, LFF_ALLITEMS = 3 } LIBRARYFOLDERFILTER; typedef enum LIBRARYOPTIONFLAGS { LOF_DEFAULT = 0x0, LOF_PINNEDTONAVPANE = 0x1, LOF_MASK_ALL = 0x1 } LIBRARYOPTIONFLAGS; DEFINE_ENUM_FLAG_OPERATORS(LIBRARYOPTIONFLAGS) typedef enum DEFAULTSAVEFOLDERTYPE { DSFT_DETECT = 1, DSFT_PRIVATE = 2, DSFT_PUBLIC = 3 } DEFAULTSAVEFOLDERTYPE; typedef enum LIBRARYSAVEFLAGS { LSF_FAILIFTHERE = 0x0, LSF_OVERRIDEEXISTING = 0x1, LSF_MAKEUNIQUENAME = 0x2 } LIBRARYSAVEFLAGS; DEFINE_ENUM_FLAG_OPERATORS(LIBRARYSAVEFLAGS) DEFINE_GUID(IID_IShellLibrary, 0x11a66efa, 0x382e, 0x451a, 0x92,0x34, 0x1e,0x0e,0x12,0xef,0x30,0x85); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("11a66efa-382e-451a-9234-1e0e12ef3085") IShellLibrary : public IUnknown { virtual HRESULT STDMETHODCALLTYPE LoadLibraryFromItem( IShellItem *psiLibrary, DWORD grfMode) = 0; virtual HRESULT STDMETHODCALLTYPE LoadLibraryFromKnownFolder( REFKNOWNFOLDERID kfidLibrary, DWORD grfMode) = 0; virtual HRESULT STDMETHODCALLTYPE AddFolder( IShellItem *psiLocation) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveFolder( IShellItem *psiLocation) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolders( LIBRARYFOLDERFILTER lff, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE ResolveFolder( IShellItem *psiFolderToResolve, DWORD dwTimeout, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultSaveFolder( DEFAULTSAVEFOLDERTYPE dsft, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE SetDefaultSaveFolder( DEFAULTSAVEFOLDERTYPE dsft, IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE GetOptions( LIBRARYOPTIONFLAGS *plofOptions) = 0; virtual HRESULT STDMETHODCALLTYPE SetOptions( LIBRARYOPTIONFLAGS lofMask, LIBRARYOPTIONFLAGS lofOptions) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderType( FOLDERTYPEID *pftid) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolderType( REFFOLDERTYPEID ftid) = 0; virtual HRESULT STDMETHODCALLTYPE GetIcon( LPWSTR *ppszIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetIcon( LPCWSTR pszIcon) = 0; virtual HRESULT STDMETHODCALLTYPE Commit( ) = 0; virtual HRESULT STDMETHODCALLTYPE Save( IShellItem *psiFolderToSaveIn, LPCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, IShellItem **ppsiSavedTo) = 0; virtual HRESULT STDMETHODCALLTYPE SaveInKnownFolder( REFKNOWNFOLDERID kfidToSaveIn, LPCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, IShellItem **ppsiSavedTo) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLibrary, 0x11a66efa, 0x382e, 0x451a, 0x92,0x34, 0x1e,0x0e,0x12,0xef,0x30,0x85) #endif #else typedef struct IShellLibraryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLibrary *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLibrary *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLibrary *This); /*** IShellLibrary methods ***/ HRESULT (STDMETHODCALLTYPE *LoadLibraryFromItem)( IShellLibrary *This, IShellItem *psiLibrary, DWORD grfMode); HRESULT (STDMETHODCALLTYPE *LoadLibraryFromKnownFolder)( IShellLibrary *This, REFKNOWNFOLDERID kfidLibrary, DWORD grfMode); HRESULT (STDMETHODCALLTYPE *AddFolder)( IShellLibrary *This, IShellItem *psiLocation); HRESULT (STDMETHODCALLTYPE *RemoveFolder)( IShellLibrary *This, IShellItem *psiLocation); HRESULT (STDMETHODCALLTYPE *GetFolders)( IShellLibrary *This, LIBRARYFOLDERFILTER lff, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *ResolveFolder)( IShellLibrary *This, IShellItem *psiFolderToResolve, DWORD dwTimeout, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetDefaultSaveFolder)( IShellLibrary *This, DEFAULTSAVEFOLDERTYPE dsft, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *SetDefaultSaveFolder)( IShellLibrary *This, DEFAULTSAVEFOLDERTYPE dsft, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetOptions)( IShellLibrary *This, LIBRARYOPTIONFLAGS *plofOptions); HRESULT (STDMETHODCALLTYPE *SetOptions)( IShellLibrary *This, LIBRARYOPTIONFLAGS lofMask, LIBRARYOPTIONFLAGS lofOptions); HRESULT (STDMETHODCALLTYPE *GetFolderType)( IShellLibrary *This, FOLDERTYPEID *pftid); HRESULT (STDMETHODCALLTYPE *SetFolderType)( IShellLibrary *This, REFFOLDERTYPEID ftid); HRESULT (STDMETHODCALLTYPE *GetIcon)( IShellLibrary *This, LPWSTR *ppszIcon); HRESULT (STDMETHODCALLTYPE *SetIcon)( IShellLibrary *This, LPCWSTR pszIcon); HRESULT (STDMETHODCALLTYPE *Commit)( IShellLibrary *This); HRESULT (STDMETHODCALLTYPE *Save)( IShellLibrary *This, IShellItem *psiFolderToSaveIn, LPCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, IShellItem **ppsiSavedTo); HRESULT (STDMETHODCALLTYPE *SaveInKnownFolder)( IShellLibrary *This, REFKNOWNFOLDERID kfidToSaveIn, LPCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, IShellItem **ppsiSavedTo); END_INTERFACE } IShellLibraryVtbl; interface IShellLibrary { CONST_VTBL IShellLibraryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLibrary_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLibrary_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLibrary_Release(This) (This)->lpVtbl->Release(This) /*** IShellLibrary methods ***/ #define IShellLibrary_LoadLibraryFromItem(This,psiLibrary,grfMode) (This)->lpVtbl->LoadLibraryFromItem(This,psiLibrary,grfMode) #define IShellLibrary_LoadLibraryFromKnownFolder(This,kfidLibrary,grfMode) (This)->lpVtbl->LoadLibraryFromKnownFolder(This,kfidLibrary,grfMode) #define IShellLibrary_AddFolder(This,psiLocation) (This)->lpVtbl->AddFolder(This,psiLocation) #define IShellLibrary_RemoveFolder(This,psiLocation) (This)->lpVtbl->RemoveFolder(This,psiLocation) #define IShellLibrary_GetFolders(This,lff,riid,ppv) (This)->lpVtbl->GetFolders(This,lff,riid,ppv) #define IShellLibrary_ResolveFolder(This,psiFolderToResolve,dwTimeout,riid,ppv) (This)->lpVtbl->ResolveFolder(This,psiFolderToResolve,dwTimeout,riid,ppv) #define IShellLibrary_GetDefaultSaveFolder(This,dsft,riid,ppv) (This)->lpVtbl->GetDefaultSaveFolder(This,dsft,riid,ppv) #define IShellLibrary_SetDefaultSaveFolder(This,dsft,psi) (This)->lpVtbl->SetDefaultSaveFolder(This,dsft,psi) #define IShellLibrary_GetOptions(This,plofOptions) (This)->lpVtbl->GetOptions(This,plofOptions) #define IShellLibrary_SetOptions(This,lofMask,lofOptions) (This)->lpVtbl->SetOptions(This,lofMask,lofOptions) #define IShellLibrary_GetFolderType(This,pftid) (This)->lpVtbl->GetFolderType(This,pftid) #define IShellLibrary_SetFolderType(This,ftid) (This)->lpVtbl->SetFolderType(This,ftid) #define IShellLibrary_GetIcon(This,ppszIcon) (This)->lpVtbl->GetIcon(This,ppszIcon) #define IShellLibrary_SetIcon(This,pszIcon) (This)->lpVtbl->SetIcon(This,pszIcon) #define IShellLibrary_Commit(This) (This)->lpVtbl->Commit(This) #define IShellLibrary_Save(This,psiFolderToSaveIn,pszLibraryName,lsf,ppsiSavedTo) (This)->lpVtbl->Save(This,psiFolderToSaveIn,pszLibraryName,lsf,ppsiSavedTo) #define IShellLibrary_SaveInKnownFolder(This,kfidToSaveIn,pszLibraryName,lsf,ppsiSavedTo) (This)->lpVtbl->SaveInKnownFolder(This,kfidToSaveIn,pszLibraryName,lsf,ppsiSavedTo) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IShellLibrary_QueryInterface(IShellLibrary* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IShellLibrary_AddRef(IShellLibrary* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IShellLibrary_Release(IShellLibrary* This) { return This->lpVtbl->Release(This); } /*** IShellLibrary methods ***/ static FORCEINLINE HRESULT IShellLibrary_LoadLibraryFromItem(IShellLibrary* This,IShellItem *psiLibrary,DWORD grfMode) { return This->lpVtbl->LoadLibraryFromItem(This,psiLibrary,grfMode); } static FORCEINLINE HRESULT IShellLibrary_LoadLibraryFromKnownFolder(IShellLibrary* This,REFKNOWNFOLDERID kfidLibrary,DWORD grfMode) { return This->lpVtbl->LoadLibraryFromKnownFolder(This,kfidLibrary,grfMode); } static FORCEINLINE HRESULT IShellLibrary_AddFolder(IShellLibrary* This,IShellItem *psiLocation) { return This->lpVtbl->AddFolder(This,psiLocation); } static FORCEINLINE HRESULT IShellLibrary_RemoveFolder(IShellLibrary* This,IShellItem *psiLocation) { return This->lpVtbl->RemoveFolder(This,psiLocation); } static FORCEINLINE HRESULT IShellLibrary_GetFolders(IShellLibrary* This,LIBRARYFOLDERFILTER lff,REFIID riid,void **ppv) { return This->lpVtbl->GetFolders(This,lff,riid,ppv); } static FORCEINLINE HRESULT IShellLibrary_ResolveFolder(IShellLibrary* This,IShellItem *psiFolderToResolve,DWORD dwTimeout,REFIID riid,void **ppv) { return This->lpVtbl->ResolveFolder(This,psiFolderToResolve,dwTimeout,riid,ppv); } static FORCEINLINE HRESULT IShellLibrary_GetDefaultSaveFolder(IShellLibrary* This,DEFAULTSAVEFOLDERTYPE dsft,REFIID riid,void **ppv) { return This->lpVtbl->GetDefaultSaveFolder(This,dsft,riid,ppv); } static FORCEINLINE HRESULT IShellLibrary_SetDefaultSaveFolder(IShellLibrary* This,DEFAULTSAVEFOLDERTYPE dsft,IShellItem *psi) { return This->lpVtbl->SetDefaultSaveFolder(This,dsft,psi); } static FORCEINLINE HRESULT IShellLibrary_GetOptions(IShellLibrary* This,LIBRARYOPTIONFLAGS *plofOptions) { return This->lpVtbl->GetOptions(This,plofOptions); } static FORCEINLINE HRESULT IShellLibrary_SetOptions(IShellLibrary* This,LIBRARYOPTIONFLAGS lofMask,LIBRARYOPTIONFLAGS lofOptions) { return This->lpVtbl->SetOptions(This,lofMask,lofOptions); } static FORCEINLINE HRESULT IShellLibrary_GetFolderType(IShellLibrary* This,FOLDERTYPEID *pftid) { return This->lpVtbl->GetFolderType(This,pftid); } static FORCEINLINE HRESULT IShellLibrary_SetFolderType(IShellLibrary* This,REFFOLDERTYPEID ftid) { return This->lpVtbl->SetFolderType(This,ftid); } static FORCEINLINE HRESULT IShellLibrary_GetIcon(IShellLibrary* This,LPWSTR *ppszIcon) { return This->lpVtbl->GetIcon(This,ppszIcon); } static FORCEINLINE HRESULT IShellLibrary_SetIcon(IShellLibrary* This,LPCWSTR pszIcon) { return This->lpVtbl->SetIcon(This,pszIcon); } static FORCEINLINE HRESULT IShellLibrary_Commit(IShellLibrary* This) { return This->lpVtbl->Commit(This); } static FORCEINLINE HRESULT IShellLibrary_Save(IShellLibrary* This,IShellItem *psiFolderToSaveIn,LPCWSTR pszLibraryName,LIBRARYSAVEFLAGS lsf,IShellItem **ppsiSavedTo) { return This->lpVtbl->Save(This,psiFolderToSaveIn,pszLibraryName,lsf,ppsiSavedTo); } static FORCEINLINE HRESULT IShellLibrary_SaveInKnownFolder(IShellLibrary* This,REFKNOWNFOLDERID kfidToSaveIn,LPCWSTR pszLibraryName,LIBRARYSAVEFLAGS lsf,IShellItem **ppsiSavedTo) { return This->lpVtbl->SaveInKnownFolder(This,kfidToSaveIn,pszLibraryName,lsf,ppsiSavedTo); } #endif #endif #endif #endif /* __IShellLibrary_INTERFACE_DEFINED__ */ typedef enum PBM_EVENT { PE_DUCKSESSION = 1, PE_UNDUCKSESSION = 2 } PBM_EVENT; /***************************************************************************** * IPlaybackManagerEvents interface */ #ifndef __IPlaybackManagerEvents_INTERFACE_DEFINED__ #define __IPlaybackManagerEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPlaybackManagerEvents, 0x385cfb7d, 0x4e0c, 0x4106, 0x91,0x2e, 0x8c,0xfb,0x4c,0x19,0x1f,0x45); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("385cfb7d-4e0c-4106-912e-8cfb4c191f45") IPlaybackManagerEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnPlaybackManagerEvent( DWORD dwSessionId, PBM_EVENT mediaEvent) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPlaybackManagerEvents, 0x385cfb7d, 0x4e0c, 0x4106, 0x91,0x2e, 0x8c,0xfb,0x4c,0x19,0x1f,0x45) #endif #else typedef struct IPlaybackManagerEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPlaybackManagerEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPlaybackManagerEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IPlaybackManagerEvents *This); /*** IPlaybackManagerEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnPlaybackManagerEvent)( IPlaybackManagerEvents *This, DWORD dwSessionId, PBM_EVENT mediaEvent); END_INTERFACE } IPlaybackManagerEventsVtbl; interface IPlaybackManagerEvents { CONST_VTBL IPlaybackManagerEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPlaybackManagerEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPlaybackManagerEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPlaybackManagerEvents_Release(This) (This)->lpVtbl->Release(This) /*** IPlaybackManagerEvents methods ***/ #define IPlaybackManagerEvents_OnPlaybackManagerEvent(This,dwSessionId,mediaEvent) (This)->lpVtbl->OnPlaybackManagerEvent(This,dwSessionId,mediaEvent) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPlaybackManagerEvents_QueryInterface(IPlaybackManagerEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPlaybackManagerEvents_AddRef(IPlaybackManagerEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPlaybackManagerEvents_Release(IPlaybackManagerEvents* This) { return This->lpVtbl->Release(This); } /*** IPlaybackManagerEvents methods ***/ static FORCEINLINE HRESULT IPlaybackManagerEvents_OnPlaybackManagerEvent(IPlaybackManagerEvents* This,DWORD dwSessionId,PBM_EVENT mediaEvent) { return This->lpVtbl->OnPlaybackManagerEvent(This,dwSessionId,mediaEvent); } #endif #endif #endif #endif /* __IPlaybackManagerEvents_INTERFACE_DEFINED__ */ typedef enum PBM_SESSION_TYPE { ST_COMMUNICATION = 1, ST_MEDIA = 2 } PBM_SESSION_TYPE; typedef enum PBM_PLAY_STATE { PS_PLAYING = 1, PS_PAUSED = 2, PS_STOPPED = 3 } PBM_PLAY_STATE; typedef enum PBM_MUTE_STATE { MS_MUTED = 1, MS_UNMUTED = 2 } PBM_MUTE_STATE; /***************************************************************************** * IPlaybackManager interface */ #ifndef __IPlaybackManager_INTERFACE_DEFINED__ #define __IPlaybackManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPlaybackManager, 0x0f3c1b01, 0x8199, 0x4173, 0xba,0x78, 0x98,0x58,0x82,0x26,0x6f,0x7a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0f3c1b01-8199-4173-ba78-985882266f7a") IPlaybackManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( PBM_SESSION_TYPE type, IPlaybackManagerEvents *pEvents, DWORD *pdwSessionId) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwSessionId) = 0; virtual HRESULT STDMETHODCALLTYPE ChangeSessionState( DWORD dwSessionId, PBM_PLAY_STATE state, PBM_MUTE_STATE mute) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPlaybackManager, 0x0f3c1b01, 0x8199, 0x4173, 0xba,0x78, 0x98,0x58,0x82,0x26,0x6f,0x7a) #endif #else typedef struct IPlaybackManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPlaybackManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPlaybackManager *This); ULONG (STDMETHODCALLTYPE *Release)( IPlaybackManager *This); /*** IPlaybackManager methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( IPlaybackManager *This, PBM_SESSION_TYPE type, IPlaybackManagerEvents *pEvents, DWORD *pdwSessionId); HRESULT (STDMETHODCALLTYPE *Unadvise)( IPlaybackManager *This, DWORD dwSessionId); HRESULT (STDMETHODCALLTYPE *ChangeSessionState)( IPlaybackManager *This, DWORD dwSessionId, PBM_PLAY_STATE state, PBM_MUTE_STATE mute); END_INTERFACE } IPlaybackManagerVtbl; interface IPlaybackManager { CONST_VTBL IPlaybackManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPlaybackManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPlaybackManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPlaybackManager_Release(This) (This)->lpVtbl->Release(This) /*** IPlaybackManager methods ***/ #define IPlaybackManager_Advise(This,type,pEvents,pdwSessionId) (This)->lpVtbl->Advise(This,type,pEvents,pdwSessionId) #define IPlaybackManager_Unadvise(This,dwSessionId) (This)->lpVtbl->Unadvise(This,dwSessionId) #define IPlaybackManager_ChangeSessionState(This,dwSessionId,state,mute) (This)->lpVtbl->ChangeSessionState(This,dwSessionId,state,mute) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPlaybackManager_QueryInterface(IPlaybackManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPlaybackManager_AddRef(IPlaybackManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPlaybackManager_Release(IPlaybackManager* This) { return This->lpVtbl->Release(This); } /*** IPlaybackManager methods ***/ static FORCEINLINE HRESULT IPlaybackManager_Advise(IPlaybackManager* This,PBM_SESSION_TYPE type,IPlaybackManagerEvents *pEvents,DWORD *pdwSessionId) { return This->lpVtbl->Advise(This,type,pEvents,pdwSessionId); } static FORCEINLINE HRESULT IPlaybackManager_Unadvise(IPlaybackManager* This,DWORD dwSessionId) { return This->lpVtbl->Unadvise(This,dwSessionId); } static FORCEINLINE HRESULT IPlaybackManager_ChangeSessionState(IPlaybackManager* This,DWORD dwSessionId,PBM_PLAY_STATE state,PBM_MUTE_STATE mute) { return This->lpVtbl->ChangeSessionState(This,dwSessionId,state,mute); } #endif #endif #endif #endif /* __IPlaybackManager_INTERFACE_DEFINED__ */ typedef enum DEFAULT_FOLDER_MENU_RESTRICTIONS { DFMR_DEFAULT = 0x0, DFMR_NO_STATIC_VERBS = 0x8, DFMR_STATIC_VERBS_ONLY = 0x10, DFMR_NO_RESOURCE_VERBS = 0x20, DFMR_OPTIN_HANDLERS_ONLY = 0x40, DFMR_RESOURCE_AND_FOLDER_VERBS_ONLY = 0x80, DFMR_USE_SPECIFIED_HANDLERS = 0x100, DFMR_USE_SPECIFIED_VERBS = 0x200, DFMR_NO_ASYNC_VERBS = 0x400 } DEFAULT_FOLDER_MENU_RESTRICTIONS; DEFINE_ENUM_FLAG_OPERATORS(DEFAULT_FOLDER_MENU_RESTRICTIONS) /***************************************************************************** * IDefaultFolderMenuInitialize interface */ #ifndef __IDefaultFolderMenuInitialize_INTERFACE_DEFINED__ #define __IDefaultFolderMenuInitialize_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDefaultFolderMenuInitialize, 0x7690aa79, 0xf8fc, 0x4615, 0xa3,0x27, 0x36,0xf7,0xd1,0x8f,0x5d,0x91); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7690aa79-f8fc-4615-a327-36f7d18f5d91") IDefaultFolderMenuInitialize : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwnd, IContextMenuCB *pcmcb, PCIDLIST_ABSOLUTE pidlFolder, IShellFolder *psf, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, IUnknown *punkAssociation, UINT cKeys, const HKEY *aKeys) = 0; virtual HRESULT STDMETHODCALLTYPE SetMenuRestrictions( DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues) = 0; virtual HRESULT STDMETHODCALLTYPE GetMenuRestrictions( DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask, DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues) = 0; virtual HRESULT STDMETHODCALLTYPE SetHandlerClsid( REFCLSID rclsid) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDefaultFolderMenuInitialize, 0x7690aa79, 0xf8fc, 0x4615, 0xa3,0x27, 0x36,0xf7,0xd1,0x8f,0x5d,0x91) #endif #else typedef struct IDefaultFolderMenuInitializeVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDefaultFolderMenuInitialize *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDefaultFolderMenuInitialize *This); ULONG (STDMETHODCALLTYPE *Release)( IDefaultFolderMenuInitialize *This); /*** IDefaultFolderMenuInitialize methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IDefaultFolderMenuInitialize *This, HWND hwnd, IContextMenuCB *pcmcb, PCIDLIST_ABSOLUTE pidlFolder, IShellFolder *psf, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, IUnknown *punkAssociation, UINT cKeys, const HKEY *aKeys); HRESULT (STDMETHODCALLTYPE *SetMenuRestrictions)( IDefaultFolderMenuInitialize *This, DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues); HRESULT (STDMETHODCALLTYPE *GetMenuRestrictions)( IDefaultFolderMenuInitialize *This, DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask, DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues); HRESULT (STDMETHODCALLTYPE *SetHandlerClsid)( IDefaultFolderMenuInitialize *This, REFCLSID rclsid); END_INTERFACE } IDefaultFolderMenuInitializeVtbl; interface IDefaultFolderMenuInitialize { CONST_VTBL IDefaultFolderMenuInitializeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDefaultFolderMenuInitialize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDefaultFolderMenuInitialize_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDefaultFolderMenuInitialize_Release(This) (This)->lpVtbl->Release(This) /*** IDefaultFolderMenuInitialize methods ***/ #define IDefaultFolderMenuInitialize_Initialize(This,hwnd,pcmcb,pidlFolder,psf,cidl,apidl,punkAssociation,cKeys,aKeys) (This)->lpVtbl->Initialize(This,hwnd,pcmcb,pidlFolder,psf,cidl,apidl,punkAssociation,cKeys,aKeys) #define IDefaultFolderMenuInitialize_SetMenuRestrictions(This,dfmrValues) (This)->lpVtbl->SetMenuRestrictions(This,dfmrValues) #define IDefaultFolderMenuInitialize_GetMenuRestrictions(This,dfmrMask,pdfmrValues) (This)->lpVtbl->GetMenuRestrictions(This,dfmrMask,pdfmrValues) #define IDefaultFolderMenuInitialize_SetHandlerClsid(This,rclsid) (This)->lpVtbl->SetHandlerClsid(This,rclsid) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_QueryInterface(IDefaultFolderMenuInitialize* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDefaultFolderMenuInitialize_AddRef(IDefaultFolderMenuInitialize* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDefaultFolderMenuInitialize_Release(IDefaultFolderMenuInitialize* This) { return This->lpVtbl->Release(This); } /*** IDefaultFolderMenuInitialize methods ***/ static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_Initialize(IDefaultFolderMenuInitialize* This,HWND hwnd,IContextMenuCB *pcmcb,PCIDLIST_ABSOLUTE pidlFolder,IShellFolder *psf,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,IUnknown *punkAssociation,UINT cKeys,const HKEY *aKeys) { return This->lpVtbl->Initialize(This,hwnd,pcmcb,pidlFolder,psf,cidl,apidl,punkAssociation,cKeys,aKeys); } static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_SetMenuRestrictions(IDefaultFolderMenuInitialize* This,DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues) { return This->lpVtbl->SetMenuRestrictions(This,dfmrValues); } static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_GetMenuRestrictions(IDefaultFolderMenuInitialize* This,DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask,DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues) { return This->lpVtbl->GetMenuRestrictions(This,dfmrMask,pdfmrValues); } static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_SetHandlerClsid(IDefaultFolderMenuInitialize* This,REFCLSID rclsid) { return This->lpVtbl->SetHandlerClsid(This,rclsid); } #endif #endif #endif #endif /* __IDefaultFolderMenuInitialize_INTERFACE_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_WIN8 typedef enum ACTIVATEOPTIONS { AO_NONE = 0x0, AO_DESIGNMODE = 0x1, AO_NOERRORUI = 0x2, AO_NOSPLASHSCREEN = 0x4 } ACTIVATEOPTIONS; DEFINE_ENUM_FLAG_OPERATORS(ACTIVATEOPTIONS) /***************************************************************************** * IApplicationActivationManager interface */ #ifndef __IApplicationActivationManager_INTERFACE_DEFINED__ #define __IApplicationActivationManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2e941141-7f97-4756-ba1d-9decde894a3d") IApplicationActivationManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ActivateApplication( LPCWSTR appUserModelId, LPCWSTR arguments, ACTIVATEOPTIONS options, DWORD *processId) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateForFile( LPCWSTR appUserModelId, IShellItemArray *itemArray, LPCWSTR verb, DWORD *processId) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateForProtocol( LPCWSTR appUserModelId, IShellItemArray *itemArray, DWORD *processId) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d) #endif #else typedef struct IApplicationActivationManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationActivationManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationActivationManager *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationActivationManager *This); /*** IApplicationActivationManager methods ***/ HRESULT (STDMETHODCALLTYPE *ActivateApplication)( IApplicationActivationManager *This, LPCWSTR appUserModelId, LPCWSTR arguments, ACTIVATEOPTIONS options, DWORD *processId); HRESULT (STDMETHODCALLTYPE *ActivateForFile)( IApplicationActivationManager *This, LPCWSTR appUserModelId, IShellItemArray *itemArray, LPCWSTR verb, DWORD *processId); HRESULT (STDMETHODCALLTYPE *ActivateForProtocol)( IApplicationActivationManager *This, LPCWSTR appUserModelId, IShellItemArray *itemArray, DWORD *processId); END_INTERFACE } IApplicationActivationManagerVtbl; interface IApplicationActivationManager { CONST_VTBL IApplicationActivationManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationActivationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationActivationManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationActivationManager_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationActivationManager methods ***/ #define IApplicationActivationManager_ActivateApplication(This,appUserModelId,arguments,options,processId) (This)->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId) #define IApplicationActivationManager_ActivateForFile(This,appUserModelId,itemArray,verb,processId) (This)->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId) #define IApplicationActivationManager_ActivateForProtocol(This,appUserModelId,itemArray,processId) (This)->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IApplicationActivationManager_QueryInterface(IApplicationActivationManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IApplicationActivationManager_AddRef(IApplicationActivationManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IApplicationActivationManager_Release(IApplicationActivationManager* This) { return This->lpVtbl->Release(This); } /*** IApplicationActivationManager methods ***/ static FORCEINLINE HRESULT IApplicationActivationManager_ActivateApplication(IApplicationActivationManager* This,LPCWSTR appUserModelId,LPCWSTR arguments,ACTIVATEOPTIONS options,DWORD *processId) { return This->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId); } static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForFile(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,LPCWSTR verb,DWORD *processId) { return This->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId); } static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForProtocol(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,DWORD *processId) { return This->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId); } #endif #endif #endif #endif /* __IApplicationActivationManager_INTERFACE_DEFINED__ */ #endif #ifndef __ShellObjects_LIBRARY_DEFINED__ #define __ShellObjects_LIBRARY_DEFINED__ DEFINE_GUID(LIBID_ShellObjects, 0x50a7e9b1, 0x70ef, 0x11d1, 0xb7,0x5a, 0x00,0xa0,0xc9,0x05,0x64,0xfe); /***************************************************************************** * DesktopWallpaper coclass */ DEFINE_GUID(CLSID_DesktopWallpaper, 0xc2cf3110, 0x460e, 0x4fc1, 0xb9,0xd0, 0x8a,0x1c,0x0c,0x9c,0xc4,0xbd); #ifdef __cplusplus class DECLSPEC_UUID("c2cf3110-460e-4fc1-b9d0-8a1c0c9cc4bd") DesktopWallpaper; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DesktopWallpaper, 0xc2cf3110, 0x460e, 0x4fc1, 0xb9,0xd0, 0x8a,0x1c,0x0c,0x9c,0xc4,0xbd) #endif #endif /***************************************************************************** * ShellDesktop coclass */ DEFINE_GUID(CLSID_ShellDesktop, 0x00021400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #ifdef __cplusplus class DECLSPEC_UUID("00021400-0000-0000-c000-000000000046") ShellDesktop; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ShellDesktop, 0x00021400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #endif /***************************************************************************** * ShellFSFolder coclass */ DEFINE_GUID(CLSID_ShellFSFolder, 0xf3364ba0, 0x65b9, 0x11ce, 0xa9,0xba, 0x00,0xaa,0x00,0x4a,0xe8,0x37); #ifdef __cplusplus class DECLSPEC_UUID("f3364ba0-65b9-11ce-a9ba-00aa004ae837") ShellFSFolder; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ShellFSFolder, 0xf3364ba0, 0x65b9, 0x11ce, 0xa9,0xba, 0x00,0xaa,0x00,0x4a,0xe8,0x37) #endif #endif /***************************************************************************** * NetworkPlaces coclass */ DEFINE_GUID(CLSID_NetworkPlaces, 0x208d2c60, 0x3aea, 0x1069, 0xa2,0xd7, 0x08,0x00,0x2b,0x30,0x30,0x9d); #ifdef __cplusplus class DECLSPEC_UUID("208d2c60-3aea-1069-a2d7-08002b30309d") NetworkPlaces; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(NetworkPlaces, 0x208d2c60, 0x3aea, 0x1069, 0xa2,0xd7, 0x08,0x00,0x2b,0x30,0x30,0x9d) #endif #endif /***************************************************************************** * ShellLink coclass */ DEFINE_GUID(CLSID_ShellLink, 0x00021401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #ifdef __cplusplus class DECLSPEC_UUID("00021401-0000-0000-c000-000000000046") ShellLink; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ShellLink, 0x00021401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #endif /***************************************************************************** * QueryCancelAutoPlay coclass */ DEFINE_GUID(CLSID_QueryCancelAutoPlay, 0x331f1768, 0x05a9, 0x4ddd, 0xb8,0x6e, 0xda,0xe3,0x4d,0xdc,0x99,0x8a); #ifdef __cplusplus class DECLSPEC_UUID("331f1768-05a9-4ddd-b86e-dae34ddc998a") QueryCancelAutoPlay; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(QueryCancelAutoPlay, 0x331f1768, 0x05a9, 0x4ddd, 0xb8,0x6e, 0xda,0xe3,0x4d,0xdc,0x99,0x8a) #endif #endif /***************************************************************************** * DriveSizeCategorizer coclass */ DEFINE_GUID(CLSID_DriveSizeCategorizer, 0x94357b53, 0xca29, 0x4b78, 0x83,0xae, 0xe8,0xfe,0x74,0x09,0x13,0x4f); #ifdef __cplusplus class DECLSPEC_UUID("94357b53-ca29-4b78-83ae-e8fe7409134f") DriveSizeCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DriveSizeCategorizer, 0x94357b53, 0xca29, 0x4b78, 0x83,0xae, 0xe8,0xfe,0x74,0x09,0x13,0x4f) #endif #endif /***************************************************************************** * DriveTypeCategorizer coclass */ DEFINE_GUID(CLSID_DriveTypeCategorizer, 0xb0a8f3cf, 0x4333, 0x4bab, 0x88,0x73, 0x1c,0xcb,0x1c,0xad,0xa4,0x8b); #ifdef __cplusplus class DECLSPEC_UUID("b0a8f3cf-4333-4bab-8873-1ccb1cada48b") DriveTypeCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DriveTypeCategorizer, 0xb0a8f3cf, 0x4333, 0x4bab, 0x88,0x73, 0x1c,0xcb,0x1c,0xad,0xa4,0x8b) #endif #endif /***************************************************************************** * FreeSpaceCategorizer coclass */ DEFINE_GUID(CLSID_FreeSpaceCategorizer, 0xb5607793, 0x24ac, 0x44c7, 0x82,0xe2, 0x83,0x17,0x26,0xaa,0x6c,0xb7); #ifdef __cplusplus class DECLSPEC_UUID("b5607793-24ac-44c7-82e2-831726aa6cb7") FreeSpaceCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FreeSpaceCategorizer, 0xb5607793, 0x24ac, 0x44c7, 0x82,0xe2, 0x83,0x17,0x26,0xaa,0x6c,0xb7) #endif #endif /***************************************************************************** * TimeCategorizer coclass */ DEFINE_GUID(CLSID_TimeCategorizer, 0x3bb4118f, 0xddfd, 0x4d30, 0xa3,0x48, 0x9f,0xb5,0xd6,0xbf,0x1a,0xfe); #ifdef __cplusplus class DECLSPEC_UUID("3bb4118f-ddfd-4d30-a348-9fb5d6bf1afe") TimeCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(TimeCategorizer, 0x3bb4118f, 0xddfd, 0x4d30, 0xa3,0x48, 0x9f,0xb5,0xd6,0xbf,0x1a,0xfe) #endif #endif /***************************************************************************** * SizeCategorizer coclass */ DEFINE_GUID(CLSID_SizeCategorizer, 0x55d7b852, 0xf6d1, 0x42f2, 0xaa,0x75, 0x87,0x28,0xa1,0xb2,0xd2,0x64); #ifdef __cplusplus class DECLSPEC_UUID("55d7b852-f6d1-42f2-aa75-8728a1b2d264") SizeCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(SizeCategorizer, 0x55d7b852, 0xf6d1, 0x42f2, 0xaa,0x75, 0x87,0x28,0xa1,0xb2,0xd2,0x64) #endif #endif /***************************************************************************** * AlphabeticalCategorizer coclass */ DEFINE_GUID(CLSID_AlphabeticalCategorizer, 0x3c2654c6, 0x7372, 0x4f6b, 0xb3,0x10, 0x55,0xd6,0x12,0x8f,0x49,0xd2); #ifdef __cplusplus class DECLSPEC_UUID("3c2654c6-7372-4f6b-b310-55d6128f49d2") AlphabeticalCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(AlphabeticalCategorizer, 0x3c2654c6, 0x7372, 0x4f6b, 0xb3,0x10, 0x55,0xd6,0x12,0x8f,0x49,0xd2) #endif #endif /***************************************************************************** * MergedCategorizer coclass */ DEFINE_GUID(CLSID_MergedCategorizer, 0x8e827c11, 0x33e7, 0x4bc1, 0xb2,0x42, 0x8c,0xd9,0xa1,0xc2,0xb3,0x04); #ifdef __cplusplus class DECLSPEC_UUID("8e827c11-33e7-4bc1-b242-8cd9a1c2b304") MergedCategorizer; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(MergedCategorizer, 0x8e827c11, 0x33e7, 0x4bc1, 0xb2,0x42, 0x8c,0xd9,0xa1,0xc2,0xb3,0x04) #endif #endif /***************************************************************************** * ImageProperties coclass */ DEFINE_GUID(CLSID_ImageProperties, 0x7ab770c7, 0x0e23, 0x4d7a, 0x8a,0xa2, 0x19,0xbf,0xad,0x47,0x98,0x29); #ifdef __cplusplus class DECLSPEC_UUID("7ab770c7-0e23-4d7a-8aa2-19bfad479829") ImageProperties; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ImageProperties, 0x7ab770c7, 0x0e23, 0x4d7a, 0x8a,0xa2, 0x19,0xbf,0xad,0x47,0x98,0x29) #endif #endif /***************************************************************************** * PropertiesUI coclass */ DEFINE_GUID(CLSID_PropertiesUI, 0xd912f8cf, 0x0396, 0x4915, 0x88,0x4e, 0xfb,0x42,0x5d,0x32,0x94,0x3b); #ifdef __cplusplus class DECLSPEC_UUID("d912f8cf-0396-4915-884e-fb425d32943b") PropertiesUI; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PropertiesUI, 0xd912f8cf, 0x0396, 0x4915, 0x88,0x4e, 0xfb,0x42,0x5d,0x32,0x94,0x3b) #endif #endif /***************************************************************************** * UserNotification coclass */ DEFINE_GUID(CLSID_UserNotification, 0x0010890e, 0x8789, 0x413c, 0xad,0xbc, 0x48,0xf5,0xb5,0x11,0xb3,0xaf); #ifdef __cplusplus class DECLSPEC_UUID("0010890e-8789-413c-adbc-48f5b511b3af") UserNotification; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(UserNotification, 0x0010890e, 0x8789, 0x413c, 0xad,0xbc, 0x48,0xf5,0xb5,0x11,0xb3,0xaf) #endif #endif /***************************************************************************** * CDBurn coclass */ DEFINE_GUID(CLSID_CDBurn, 0xfbeb8a05, 0xbeee, 0x4442, 0x80,0x4e, 0x40,0x9d,0x6c,0x45,0x15,0xe9); #ifdef __cplusplus class DECLSPEC_UUID("fbeb8a05-beee-4442-804e-409d6c4515e9") CDBurn; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(CDBurn, 0xfbeb8a05, 0xbeee, 0x4442, 0x80,0x4e, 0x40,0x9d,0x6c,0x45,0x15,0xe9) #endif #endif /***************************************************************************** * TaskbarList coclass */ DEFINE_GUID(CLSID_TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90); #ifdef __cplusplus class DECLSPEC_UUID("56fdf344-fd6d-11d0-958a-006097c9a090") TaskbarList; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90) #endif #endif /***************************************************************************** * StartMenuPin coclass */ DEFINE_GUID(CLSID_StartMenuPin, 0xa2a9545d, 0xa0c2, 0x42b4, 0x97,0x08, 0xa0,0xb2,0xba,0xdd,0x77,0xc8); #ifdef __cplusplus class DECLSPEC_UUID("a2a9545d-a0c2-42b4-9708-a0b2badd77c8") StartMenuPin; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(StartMenuPin, 0xa2a9545d, 0xa0c2, 0x42b4, 0x97,0x08, 0xa0,0xb2,0xba,0xdd,0x77,0xc8) #endif #endif /***************************************************************************** * WebWizardHost coclass */ DEFINE_GUID(CLSID_WebWizardHost, 0xc827f149, 0x55c1, 0x4d28, 0x93,0x5e, 0x57,0xe4,0x7c,0xae,0xd9,0x73); #ifdef __cplusplus class DECLSPEC_UUID("c827f149-55c1-4d28-935e-57e47caed973") WebWizardHost; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(WebWizardHost, 0xc827f149, 0x55c1, 0x4d28, 0x93,0x5e, 0x57,0xe4,0x7c,0xae,0xd9,0x73) #endif #endif /***************************************************************************** * PublishDropTarget coclass */ DEFINE_GUID(CLSID_PublishDropTarget, 0xcc6eeffb, 0x43f6, 0x46c5, 0x96,0x19, 0x51,0xd5,0x71,0x96,0x7f,0x7d); #ifdef __cplusplus class DECLSPEC_UUID("cc6eeffb-43f6-46c5-9619-51d571967f7d") PublishDropTarget; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PublishDropTarget, 0xcc6eeffb, 0x43f6, 0x46c5, 0x96,0x19, 0x51,0xd5,0x71,0x96,0x7f,0x7d) #endif #endif /***************************************************************************** * PublishingWizard coclass */ DEFINE_GUID(CLSID_PublishingWizard, 0x6b33163c, 0x76a5, 0x4b6c, 0xbf,0x21, 0x45,0xde,0x9c,0xd5,0x03,0xa1); #ifdef __cplusplus class DECLSPEC_UUID("6b33163c-76a5-4b6c-bf21-45de9cd503a1") PublishingWizard; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PublishingWizard, 0x6b33163c, 0x76a5, 0x4b6c, 0xbf,0x21, 0x45,0xde,0x9c,0xd5,0x03,0xa1) #endif #endif #define SID_PublishingWizard CLSID_PublishingWizard /***************************************************************************** * InternetPrintOrdering coclass */ DEFINE_GUID(CLSID_InternetPrintOrdering, 0xadd36aa8, 0x751a, 0x4579, 0xa2,0x66, 0xd6,0x6f,0x52,0x02,0xcc,0xbb); #ifdef __cplusplus class DECLSPEC_UUID("add36aa8-751a-4579-a266-d66f5202ccbb") InternetPrintOrdering; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(InternetPrintOrdering, 0xadd36aa8, 0x751a, 0x4579, 0xa2,0x66, 0xd6,0x6f,0x52,0x02,0xcc,0xbb) #endif #endif /***************************************************************************** * FolderViewHost coclass */ DEFINE_GUID(CLSID_FolderViewHost, 0x20b1cb23, 0x6968, 0x4eb9, 0xb7,0xd4, 0xa6,0x6d,0x00,0xd0,0x7c,0xee); #ifdef __cplusplus class DECLSPEC_UUID("20b1cb23-6968-4eb9-b7d4-a66d00d07cee") FolderViewHost; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FolderViewHost, 0x20b1cb23, 0x6968, 0x4eb9, 0xb7,0xd4, 0xa6,0x6d,0x00,0xd0,0x7c,0xee) #endif #endif /***************************************************************************** * ExplorerBrowser coclass */ DEFINE_GUID(CLSID_ExplorerBrowser, 0x71f96385, 0xddd6, 0x48d3, 0xa0,0xc1, 0xae,0x06,0xe8,0xb0,0x55,0xfb); #ifdef __cplusplus class DECLSPEC_UUID("71f96385-ddd6-48d3-a0c1-ae06e8b055fb") ExplorerBrowser; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ExplorerBrowser, 0x71f96385, 0xddd6, 0x48d3, 0xa0,0xc1, 0xae,0x06,0xe8,0xb0,0x55,0xfb) #endif #endif /***************************************************************************** * ImageRecompress coclass */ DEFINE_GUID(CLSID_ImageRecompress, 0x6e33091c, 0xd2f8, 0x4740, 0xb5,0x5e, 0x2e,0x11,0xd1,0x47,0x7a,0x2c); #ifdef __cplusplus class DECLSPEC_UUID("6e33091c-d2f8-4740-b55e-2e11d1477a2c") ImageRecompress; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ImageRecompress, 0x6e33091c, 0xd2f8, 0x4740, 0xb5,0x5e, 0x2e,0x11,0xd1,0x47,0x7a,0x2c) #endif #endif /***************************************************************************** * TrayBandSiteService coclass */ DEFINE_GUID(CLSID_TrayBandSiteService, 0xf60ad0a0, 0xe5e1, 0x45cb, 0xb5,0x1a, 0xe1,0x5b,0x9f,0x8b,0x29,0x34); #ifdef __cplusplus class DECLSPEC_UUID("f60ad0a0-e5e1-45cb-b51a-e15b9f8b2934") TrayBandSiteService; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(TrayBandSiteService, 0xf60ad0a0, 0xe5e1, 0x45cb, 0xb5,0x1a, 0xe1,0x5b,0x9f,0x8b,0x29,0x34) #endif #endif /***************************************************************************** * TrayDeskBand coclass */ DEFINE_GUID(CLSID_TrayDeskBand, 0xe6442437, 0x6c68, 0x4f52, 0x94,0xdd, 0x2c,0xfe,0xd2,0x67,0xef,0xb9); #ifdef __cplusplus class DECLSPEC_UUID("e6442437-6c68-4f52-94dd-2cfed267efb9") TrayDeskBand; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(TrayDeskBand, 0xe6442437, 0x6c68, 0x4f52, 0x94,0xdd, 0x2c,0xfe,0xd2,0x67,0xef,0xb9) #endif #endif /***************************************************************************** * AttachmentServices coclass */ DEFINE_GUID(CLSID_AttachmentServices, 0x4125dd96, 0xe03a, 0x4103, 0x8f,0x70, 0xe0,0x59,0x7d,0x80,0x3b,0x9c); #ifdef __cplusplus class DECLSPEC_UUID("4125dd96-e03a-4103-8f70-e0597d803b9c") AttachmentServices; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(AttachmentServices, 0x4125dd96, 0xe03a, 0x4103, 0x8f,0x70, 0xe0,0x59,0x7d,0x80,0x3b,0x9c) #endif #endif /***************************************************************************** * DocPropShellExtension coclass */ DEFINE_GUID(CLSID_DocPropShellExtension, 0x883373c3, 0xbf89, 0x11d1, 0xbe,0x35, 0x08,0x00,0x36,0xb1,0x1a,0x03); #ifdef __cplusplus class DECLSPEC_UUID("883373c3-bf89-11d1-be35-080036b11a03") DocPropShellExtension; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DocPropShellExtension, 0x883373c3, 0xbf89, 0x11d1, 0xbe,0x35, 0x08,0x00,0x36,0xb1,0x1a,0x03) #endif #endif /***************************************************************************** * ShellItem coclass */ DEFINE_GUID(CLSID_ShellItem, 0x9ac9fbe1, 0xe0a2, 0x4ad6, 0xb4,0xee, 0xe2,0x12,0x01,0x3e,0xa9,0x17); #ifdef __cplusplus class DECLSPEC_UUID("9ac9fbe1-e0a2-4ad6-b4ee-e212013ea917") ShellItem; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ShellItem, 0x9ac9fbe1, 0xe0a2, 0x4ad6, 0xb4,0xee, 0xe2,0x12,0x01,0x3e,0xa9,0x17) #endif #endif /***************************************************************************** * NamespaceWalker coclass */ DEFINE_GUID(CLSID_NamespaceWalker, 0x72eb61e0, 0x8672, 0x4303, 0x91,0x75, 0xf2,0xe4,0xc6,0x8b,0x2e,0x7c); #ifdef __cplusplus class DECLSPEC_UUID("72eb61e0-8672-4303-9175-f2e4c68b2e7c") NamespaceWalker; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(NamespaceWalker, 0x72eb61e0, 0x8672, 0x4303, 0x91,0x75, 0xf2,0xe4,0xc6,0x8b,0x2e,0x7c) #endif #endif /***************************************************************************** * FileOperation coclass */ DEFINE_GUID(CLSID_FileOperation, 0x3ad05575, 0x8857, 0x4850, 0x92,0x77, 0x11,0xb8,0x5b,0xdb,0x8e,0x09); #ifdef __cplusplus class DECLSPEC_UUID("3ad05575-8857-4850-9277-11b85bdb8e09") FileOperation; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FileOperation, 0x3ad05575, 0x8857, 0x4850, 0x92,0x77, 0x11,0xb8,0x5b,0xdb,0x8e,0x09) #endif #endif /***************************************************************************** * FileOpenDialog coclass */ DEFINE_GUID(CLSID_FileOpenDialog, 0xdc1c5a9c, 0xe88a, 0x4dde, 0xa5,0xa1, 0x60,0xf8,0x2a,0x20,0xae,0xf7); #ifdef __cplusplus class DECLSPEC_UUID("dc1c5a9c-e88a-4dde-a5a1-60f82a20aef7") FileOpenDialog; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FileOpenDialog, 0xdc1c5a9c, 0xe88a, 0x4dde, 0xa5,0xa1, 0x60,0xf8,0x2a,0x20,0xae,0xf7) #endif #endif /***************************************************************************** * FileSaveDialog coclass */ DEFINE_GUID(CLSID_FileSaveDialog, 0xc0b4e2f3, 0xba21, 0x4773, 0x8d,0xba, 0x33,0x5e,0xc9,0x46,0xeb,0x8b); #ifdef __cplusplus class DECLSPEC_UUID("c0b4e2f3-ba21-4773-8dba-335ec946eb8b") FileSaveDialog; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FileSaveDialog, 0xc0b4e2f3, 0xba21, 0x4773, 0x8d,0xba, 0x33,0x5e,0xc9,0x46,0xeb,0x8b) #endif #endif /***************************************************************************** * KnownFolderManager coclass */ DEFINE_GUID(CLSID_KnownFolderManager, 0x4df0c730, 0xdf9d, 0x4ae3, 0x91,0x53, 0xaa,0x6b,0x82,0xe9,0x79,0x5a); #ifdef __cplusplus class DECLSPEC_UUID("4df0c730-df9d-4ae3-9153-aa6b82e9795a") KnownFolderManager; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(KnownFolderManager, 0x4df0c730, 0xdf9d, 0x4ae3, 0x91,0x53, 0xaa,0x6b,0x82,0xe9,0x79,0x5a) #endif #endif /***************************************************************************** * FSCopyHandler coclass */ DEFINE_GUID(CLSID_FSCopyHandler, 0xd197380a, 0x0a79, 0x4dc8, 0xa0,0x33, 0xed,0x88,0x2c,0x2f,0xa1,0x4b); #ifdef __cplusplus class DECLSPEC_UUID("d197380a-0a79-4dc8-a033-ed882c2fa14b") FSCopyHandler; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FSCopyHandler, 0xd197380a, 0x0a79, 0x4dc8, 0xa0,0x33, 0xed,0x88,0x2c,0x2f,0xa1,0x4b) #endif #endif /***************************************************************************** * SharingConfigurationManager coclass */ DEFINE_GUID(CLSID_SharingConfigurationManager, 0x49f371e1, 0x8c5c, 0x4d9c, 0x9a,0x3b, 0x54,0xa6,0x82,0x7f,0x51,0x3c); #ifdef __cplusplus class DECLSPEC_UUID("49f371e1-8c5c-4d9c-9a3b-54a6827f513c") SharingConfigurationManager; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(SharingConfigurationManager, 0x49f371e1, 0x8c5c, 0x4d9c, 0x9a,0x3b, 0x54,0xa6,0x82,0x7f,0x51,0x3c) #endif #endif /***************************************************************************** * PreviousVersions coclass */ DEFINE_GUID(CLSID_PreviousVersions, 0x596ab062, 0xb4d2, 0x4215, 0x9f,0x74, 0xe9,0x10,0x9b,0x0a,0x81,0x53); #ifdef __cplusplus class DECLSPEC_UUID("596ab062-b4d2-4215-9f74-e9109b0a8153") PreviousVersions; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PreviousVersions, 0x596ab062, 0xb4d2, 0x4215, 0x9f,0x74, 0xe9,0x10,0x9b,0x0a,0x81,0x53) #endif #endif /***************************************************************************** * NetworkConnections coclass */ DEFINE_GUID(CLSID_NetworkConnections, 0x7007acc7, 0x3202, 0x11d1, 0xaa,0xd2, 0x00,0x80,0x5f,0xc1,0x27,0x0e); #ifdef __cplusplus class DECLSPEC_UUID("7007acc7-3202-11d1-aad2-00805fc1270e") NetworkConnections; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(NetworkConnections, 0x7007acc7, 0x3202, 0x11d1, 0xaa,0xd2, 0x00,0x80,0x5f,0xc1,0x27,0x0e) #endif #endif /***************************************************************************** * NamespaceTreeControl coclass */ DEFINE_GUID(CLSID_NamespaceTreeControl, 0xae054212, 0x3535, 0x4430, 0x83,0xed, 0xd5,0x01,0xaa,0x66,0x80,0xe6); #ifdef __cplusplus class DECLSPEC_UUID("ae054212-3535-4430-83ed-d501aa6680e6") NamespaceTreeControl; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(NamespaceTreeControl, 0xae054212, 0x3535, 0x4430, 0x83,0xed, 0xd5,0x01,0xaa,0x66,0x80,0xe6) #endif #endif /***************************************************************************** * IENamespaceTreeControl coclass */ DEFINE_GUID(CLSID_IENamespaceTreeControl, 0xace52d03, 0xe5cd, 0x4b20, 0x82,0xff, 0xe7,0x1b,0x11,0xbe,0xae,0x1d); #ifdef __cplusplus class DECLSPEC_UUID("ace52d03-e5cd-4b20-82ff-e71b11beae1d") IENamespaceTreeControl; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IENamespaceTreeControl, 0xace52d03, 0xe5cd, 0x4b20, 0x82,0xff, 0xe7,0x1b,0x11,0xbe,0xae,0x1d) #endif #endif /***************************************************************************** * ScheduledTasks coclass */ DEFINE_GUID(CLSID_ScheduledTasks, 0xd6277990, 0x4c6a, 0x11cf, 0x8d,0x87, 0x00,0xaa,0x00,0x60,0xf5,0xbf); #ifdef __cplusplus class DECLSPEC_UUID("d6277990-4c6a-11cf-8d87-00aa0060f5bf") ScheduledTasks; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ScheduledTasks, 0xd6277990, 0x4c6a, 0x11cf, 0x8d,0x87, 0x00,0xaa,0x00,0x60,0xf5,0xbf) #endif #endif /***************************************************************************** * ApplicationAssociationRegistration coclass */ DEFINE_GUID(CLSID_ApplicationAssociationRegistration, 0x591209c7, 0x767b, 0x42b2, 0x9f,0xba, 0x44,0xee,0x46,0x15,0xf2,0xc7); #ifdef __cplusplus class DECLSPEC_UUID("591209c7-767b-42b2-9fba-44ee4615f2c7") ApplicationAssociationRegistration; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationAssociationRegistration, 0x591209c7, 0x767b, 0x42b2, 0x9f,0xba, 0x44,0xee,0x46,0x15,0xf2,0xc7) #endif #endif /***************************************************************************** * ApplicationAssociationRegistrationUI coclass */ DEFINE_GUID(CLSID_ApplicationAssociationRegistrationUI, 0x1968106d, 0xf3b5, 0x44cf, 0x89,0x0e, 0x11,0x6f,0xcb,0x9e,0xce,0xf1); #ifdef __cplusplus class DECLSPEC_UUID("1968106d-f3b5-44cf-890e-116fcb9ecef1") ApplicationAssociationRegistrationUI; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationAssociationRegistrationUI, 0x1968106d, 0xf3b5, 0x44cf, 0x89,0x0e, 0x11,0x6f,0xcb,0x9e,0xce,0xf1) #endif #endif /***************************************************************************** * SearchFolderItemFactory coclass */ DEFINE_GUID(CLSID_SearchFolderItemFactory, 0x14010e02, 0xbbbd, 0x41f0, 0x88,0xe3, 0xed,0xa3,0x71,0x21,0x65,0x84); #ifdef __cplusplus class DECLSPEC_UUID("14010e02-bbbd-41f0-88e3-eda371216584") SearchFolderItemFactory; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(SearchFolderItemFactory, 0x14010e02, 0xbbbd, 0x41f0, 0x88,0xe3, 0xed,0xa3,0x71,0x21,0x65,0x84) #endif #endif /***************************************************************************** * OpenControlPanel coclass */ DEFINE_GUID(CLSID_OpenControlPanel, 0x06622d85, 0x6856, 0x4460, 0x8d,0xe1, 0xa8,0x19,0x21,0xb4,0x1c,0x4b); #ifdef __cplusplus class DECLSPEC_UUID("06622d85-6856-4460-8de1-a81921b41c4b") OpenControlPanel; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(OpenControlPanel, 0x06622d85, 0x6856, 0x4460, 0x8d,0xe1, 0xa8,0x19,0x21,0xb4,0x1c,0x4b) #endif #endif /***************************************************************************** * MailRecipient coclass */ DEFINE_GUID(CLSID_MailRecipient, 0x9e56be60, 0xc50f, 0x11cf, 0x9a,0x2c, 0x00,0xa0,0xc9,0x0a,0x90,0xce); #ifdef __cplusplus class DECLSPEC_UUID("9e56be60-c50f-11cf-9a2c-00a0c90a90ce") MailRecipient; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(MailRecipient, 0x9e56be60, 0xc50f, 0x11cf, 0x9a,0x2c, 0x00,0xa0,0xc9,0x0a,0x90,0xce) #endif #endif /***************************************************************************** * NetworkExplorerFolder coclass */ DEFINE_GUID(CLSID_NetworkExplorerFolder, 0xf02c1a0d, 0xbe21, 0x4350, 0x88,0xb0, 0x73,0x67,0xfc,0x96,0xef,0x3c); #ifdef __cplusplus class DECLSPEC_UUID("f02c1a0d-be21-4350-88b0-7367fc96ef3c") NetworkExplorerFolder; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(NetworkExplorerFolder, 0xf02c1a0d, 0xbe21, 0x4350, 0x88,0xb0, 0x73,0x67,0xfc,0x96,0xef,0x3c) #endif #endif /***************************************************************************** * DestinationList coclass */ DEFINE_GUID(CLSID_DestinationList, 0x77f10cf0, 0x3db5, 0x4966, 0xb5,0x20, 0xb7,0xc5,0x4f,0xd3,0x5e,0xd6); #ifdef __cplusplus class DECLSPEC_UUID("77f10cf0-3db5-4966-b520-b7c54fd35ed6") DestinationList; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DestinationList, 0x77f10cf0, 0x3db5, 0x4966, 0xb5,0x20, 0xb7,0xc5,0x4f,0xd3,0x5e,0xd6) #endif #endif /***************************************************************************** * ApplicationDestinations coclass */ DEFINE_GUID(CLSID_ApplicationDestinations, 0x86c14003, 0x4d6b, 0x4ef3, 0xa7,0xb4, 0x05,0x06,0x66,0x3b,0x2e,0x68); #ifdef __cplusplus class DECLSPEC_UUID("86c14003-4d6b-4ef3-a7b4-0506663b2e68") ApplicationDestinations; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationDestinations, 0x86c14003, 0x4d6b, 0x4ef3, 0xa7,0xb4, 0x05,0x06,0x66,0x3b,0x2e,0x68) #endif #endif /***************************************************************************** * ApplicationDocumentLists coclass */ DEFINE_GUID(CLSID_ApplicationDocumentLists, 0x86bec222, 0x30f2, 0x47e0, 0x9f,0x25, 0x60,0xd1,0x1c,0xd7,0x5c,0x28); #ifdef __cplusplus class DECLSPEC_UUID("86bec222-30f2-47e0-9f25-60d11cd75c28") ApplicationDocumentLists; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationDocumentLists, 0x86bec222, 0x30f2, 0x47e0, 0x9f,0x25, 0x60,0xd1,0x1c,0xd7,0x5c,0x28) #endif #endif /***************************************************************************** * HomeGroup coclass */ DEFINE_GUID(CLSID_HomeGroup, 0xde77ba04, 0x3c92, 0x4d11, 0xa1,0xa5, 0x42,0x35,0x2a,0x53,0xe0,0xe3); #ifdef __cplusplus class DECLSPEC_UUID("de77ba04-3c92-4d11-a1a5-42352a53e0e3") HomeGroup; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(HomeGroup, 0xde77ba04, 0x3c92, 0x4d11, 0xa1,0xa5, 0x42,0x35,0x2a,0x53,0xe0,0xe3) #endif #endif /***************************************************************************** * ShellLibrary coclass */ DEFINE_GUID(CLSID_ShellLibrary, 0xd9b3211d, 0xe57f, 0x4426, 0xaa,0xef, 0x30,0xa8,0x06,0xad,0xd3,0x97); #ifdef __cplusplus class DECLSPEC_UUID("d9b3211d-e57f-4426-aaef-30a806add397") ShellLibrary; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ShellLibrary, 0xd9b3211d, 0xe57f, 0x4426, 0xaa,0xef, 0x30,0xa8,0x06,0xad,0xd3,0x97) #endif #endif /***************************************************************************** * AppStartupLink coclass */ DEFINE_GUID(CLSID_AppStartupLink, 0x273eb5e7, 0x88b0, 0x4843, 0xbf,0xef, 0xe2,0xc8,0x1d,0x43,0xaa,0xe5); #ifdef __cplusplus class DECLSPEC_UUID("273eb5e7-88b0-4843-bfef-e2c81d43aae5") AppStartupLink; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(AppStartupLink, 0x273eb5e7, 0x88b0, 0x4843, 0xbf,0xef, 0xe2,0xc8,0x1d,0x43,0xaa,0xe5) #endif #endif /***************************************************************************** * EnumerableObjectCollection coclass */ DEFINE_GUID(CLSID_EnumerableObjectCollection, 0x2d3468c1, 0x36a7, 0x43b6, 0xac,0x24, 0xd3,0xf0,0x2f,0xd9,0x60,0x7a); #ifdef __cplusplus class DECLSPEC_UUID("2d3468c1-36a7-43b6-ac24-d3f02fd9607a") EnumerableObjectCollection; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(EnumerableObjectCollection, 0x2d3468c1, 0x36a7, 0x43b6, 0xac,0x24, 0xd3,0xf0,0x2f,0xd9,0x60,0x7a) #endif #endif /***************************************************************************** * DesktopGadget coclass */ DEFINE_GUID(CLSID_DesktopGadget, 0x924ccc1b, 0x6562, 0x4c85, 0x86,0x57, 0xd1,0x77,0x92,0x52,0x22,0xb6); #ifdef __cplusplus class DECLSPEC_UUID("924ccc1b-6562-4c85-8657-d177925222b6") DesktopGadget; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DesktopGadget, 0x924ccc1b, 0x6562, 0x4c85, 0x86,0x57, 0xd1,0x77,0x92,0x52,0x22,0xb6) #endif #endif /***************************************************************************** * PlaybackManager coclass */ DEFINE_GUID(CLSID_PlaybackManager, 0x29dfa654, 0xa97f, 0x47f0, 0xbf,0x26, 0x9e,0x41,0xfb,0x94,0x88,0xd9); #ifdef __cplusplus class DECLSPEC_UUID("29dfa654-a97f-47f0-bf26-9e41fb9488d9") PlaybackManager; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PlaybackManager, 0x29dfa654, 0xa97f, 0x47f0, 0xbf,0x26, 0x9e,0x41,0xfb,0x94,0x88,0xd9) #endif #endif /***************************************************************************** * AccessibilityDockingService coclass */ DEFINE_GUID(CLSID_AccessibilityDockingService, 0x29ce1d46, 0xb481, 0x4aa0, 0xa0,0x8a, 0xd3,0xeb,0xc8,0xac,0xa4,0x02); #ifdef __cplusplus class DECLSPEC_UUID("29ce1d46-b481-4aa0-a08a-d3ebc8aca402") AccessibilityDockingService; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(AccessibilityDockingService, 0x29ce1d46, 0xb481, 0x4aa0, 0xa0,0x8a, 0xd3,0xeb,0xc8,0xac,0xa4,0x02) #endif #endif /***************************************************************************** * FrameworkInputPane coclass */ DEFINE_GUID(CLSID_FrameworkInputPane, 0xd5120aa3, 0x46ba, 0x44c5, 0x82,0x2d, 0xca,0x80,0x92,0xc1,0xfc,0x72); #ifdef __cplusplus class DECLSPEC_UUID("d5120aa3-46ba-44c5-822d-ca8092c1fc72") FrameworkInputPane; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FrameworkInputPane, 0xd5120aa3, 0x46ba, 0x44c5, 0x82,0x2d, 0xca,0x80,0x92,0xc1,0xfc,0x72) #endif #endif /***************************************************************************** * DefFolderMenu coclass */ DEFINE_GUID(CLSID_DefFolderMenu, 0xc63382be, 0x7933, 0x48d0, 0x9a,0xc8, 0x85,0xfb,0x46,0xbe,0x2f,0xdd); #ifdef __cplusplus class DECLSPEC_UUID("c63382be-7933-48d0-9ac8-85fb46be2fdd") DefFolderMenu; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DefFolderMenu, 0xc63382be, 0x7933, 0x48d0, 0x9a,0xc8, 0x85,0xfb,0x46,0xbe,0x2f,0xdd) #endif #endif /***************************************************************************** * AppVisibility coclass */ DEFINE_GUID(CLSID_AppVisibility, 0x7e5fe3d9, 0x985f, 0x4908, 0x91,0xf9, 0xee,0x19,0xf9,0xfd,0x15,0x14); #ifdef __cplusplus class DECLSPEC_UUID("7e5fe3d9-985f-4908-91f9-ee19f9fd1514") AppVisibility; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(AppVisibility, 0x7e5fe3d9, 0x985f, 0x4908, 0x91,0xf9, 0xee,0x19,0xf9,0xfd,0x15,0x14) #endif #endif /***************************************************************************** * AppShellVerbHandler coclass */ DEFINE_GUID(CLSID_AppShellVerbHandler, 0x4ed3a719, 0xcea8, 0x4bd9, 0x91,0x0d, 0xe2,0x52,0xf9,0x97,0xaf,0xc2); #ifdef __cplusplus class DECLSPEC_UUID("4ed3a719-cea8-4bd9-910d-e252f997afc2") AppShellVerbHandler; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(AppShellVerbHandler, 0x4ed3a719, 0xcea8, 0x4bd9, 0x91,0x0d, 0xe2,0x52,0xf9,0x97,0xaf,0xc2) #endif #endif /***************************************************************************** * ExecuteUnknown coclass */ DEFINE_GUID(CLSID_ExecuteUnknown, 0xe44e9428, 0xbdbc, 0x4987, 0xa0,0x99, 0x40,0xdc,0x8f,0xd2,0x55,0xe7); #ifdef __cplusplus class DECLSPEC_UUID("e44e9428-bdbc-4987-a099-40dc8fd255e7") ExecuteUnknown; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ExecuteUnknown, 0xe44e9428, 0xbdbc, 0x4987, 0xa0,0x99, 0x40,0xdc,0x8f,0xd2,0x55,0xe7) #endif #endif /***************************************************************************** * PackageDebugSettings coclass */ DEFINE_GUID(CLSID_PackageDebugSettings, 0xb1aec16f, 0x2383, 0x4852, 0xb0,0xe9, 0x8f,0x0b,0x1d,0xc6,0x6b,0x4d); #ifdef __cplusplus class DECLSPEC_UUID("b1aec16f-2383-4852-b0e9-8f0b1dc66b4d") PackageDebugSettings; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PackageDebugSettings, 0xb1aec16f, 0x2383, 0x4852, 0xb0,0xe9, 0x8f,0x0b,0x1d,0xc6,0x6b,0x4d) #endif #endif /***************************************************************************** * ApplicationActivationManager coclass */ DEFINE_GUID(CLSID_ApplicationActivationManager, 0x45ba127d, 0x10a8, 0x46ea, 0x8a,0xb7, 0x56,0xea,0x90,0x78,0x94,0x3c); #ifdef __cplusplus class DECLSPEC_UUID("45ba127d-10a8-46ea-8ab7-56ea9078943c") ApplicationActivationManager; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationActivationManager, 0x45ba127d, 0x10a8, 0x46ea, 0x8a,0xb7, 0x56,0xea,0x90,0x78,0x94,0x3c) #endif #endif /***************************************************************************** * ApplicationDesignModeSettings coclass */ DEFINE_GUID(CLSID_ApplicationDesignModeSettings, 0x958a6fb5, 0xdcb2, 0x4faf, 0xaa,0xfd, 0x7f,0xb0,0x54,0xad,0x1a,0x3b); #ifdef __cplusplus class DECLSPEC_UUID("958a6fb5-dcb2-4faf-aafd-7fb054ad1a3b") ApplicationDesignModeSettings; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationDesignModeSettings, 0x958a6fb5, 0xdcb2, 0x4faf, 0xaa,0xfd, 0x7f,0xb0,0x54,0xad,0x1a,0x3b) #endif #endif /***************************************************************************** * ExecuteFolder coclass */ DEFINE_GUID(CLSID_ExecuteFolder, 0x11dbb47c, 0xa525, 0x400b, 0x9e,0x80, 0xa5,0x46,0x15,0xa0,0x90,0xc0); #ifdef __cplusplus class DECLSPEC_UUID("11dbb47c-a525-400b-9e80-a54615a090c0") ExecuteFolder; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ExecuteFolder, 0x11dbb47c, 0xa525, 0x400b, 0x9e,0x80, 0xa5,0x46,0x15,0xa0,0x90,0xc0) #endif #endif #endif /* __ShellObjects_LIBRARY_DEFINED__ */ #if NTDDI_VERSION >= NTDDI_VISTA SHSTDAPI SHGetTemporaryPropertyForItem(IShellItem *psi, REFPROPERTYKEY propkey, PROPVARIANT *ppropvar); SHSTDAPI SHSetTemporaryPropertyForItem(IShellItem *psi, REFPROPERTYKEY propkey, REFPROPVARIANT propvar); #endif #if NTDDI_VERSION >= NTDDI_WIN7 #if _WIN32_IE >= _WIN32_IE_IE70 typedef enum LIBRARYMANAGEDIALOGOPTIONS { LMD_DEFAULT = 0x0, LMD_ALLOWUNINDEXABLENETWORKLOCATIONS = 0x1 } LIBRARYMANAGEDIALOGOPTIONS; DEFINE_ENUM_FLAG_OPERATORS(LIBRARYMANAGEDIALOGOPTIONS) SHSTDAPI SHShowManageLibraryUI(IShellItem *psiLibrary, HWND hwndOwner, LPCWSTR pszTitle, LPCWSTR pszInstruction, LIBRARYMANAGEDIALOGOPTIONS lmdOptions); SHSTDAPI SHResolveLibrary(IShellItem *psiLibrary); #if defined(__cplusplus) && !defined(CINTERFACE) __forceinline HRESULT SHCreateLibrary(REFIID riid, void **ppv) { return CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, riid, ppv); } __forceinline HRESULT SHLoadLibraryFromItem(IShellItem *psiLibrary, DWORD grfMode, REFIID riid, void **ppv) { IShellLibrary *plib; HRESULT hr; *ppv = NULL; hr = CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&plib)); if (SUCCEEDED(hr)) { hr = plib->LoadLibraryFromItem(psiLibrary, grfMode); if (SUCCEEDED(hr)) hr = plib->QueryInterface(riid, ppv); plib->Release(); } return hr; } __forceinline HRESULT SHLoadLibraryFromKnownFolder(REFKNOWNFOLDERID kfidLibrary, DWORD grfMode, REFIID riid, void **ppv) { IShellLibrary *plib; HRESULT hr; *ppv = NULL; hr = CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&plib)); if (SUCCEEDED(hr)) { hr = plib->LoadLibraryFromKnownFolder(kfidLibrary, grfMode); if (SUCCEEDED(hr)) hr = plib->QueryInterface(riid, ppv); plib->Release(); } return hr; } __forceinline HRESULT SHLoadLibraryFromParsingName(PCWSTR pszParsingName, DWORD grfMode, REFIID riid, void **ppv) { IShellItem *psiLibrary; HRESULT hr; *ppv = NULL; hr = SHCreateItemFromParsingName(pszParsingName, NULL, IID_PPV_ARGS(&psiLibrary)); if (SUCCEEDED(hr)) { hr = SHLoadLibraryFromItem(psiLibrary, grfMode, riid, ppv); psiLibrary->Release(); } return hr; } __forceinline HRESULT SHAddFolderPathToLibrary(IShellLibrary *plib, PCWSTR pszFolderPath) { IShellItem *psiFolder; HRESULT hr = SHCreateItemFromParsingName(pszFolderPath, NULL, IID_PPV_ARGS(&psiFolder)); if (SUCCEEDED(hr)) { hr = plib->AddFolder(psiFolder); psiFolder->Release(); } return hr; } __forceinline HRESULT SHRemoveFolderPathFromLibrary(IShellLibrary *plib, PCWSTR pszFolderPath) { PIDLIST_ABSOLUTE pidlFolder = SHSimpleIDListFromPath(pszFolderPath); HRESULT hr = pidlFolder ? S_OK : E_INVALIDARG; if (SUCCEEDED(hr)) { IShellItem *psiFolder; hr = SHCreateItemFromIDList(pidlFolder, IID_PPV_ARGS(&psiFolder)); if (SUCCEEDED(hr)) { hr = plib->RemoveFolder(psiFolder); psiFolder->Release(); } CoTaskMemFree(pidlFolder); } return hr; } __forceinline HRESULT SHResolveFolderPathInLibrary(IShellLibrary *plib, PCWSTR pszFolderPath, DWORD dwTimeout, PWSTR *ppszResolvedPath) { *ppszResolvedPath = NULL; PIDLIST_ABSOLUTE pidlFolder = SHSimpleIDListFromPath(pszFolderPath); HRESULT hr = pidlFolder ? S_OK : E_INVALIDARG; if (SUCCEEDED(hr)) { IShellItem *psiFolder; hr = SHCreateItemFromIDList(pidlFolder, IID_PPV_ARGS(&psiFolder)); if (SUCCEEDED(hr)) { IShellItem *psiResolved; hr = plib->ResolveFolder(psiFolder, dwTimeout, IID_PPV_ARGS(&psiResolved)); if (SUCCEEDED(hr)) { hr = psiResolved->GetDisplayName(SIGDN_DESKTOPABSOLUTEPARSING, ppszResolvedPath); psiResolved->Release(); } psiFolder->Release(); } CoTaskMemFree(pidlFolder); } return hr; } __forceinline HRESULT SHSaveLibraryInFolderPath(IShellLibrary *plib, PCWSTR pszFolderPath, PCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, PWSTR *ppszSavedToPath) { IShellItem *psiFolder; HRESULT hr; if (ppszSavedToPath) *ppszSavedToPath = NULL; hr = SHCreateItemFromParsingName(pszFolderPath, NULL, IID_PPV_ARGS(&psiFolder)); if (SUCCEEDED(hr)) { IShellItem *psiSavedTo; hr = plib->Save(psiFolder, pszLibraryName, lsf, &psiSavedTo); if (SUCCEEDED(hr)) { if (ppszSavedToPath) hr = psiSavedTo->GetDisplayName(SIGDN_DESKTOPABSOLUTEPARSING, ppszSavedToPath); psiSavedTo->Release(); } psiFolder->Release(); } return hr; } #endif #endif #endif #if NTDDI_VERSION >= NTDDI_VISTA /***************************************************************************** * IAssocHandlerInvoker interface */ #ifndef __IAssocHandlerInvoker_INTERFACE_DEFINED__ #define __IAssocHandlerInvoker_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAssocHandlerInvoker, 0x92218cab, 0xecaa, 0x4335, 0x81,0x33, 0x80,0x7f,0xd2,0x34,0xc2,0xee); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("92218cab-ecaa-4335-8133-807fd234c2ee") IAssocHandlerInvoker : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SupportsSelection( ) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAssocHandlerInvoker, 0x92218cab, 0xecaa, 0x4335, 0x81,0x33, 0x80,0x7f,0xd2,0x34,0xc2,0xee) #endif #else typedef struct IAssocHandlerInvokerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAssocHandlerInvoker *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAssocHandlerInvoker *This); ULONG (STDMETHODCALLTYPE *Release)( IAssocHandlerInvoker *This); /*** IAssocHandlerInvoker methods ***/ HRESULT (STDMETHODCALLTYPE *SupportsSelection)( IAssocHandlerInvoker *This); HRESULT (STDMETHODCALLTYPE *Invoke)( IAssocHandlerInvoker *This); END_INTERFACE } IAssocHandlerInvokerVtbl; interface IAssocHandlerInvoker { CONST_VTBL IAssocHandlerInvokerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAssocHandlerInvoker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAssocHandlerInvoker_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAssocHandlerInvoker_Release(This) (This)->lpVtbl->Release(This) /*** IAssocHandlerInvoker methods ***/ #define IAssocHandlerInvoker_SupportsSelection(This) (This)->lpVtbl->SupportsSelection(This) #define IAssocHandlerInvoker_Invoke(This) (This)->lpVtbl->Invoke(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAssocHandlerInvoker_QueryInterface(IAssocHandlerInvoker* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAssocHandlerInvoker_AddRef(IAssocHandlerInvoker* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAssocHandlerInvoker_Release(IAssocHandlerInvoker* This) { return This->lpVtbl->Release(This); } /*** IAssocHandlerInvoker methods ***/ static FORCEINLINE HRESULT IAssocHandlerInvoker_SupportsSelection(IAssocHandlerInvoker* This) { return This->lpVtbl->SupportsSelection(This); } static FORCEINLINE HRESULT IAssocHandlerInvoker_Invoke(IAssocHandlerInvoker* This) { return This->lpVtbl->Invoke(This); } #endif #endif #endif #endif /* __IAssocHandlerInvoker_INTERFACE_DEFINED__ */ /***************************************************************************** * IAssocHandler interface */ #ifndef __IAssocHandler_INTERFACE_DEFINED__ #define __IAssocHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAssocHandler, 0xf04061ac, 0x1659, 0x4a3f, 0xa9,0x54, 0x77,0x5a,0xa5,0x7f,0xc0,0x83); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f04061ac-1659-4a3f-a954-775aa57fc083") IAssocHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetName( LPWSTR *ppsz) = 0; virtual HRESULT STDMETHODCALLTYPE GetUIName( LPWSTR *ppsz) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconLocation( LPWSTR *ppszPath, int *pIndex) = 0; virtual HRESULT STDMETHODCALLTYPE IsRecommended( ) = 0; virtual HRESULT STDMETHODCALLTYPE MakeDefault( LPCWSTR pszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( IDataObject *pdo) = 0; virtual HRESULT STDMETHODCALLTYPE CreateInvoker( IDataObject *pdo, IAssocHandlerInvoker **ppInvoker) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAssocHandler, 0xf04061ac, 0x1659, 0x4a3f, 0xa9,0x54, 0x77,0x5a,0xa5,0x7f,0xc0,0x83) #endif #else typedef struct IAssocHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAssocHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAssocHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IAssocHandler *This); /*** IAssocHandler methods ***/ HRESULT (STDMETHODCALLTYPE *GetName)( IAssocHandler *This, LPWSTR *ppsz); HRESULT (STDMETHODCALLTYPE *GetUIName)( IAssocHandler *This, LPWSTR *ppsz); HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IAssocHandler *This, LPWSTR *ppszPath, int *pIndex); HRESULT (STDMETHODCALLTYPE *IsRecommended)( IAssocHandler *This); HRESULT (STDMETHODCALLTYPE *MakeDefault)( IAssocHandler *This, LPCWSTR pszDescription); HRESULT (STDMETHODCALLTYPE *Invoke)( IAssocHandler *This, IDataObject *pdo); HRESULT (STDMETHODCALLTYPE *CreateInvoker)( IAssocHandler *This, IDataObject *pdo, IAssocHandlerInvoker **ppInvoker); END_INTERFACE } IAssocHandlerVtbl; interface IAssocHandler { CONST_VTBL IAssocHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAssocHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAssocHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAssocHandler_Release(This) (This)->lpVtbl->Release(This) /*** IAssocHandler methods ***/ #define IAssocHandler_GetName(This,ppsz) (This)->lpVtbl->GetName(This,ppsz) #define IAssocHandler_GetUIName(This,ppsz) (This)->lpVtbl->GetUIName(This,ppsz) #define IAssocHandler_GetIconLocation(This,ppszPath,pIndex) (This)->lpVtbl->GetIconLocation(This,ppszPath,pIndex) #define IAssocHandler_IsRecommended(This) (This)->lpVtbl->IsRecommended(This) #define IAssocHandler_MakeDefault(This,pszDescription) (This)->lpVtbl->MakeDefault(This,pszDescription) #define IAssocHandler_Invoke(This,pdo) (This)->lpVtbl->Invoke(This,pdo) #define IAssocHandler_CreateInvoker(This,pdo,ppInvoker) (This)->lpVtbl->CreateInvoker(This,pdo,ppInvoker) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAssocHandler_QueryInterface(IAssocHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAssocHandler_AddRef(IAssocHandler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAssocHandler_Release(IAssocHandler* This) { return This->lpVtbl->Release(This); } /*** IAssocHandler methods ***/ static FORCEINLINE HRESULT IAssocHandler_GetName(IAssocHandler* This,LPWSTR *ppsz) { return This->lpVtbl->GetName(This,ppsz); } static FORCEINLINE HRESULT IAssocHandler_GetUIName(IAssocHandler* This,LPWSTR *ppsz) { return This->lpVtbl->GetUIName(This,ppsz); } static FORCEINLINE HRESULT IAssocHandler_GetIconLocation(IAssocHandler* This,LPWSTR *ppszPath,int *pIndex) { return This->lpVtbl->GetIconLocation(This,ppszPath,pIndex); } static FORCEINLINE HRESULT IAssocHandler_IsRecommended(IAssocHandler* This) { return This->lpVtbl->IsRecommended(This); } static FORCEINLINE HRESULT IAssocHandler_MakeDefault(IAssocHandler* This,LPCWSTR pszDescription) { return This->lpVtbl->MakeDefault(This,pszDescription); } static FORCEINLINE HRESULT IAssocHandler_Invoke(IAssocHandler* This,IDataObject *pdo) { return This->lpVtbl->Invoke(This,pdo); } static FORCEINLINE HRESULT IAssocHandler_CreateInvoker(IAssocHandler* This,IDataObject *pdo,IAssocHandlerInvoker **ppInvoker) { return This->lpVtbl->CreateInvoker(This,pdo,ppInvoker); } #endif #endif #endif #endif /* __IAssocHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumAssocHandlers interface */ #ifndef __IEnumAssocHandlers_INTERFACE_DEFINED__ #define __IEnumAssocHandlers_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumAssocHandlers, 0x973810ae, 0x9599, 0x4b88, 0x9e,0x4d, 0x6e,0xe9,0x8c,0x95,0x52,0xda); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("973810ae-9599-4b88-9e4d-6ee98c9552da") IEnumAssocHandlers : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, IAssocHandler **rgelt, ULONG *pceltFetched) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumAssocHandlers, 0x973810ae, 0x9599, 0x4b88, 0x9e,0x4d, 0x6e,0xe9,0x8c,0x95,0x52,0xda) #endif #else typedef struct IEnumAssocHandlersVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumAssocHandlers *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumAssocHandlers *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumAssocHandlers *This); /*** IEnumAssocHandlers methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumAssocHandlers *This, ULONG celt, IAssocHandler **rgelt, ULONG *pceltFetched); END_INTERFACE } IEnumAssocHandlersVtbl; interface IEnumAssocHandlers { CONST_VTBL IEnumAssocHandlersVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumAssocHandlers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumAssocHandlers_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumAssocHandlers_Release(This) (This)->lpVtbl->Release(This) /*** IEnumAssocHandlers methods ***/ #define IEnumAssocHandlers_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumAssocHandlers_QueryInterface(IEnumAssocHandlers* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumAssocHandlers_AddRef(IEnumAssocHandlers* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumAssocHandlers_Release(IEnumAssocHandlers* This) { return This->lpVtbl->Release(This); } /*** IEnumAssocHandlers methods ***/ static FORCEINLINE HRESULT IEnumAssocHandlers_Next(IEnumAssocHandlers* This,ULONG celt,IAssocHandler **rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } #endif #endif #endif #endif /* __IEnumAssocHandlers_INTERFACE_DEFINED__ */ typedef enum ASSOC_FILTER { ASSOC_FILTER_NONE = 0x0, ASSOC_FILTER_RECOMMENDED = 0x1 } ASSOC_FILTER; DEFINE_ENUM_FLAG_OPERATORS(ASSOC_FILTER) SHSTDAPI SHAssocEnumHandlers(PCWSTR pszExtra, ASSOC_FILTER afFilter, IEnumAssocHandlers **ppEnumHandler); #endif #if NTDDI_VERSION >= NTDDI_WIN7 SHSTDAPI SHAssocEnumHandlersForProtocolByApplication(PCWSTR protocol, REFIID riid, void **enumHandlers); #endif #if NTDDI_VERSION >= NTDDI_WIN8 /***************************************************************************** * IDataObjectProvider interface */ #ifndef __IDataObjectProvider_INTERFACE_DEFINED__ #define __IDataObjectProvider_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDataObjectProvider, 0x3d25f6d6, 0x4b2a, 0x433c, 0x91,0x84, 0x7c,0x33,0xad,0x35,0xd0,0x01); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3d25f6d6-4b2a-433c-9184-7c33ad35d001") IDataObjectProvider : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDataObject( IDataObject **dataObject) = 0; virtual HRESULT STDMETHODCALLTYPE SetDataObject( IDataObject *dataObject) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDataObjectProvider, 0x3d25f6d6, 0x4b2a, 0x433c, 0x91,0x84, 0x7c,0x33,0xad,0x35,0xd0,0x01) #endif #else typedef struct IDataObjectProviderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDataObjectProvider *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDataObjectProvider *This); ULONG (STDMETHODCALLTYPE *Release)( IDataObjectProvider *This); /*** IDataObjectProvider methods ***/ HRESULT (STDMETHODCALLTYPE *GetDataObject)( IDataObjectProvider *This, IDataObject **dataObject); HRESULT (STDMETHODCALLTYPE *SetDataObject)( IDataObjectProvider *This, IDataObject *dataObject); END_INTERFACE } IDataObjectProviderVtbl; interface IDataObjectProvider { CONST_VTBL IDataObjectProviderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDataObjectProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDataObjectProvider_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDataObjectProvider_Release(This) (This)->lpVtbl->Release(This) /*** IDataObjectProvider methods ***/ #define IDataObjectProvider_GetDataObject(This,dataObject) (This)->lpVtbl->GetDataObject(This,dataObject) #define IDataObjectProvider_SetDataObject(This,dataObject) (This)->lpVtbl->SetDataObject(This,dataObject) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDataObjectProvider_QueryInterface(IDataObjectProvider* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDataObjectProvider_AddRef(IDataObjectProvider* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDataObjectProvider_Release(IDataObjectProvider* This) { return This->lpVtbl->Release(This); } /*** IDataObjectProvider methods ***/ static FORCEINLINE HRESULT IDataObjectProvider_GetDataObject(IDataObjectProvider* This,IDataObject **dataObject) { return This->lpVtbl->GetDataObject(This,dataObject); } static FORCEINLINE HRESULT IDataObjectProvider_SetDataObject(IDataObjectProvider* This,IDataObject *dataObject) { return This->lpVtbl->SetDataObject(This,dataObject); } #endif #endif #endif #endif /* __IDataObjectProvider_INTERFACE_DEFINED__ */ /***************************************************************************** * IDataTransferManagerInterop interface */ #ifndef __IDataTransferManagerInterop_INTERFACE_DEFINED__ #define __IDataTransferManagerInterop_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDataTransferManagerInterop, 0x3a3dcd6c, 0x3eab, 0x43dc, 0xbc,0xde, 0x45,0x67,0x1c,0xe8,0x00,0xc8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3a3dcd6c-3eab-43dc-bcde-45671ce800c8") IDataTransferManagerInterop : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetForWindow( HWND appWindow, REFIID riid, void **dataTransferManager) = 0; virtual HRESULT STDMETHODCALLTYPE ShowShareUIForWindow( HWND appWindow) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDataTransferManagerInterop, 0x3a3dcd6c, 0x3eab, 0x43dc, 0xbc,0xde, 0x45,0x67,0x1c,0xe8,0x00,0xc8) #endif #else typedef struct IDataTransferManagerInteropVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDataTransferManagerInterop *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDataTransferManagerInterop *This); ULONG (STDMETHODCALLTYPE *Release)( IDataTransferManagerInterop *This); /*** IDataTransferManagerInterop methods ***/ HRESULT (STDMETHODCALLTYPE *GetForWindow)( IDataTransferManagerInterop *This, HWND appWindow, REFIID riid, void **dataTransferManager); HRESULT (STDMETHODCALLTYPE *ShowShareUIForWindow)( IDataTransferManagerInterop *This, HWND appWindow); END_INTERFACE } IDataTransferManagerInteropVtbl; interface IDataTransferManagerInterop { CONST_VTBL IDataTransferManagerInteropVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDataTransferManagerInterop_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDataTransferManagerInterop_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDataTransferManagerInterop_Release(This) (This)->lpVtbl->Release(This) /*** IDataTransferManagerInterop methods ***/ #define IDataTransferManagerInterop_GetForWindow(This,appWindow,riid,dataTransferManager) (This)->lpVtbl->GetForWindow(This,appWindow,riid,dataTransferManager) #define IDataTransferManagerInterop_ShowShareUIForWindow(This,appWindow) (This)->lpVtbl->ShowShareUIForWindow(This,appWindow) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDataTransferManagerInterop_QueryInterface(IDataTransferManagerInterop* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDataTransferManagerInterop_AddRef(IDataTransferManagerInterop* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDataTransferManagerInterop_Release(IDataTransferManagerInterop* This) { return This->lpVtbl->Release(This); } /*** IDataTransferManagerInterop methods ***/ static FORCEINLINE HRESULT IDataTransferManagerInterop_GetForWindow(IDataTransferManagerInterop* This,HWND appWindow,REFIID riid,void **dataTransferManager) { return This->lpVtbl->GetForWindow(This,appWindow,riid,dataTransferManager); } static FORCEINLINE HRESULT IDataTransferManagerInterop_ShowShareUIForWindow(IDataTransferManagerInterop* This,HWND appWindow) { return This->lpVtbl->ShowShareUIForWindow(This,appWindow); } #endif #endif #endif #endif /* __IDataTransferManagerInterop_INTERFACE_DEFINED__ */ /***************************************************************************** * IFrameworkInputPaneHandler interface */ #ifndef __IFrameworkInputPaneHandler_INTERFACE_DEFINED__ #define __IFrameworkInputPaneHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFrameworkInputPaneHandler, 0x226c537b, 0x1e76, 0x4d9e, 0xa7,0x60, 0x33,0xdb,0x29,0x92,0x2f,0x18); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("226c537b-1e76-4d9e-a760-33db29922f18") IFrameworkInputPaneHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Showing( RECT *prcInputPaneScreenLocation, WINBOOL fEnsureFocusedElementInView) = 0; virtual HRESULT STDMETHODCALLTYPE Hiding( WINBOOL fEnsureFocusedElementInView) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFrameworkInputPaneHandler, 0x226c537b, 0x1e76, 0x4d9e, 0xa7,0x60, 0x33,0xdb,0x29,0x92,0x2f,0x18) #endif #else typedef struct IFrameworkInputPaneHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFrameworkInputPaneHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFrameworkInputPaneHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IFrameworkInputPaneHandler *This); /*** IFrameworkInputPaneHandler methods ***/ HRESULT (STDMETHODCALLTYPE *Showing)( IFrameworkInputPaneHandler *This, RECT *prcInputPaneScreenLocation, WINBOOL fEnsureFocusedElementInView); HRESULT (STDMETHODCALLTYPE *Hiding)( IFrameworkInputPaneHandler *This, WINBOOL fEnsureFocusedElementInView); END_INTERFACE } IFrameworkInputPaneHandlerVtbl; interface IFrameworkInputPaneHandler { CONST_VTBL IFrameworkInputPaneHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFrameworkInputPaneHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFrameworkInputPaneHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFrameworkInputPaneHandler_Release(This) (This)->lpVtbl->Release(This) /*** IFrameworkInputPaneHandler methods ***/ #define IFrameworkInputPaneHandler_Showing(This,prcInputPaneScreenLocation,fEnsureFocusedElementInView) (This)->lpVtbl->Showing(This,prcInputPaneScreenLocation,fEnsureFocusedElementInView) #define IFrameworkInputPaneHandler_Hiding(This,fEnsureFocusedElementInView) (This)->lpVtbl->Hiding(This,fEnsureFocusedElementInView) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFrameworkInputPaneHandler_QueryInterface(IFrameworkInputPaneHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFrameworkInputPaneHandler_AddRef(IFrameworkInputPaneHandler* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFrameworkInputPaneHandler_Release(IFrameworkInputPaneHandler* This) { return This->lpVtbl->Release(This); } /*** IFrameworkInputPaneHandler methods ***/ static FORCEINLINE HRESULT IFrameworkInputPaneHandler_Showing(IFrameworkInputPaneHandler* This,RECT *prcInputPaneScreenLocation,WINBOOL fEnsureFocusedElementInView) { return This->lpVtbl->Showing(This,prcInputPaneScreenLocation,fEnsureFocusedElementInView); } static FORCEINLINE HRESULT IFrameworkInputPaneHandler_Hiding(IFrameworkInputPaneHandler* This,WINBOOL fEnsureFocusedElementInView) { return This->lpVtbl->Hiding(This,fEnsureFocusedElementInView); } #endif #endif #endif #endif /* __IFrameworkInputPaneHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * IFrameworkInputPane interface */ #ifndef __IFrameworkInputPane_INTERFACE_DEFINED__ #define __IFrameworkInputPane_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFrameworkInputPane, 0x5752238b, 0x24f0, 0x495a, 0x82,0xf1, 0x2f,0xd5,0x93,0x05,0x67,0x96); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5752238b-24f0-495a-82f1-2fd593056796") IFrameworkInputPane : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( IUnknown *pWindow, IFrameworkInputPaneHandler *pHandler, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE AdviseWithHWND( HWND hwnd, IFrameworkInputPaneHandler *pHandler, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Location( RECT *prcInputPaneScreenLocation) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFrameworkInputPane, 0x5752238b, 0x24f0, 0x495a, 0x82,0xf1, 0x2f,0xd5,0x93,0x05,0x67,0x96) #endif #else typedef struct IFrameworkInputPaneVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFrameworkInputPane *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFrameworkInputPane *This); ULONG (STDMETHODCALLTYPE *Release)( IFrameworkInputPane *This); /*** IFrameworkInputPane methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( IFrameworkInputPane *This, IUnknown *pWindow, IFrameworkInputPaneHandler *pHandler, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *AdviseWithHWND)( IFrameworkInputPane *This, HWND hwnd, IFrameworkInputPaneHandler *pHandler, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFrameworkInputPane *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *Location)( IFrameworkInputPane *This, RECT *prcInputPaneScreenLocation); END_INTERFACE } IFrameworkInputPaneVtbl; interface IFrameworkInputPane { CONST_VTBL IFrameworkInputPaneVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFrameworkInputPane_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFrameworkInputPane_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFrameworkInputPane_Release(This) (This)->lpVtbl->Release(This) /*** IFrameworkInputPane methods ***/ #define IFrameworkInputPane_Advise(This,pWindow,pHandler,pdwCookie) (This)->lpVtbl->Advise(This,pWindow,pHandler,pdwCookie) #define IFrameworkInputPane_AdviseWithHWND(This,hwnd,pHandler,pdwCookie) (This)->lpVtbl->AdviseWithHWND(This,hwnd,pHandler,pdwCookie) #define IFrameworkInputPane_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFrameworkInputPane_Location(This,prcInputPaneScreenLocation) (This)->lpVtbl->Location(This,prcInputPaneScreenLocation) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IFrameworkInputPane_QueryInterface(IFrameworkInputPane* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IFrameworkInputPane_AddRef(IFrameworkInputPane* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IFrameworkInputPane_Release(IFrameworkInputPane* This) { return This->lpVtbl->Release(This); } /*** IFrameworkInputPane methods ***/ static FORCEINLINE HRESULT IFrameworkInputPane_Advise(IFrameworkInputPane* This,IUnknown *pWindow,IFrameworkInputPaneHandler *pHandler,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pWindow,pHandler,pdwCookie); } static FORCEINLINE HRESULT IFrameworkInputPane_AdviseWithHWND(IFrameworkInputPane* This,HWND hwnd,IFrameworkInputPaneHandler *pHandler,DWORD *pdwCookie) { return This->lpVtbl->AdviseWithHWND(This,hwnd,pHandler,pdwCookie); } static FORCEINLINE HRESULT IFrameworkInputPane_Unadvise(IFrameworkInputPane* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static FORCEINLINE HRESULT IFrameworkInputPane_Location(IFrameworkInputPane* This,RECT *prcInputPaneScreenLocation) { return This->lpVtbl->Location(This,prcInputPaneScreenLocation); } #endif #endif #endif #endif /* __IFrameworkInputPane_INTERFACE_DEFINED__ */ #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #ifndef PROP_CONTRACT_DELEGATE #define PROP_CONTRACT_DELEGATE L"ContractDelegate" #endif __forceinline void SetContractDelegateWindow(HWND hwndSource, HWND hwndDelegate) { if (hwndDelegate != NULL) SetPropW (hwndSource, PROP_CONTRACT_DELEGATE, (HANDLE)hwndDelegate); else RemovePropW(hwndSource, PROP_CONTRACT_DELEGATE); } #ifndef PROP_CONTRACT_DELEGATE #define PROP_CONTRACT_DELEGATE L"ContractDelegate" #endif __forceinline HWND GetContractDelegateWindow(HWND hwndSource) { return (HWND)GetPropW(hwndSource, PROP_CONTRACT_DELEGATE); } #endif #endif #if NTDDI_VERSION >= NTDDI_WIN8 /***************************************************************************** * ISearchableApplication interface */ #ifndef __ISearchableApplication_INTERFACE_DEFINED__ #define __ISearchableApplication_INTERFACE_DEFINED__ DEFINE_GUID(IID_ISearchableApplication, 0x08922f8d, 0x243a, 0x49e3, 0xa4,0x95, 0xbd,0x4f,0x9c,0xf8,0xab,0x9e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("08922f8d-243a-49e3-a495-bd4f9cf8ab9e") ISearchableApplication : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetSearchWindow( HWND *hwnd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ISearchableApplication, 0x08922f8d, 0x243a, 0x49e3, 0xa4,0x95, 0xbd,0x4f,0x9c,0xf8,0xab,0x9e) #endif #else typedef struct ISearchableApplicationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ISearchableApplication *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ISearchableApplication *This); ULONG (STDMETHODCALLTYPE *Release)( ISearchableApplication *This); /*** ISearchableApplication methods ***/ HRESULT (STDMETHODCALLTYPE *GetSearchWindow)( ISearchableApplication *This, HWND *hwnd); END_INTERFACE } ISearchableApplicationVtbl; interface ISearchableApplication { CONST_VTBL ISearchableApplicationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ISearchableApplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ISearchableApplication_AddRef(This) (This)->lpVtbl->AddRef(This) #define ISearchableApplication_Release(This) (This)->lpVtbl->Release(This) /*** ISearchableApplication methods ***/ #define ISearchableApplication_GetSearchWindow(This,hwnd) (This)->lpVtbl->GetSearchWindow(This,hwnd) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ISearchableApplication_QueryInterface(ISearchableApplication* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ISearchableApplication_AddRef(ISearchableApplication* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ISearchableApplication_Release(ISearchableApplication* This) { return This->lpVtbl->Release(This); } /*** ISearchableApplication methods ***/ static FORCEINLINE HRESULT ISearchableApplication_GetSearchWindow(ISearchableApplication* This,HWND *hwnd) { return This->lpVtbl->GetSearchWindow(This,hwnd); } #endif #endif #endif #endif /* __ISearchableApplication_INTERFACE_DEFINED__ */ typedef enum UNDOCK_REASON { UR_RESOLUTION_CHANGE = 0, UR_MONITOR_DISCONNECT = 1 } UNDOCK_REASON; /***************************************************************************** * IAccessibilityDockingServiceCallback interface */ #ifndef __IAccessibilityDockingServiceCallback_INTERFACE_DEFINED__ #define __IAccessibilityDockingServiceCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAccessibilityDockingServiceCallback, 0x157733fd, 0xa592, 0x42e5, 0xb5,0x94, 0x24,0x84,0x68,0xc5,0xa8,0x1b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("157733fd-a592-42e5-b594-248468c5a81b") IAccessibilityDockingServiceCallback : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Undocked( UNDOCK_REASON undockReason) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAccessibilityDockingServiceCallback, 0x157733fd, 0xa592, 0x42e5, 0xb5,0x94, 0x24,0x84,0x68,0xc5,0xa8,0x1b) #endif #else typedef struct IAccessibilityDockingServiceCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAccessibilityDockingServiceCallback *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAccessibilityDockingServiceCallback *This); ULONG (STDMETHODCALLTYPE *Release)( IAccessibilityDockingServiceCallback *This); /*** IAccessibilityDockingServiceCallback methods ***/ HRESULT (STDMETHODCALLTYPE *Undocked)( IAccessibilityDockingServiceCallback *This, UNDOCK_REASON undockReason); END_INTERFACE } IAccessibilityDockingServiceCallbackVtbl; interface IAccessibilityDockingServiceCallback { CONST_VTBL IAccessibilityDockingServiceCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAccessibilityDockingServiceCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAccessibilityDockingServiceCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAccessibilityDockingServiceCallback_Release(This) (This)->lpVtbl->Release(This) /*** IAccessibilityDockingServiceCallback methods ***/ #define IAccessibilityDockingServiceCallback_Undocked(This,undockReason) (This)->lpVtbl->Undocked(This,undockReason) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAccessibilityDockingServiceCallback_QueryInterface(IAccessibilityDockingServiceCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAccessibilityDockingServiceCallback_AddRef(IAccessibilityDockingServiceCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAccessibilityDockingServiceCallback_Release(IAccessibilityDockingServiceCallback* This) { return This->lpVtbl->Release(This); } /*** IAccessibilityDockingServiceCallback methods ***/ static FORCEINLINE HRESULT IAccessibilityDockingServiceCallback_Undocked(IAccessibilityDockingServiceCallback* This,UNDOCK_REASON undockReason) { return This->lpVtbl->Undocked(This,undockReason); } #endif #endif #endif #endif /* __IAccessibilityDockingServiceCallback_INTERFACE_DEFINED__ */ /***************************************************************************** * IAccessibilityDockingService interface */ #ifndef __IAccessibilityDockingService_INTERFACE_DEFINED__ #define __IAccessibilityDockingService_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAccessibilityDockingService, 0x8849dc22, 0xcedf, 0x4c95, 0x99,0x8d, 0x05,0x14,0x19,0xdd,0x3f,0x76); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8849dc22-cedf-4c95-998d-051419dd3f76") IAccessibilityDockingService : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetAvailableSize( HMONITOR hMonitor, UINT *pcxFixed, UINT *pcyMax) = 0; virtual HRESULT STDMETHODCALLTYPE DockWindow( HWND hwnd, HMONITOR hMonitor, UINT cyRequested, IAccessibilityDockingServiceCallback *pCallback) = 0; virtual HRESULT STDMETHODCALLTYPE UndockWindow( HWND hwnd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAccessibilityDockingService, 0x8849dc22, 0xcedf, 0x4c95, 0x99,0x8d, 0x05,0x14,0x19,0xdd,0x3f,0x76) #endif #else typedef struct IAccessibilityDockingServiceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAccessibilityDockingService *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAccessibilityDockingService *This); ULONG (STDMETHODCALLTYPE *Release)( IAccessibilityDockingService *This); /*** IAccessibilityDockingService methods ***/ HRESULT (STDMETHODCALLTYPE *GetAvailableSize)( IAccessibilityDockingService *This, HMONITOR hMonitor, UINT *pcxFixed, UINT *pcyMax); HRESULT (STDMETHODCALLTYPE *DockWindow)( IAccessibilityDockingService *This, HWND hwnd, HMONITOR hMonitor, UINT cyRequested, IAccessibilityDockingServiceCallback *pCallback); HRESULT (STDMETHODCALLTYPE *UndockWindow)( IAccessibilityDockingService *This, HWND hwnd); END_INTERFACE } IAccessibilityDockingServiceVtbl; interface IAccessibilityDockingService { CONST_VTBL IAccessibilityDockingServiceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAccessibilityDockingService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAccessibilityDockingService_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAccessibilityDockingService_Release(This) (This)->lpVtbl->Release(This) /*** IAccessibilityDockingService methods ***/ #define IAccessibilityDockingService_GetAvailableSize(This,hMonitor,pcxFixed,pcyMax) (This)->lpVtbl->GetAvailableSize(This,hMonitor,pcxFixed,pcyMax) #define IAccessibilityDockingService_DockWindow(This,hwnd,hMonitor,cyRequested,pCallback) (This)->lpVtbl->DockWindow(This,hwnd,hMonitor,cyRequested,pCallback) #define IAccessibilityDockingService_UndockWindow(This,hwnd) (This)->lpVtbl->UndockWindow(This,hwnd) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAccessibilityDockingService_QueryInterface(IAccessibilityDockingService* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAccessibilityDockingService_AddRef(IAccessibilityDockingService* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAccessibilityDockingService_Release(IAccessibilityDockingService* This) { return This->lpVtbl->Release(This); } /*** IAccessibilityDockingService methods ***/ static FORCEINLINE HRESULT IAccessibilityDockingService_GetAvailableSize(IAccessibilityDockingService* This,HMONITOR hMonitor,UINT *pcxFixed,UINT *pcyMax) { return This->lpVtbl->GetAvailableSize(This,hMonitor,pcxFixed,pcyMax); } static FORCEINLINE HRESULT IAccessibilityDockingService_DockWindow(IAccessibilityDockingService* This,HWND hwnd,HMONITOR hMonitor,UINT cyRequested,IAccessibilityDockingServiceCallback *pCallback) { return This->lpVtbl->DockWindow(This,hwnd,hMonitor,cyRequested,pCallback); } static FORCEINLINE HRESULT IAccessibilityDockingService_UndockWindow(IAccessibilityDockingService* This,HWND hwnd) { return This->lpVtbl->UndockWindow(This,hwnd); } #endif #endif #endif #endif /* __IAccessibilityDockingService_INTERFACE_DEFINED__ */ typedef enum MONITOR_APP_VISIBILITY { MAV_UNKNOWN = 0, MAV_NO_APP_VISIBLE = 1, MAV_APP_VISIBLE = 2 } MONITOR_APP_VISIBILITY; /***************************************************************************** * IAppVisibilityEvents interface */ #ifndef __IAppVisibilityEvents_INTERFACE_DEFINED__ #define __IAppVisibilityEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAppVisibilityEvents, 0x6584ce6b, 0x7d82, 0x49c2, 0x89,0xc9, 0xc6,0xbc,0x02,0xba,0x8c,0x38); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6584ce6b-7d82-49c2-89c9-c6bc02ba8c38") IAppVisibilityEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AppVisibilityOnMonitorChanged( HMONITOR hMonitor, MONITOR_APP_VISIBILITY previousMode, MONITOR_APP_VISIBILITY currentMode) = 0; virtual HRESULT STDMETHODCALLTYPE LauncherVisibilityChange( WINBOOL currentVisibleState) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAppVisibilityEvents, 0x6584ce6b, 0x7d82, 0x49c2, 0x89,0xc9, 0xc6,0xbc,0x02,0xba,0x8c,0x38) #endif #else typedef struct IAppVisibilityEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAppVisibilityEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAppVisibilityEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IAppVisibilityEvents *This); /*** IAppVisibilityEvents methods ***/ HRESULT (STDMETHODCALLTYPE *AppVisibilityOnMonitorChanged)( IAppVisibilityEvents *This, HMONITOR hMonitor, MONITOR_APP_VISIBILITY previousMode, MONITOR_APP_VISIBILITY currentMode); HRESULT (STDMETHODCALLTYPE *LauncherVisibilityChange)( IAppVisibilityEvents *This, WINBOOL currentVisibleState); END_INTERFACE } IAppVisibilityEventsVtbl; interface IAppVisibilityEvents { CONST_VTBL IAppVisibilityEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAppVisibilityEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAppVisibilityEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAppVisibilityEvents_Release(This) (This)->lpVtbl->Release(This) /*** IAppVisibilityEvents methods ***/ #define IAppVisibilityEvents_AppVisibilityOnMonitorChanged(This,hMonitor,previousMode,currentMode) (This)->lpVtbl->AppVisibilityOnMonitorChanged(This,hMonitor,previousMode,currentMode) #define IAppVisibilityEvents_LauncherVisibilityChange(This,currentVisibleState) (This)->lpVtbl->LauncherVisibilityChange(This,currentVisibleState) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAppVisibilityEvents_QueryInterface(IAppVisibilityEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAppVisibilityEvents_AddRef(IAppVisibilityEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAppVisibilityEvents_Release(IAppVisibilityEvents* This) { return This->lpVtbl->Release(This); } /*** IAppVisibilityEvents methods ***/ static FORCEINLINE HRESULT IAppVisibilityEvents_AppVisibilityOnMonitorChanged(IAppVisibilityEvents* This,HMONITOR hMonitor,MONITOR_APP_VISIBILITY previousMode,MONITOR_APP_VISIBILITY currentMode) { return This->lpVtbl->AppVisibilityOnMonitorChanged(This,hMonitor,previousMode,currentMode); } static FORCEINLINE HRESULT IAppVisibilityEvents_LauncherVisibilityChange(IAppVisibilityEvents* This,WINBOOL currentVisibleState) { return This->lpVtbl->LauncherVisibilityChange(This,currentVisibleState); } #endif #endif #endif #endif /* __IAppVisibilityEvents_INTERFACE_DEFINED__ */ /***************************************************************************** * IAppVisibility interface */ #ifndef __IAppVisibility_INTERFACE_DEFINED__ #define __IAppVisibility_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAppVisibility, 0x2246ea2d, 0xcaea, 0x4444, 0xa3,0xc4, 0x6d,0xe8,0x27,0xe4,0x43,0x13); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2246ea2d-caea-4444-a3c4-6de827e44313") IAppVisibility : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetAppVisibilityOnMonitor( HMONITOR hMonitor, MONITOR_APP_VISIBILITY *pMode) = 0; virtual HRESULT STDMETHODCALLTYPE IsLauncherVisible( WINBOOL *pfVisible) = 0; virtual HRESULT STDMETHODCALLTYPE Advise( IAppVisibilityEvents *pCallback, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAppVisibility, 0x2246ea2d, 0xcaea, 0x4444, 0xa3,0xc4, 0x6d,0xe8,0x27,0xe4,0x43,0x13) #endif #else typedef struct IAppVisibilityVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAppVisibility *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAppVisibility *This); ULONG (STDMETHODCALLTYPE *Release)( IAppVisibility *This); /*** IAppVisibility methods ***/ HRESULT (STDMETHODCALLTYPE *GetAppVisibilityOnMonitor)( IAppVisibility *This, HMONITOR hMonitor, MONITOR_APP_VISIBILITY *pMode); HRESULT (STDMETHODCALLTYPE *IsLauncherVisible)( IAppVisibility *This, WINBOOL *pfVisible); HRESULT (STDMETHODCALLTYPE *Advise)( IAppVisibility *This, IAppVisibilityEvents *pCallback, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IAppVisibility *This, DWORD dwCookie); END_INTERFACE } IAppVisibilityVtbl; interface IAppVisibility { CONST_VTBL IAppVisibilityVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAppVisibility_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAppVisibility_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAppVisibility_Release(This) (This)->lpVtbl->Release(This) /*** IAppVisibility methods ***/ #define IAppVisibility_GetAppVisibilityOnMonitor(This,hMonitor,pMode) (This)->lpVtbl->GetAppVisibilityOnMonitor(This,hMonitor,pMode) #define IAppVisibility_IsLauncherVisible(This,pfVisible) (This)->lpVtbl->IsLauncherVisible(This,pfVisible) #define IAppVisibility_Advise(This,pCallback,pdwCookie) (This)->lpVtbl->Advise(This,pCallback,pdwCookie) #define IAppVisibility_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IAppVisibility_QueryInterface(IAppVisibility* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IAppVisibility_AddRef(IAppVisibility* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IAppVisibility_Release(IAppVisibility* This) { return This->lpVtbl->Release(This); } /*** IAppVisibility methods ***/ static FORCEINLINE HRESULT IAppVisibility_GetAppVisibilityOnMonitor(IAppVisibility* This,HMONITOR hMonitor,MONITOR_APP_VISIBILITY *pMode) { return This->lpVtbl->GetAppVisibilityOnMonitor(This,hMonitor,pMode); } static FORCEINLINE HRESULT IAppVisibility_IsLauncherVisible(IAppVisibility* This,WINBOOL *pfVisible) { return This->lpVtbl->IsLauncherVisible(This,pfVisible); } static FORCEINLINE HRESULT IAppVisibility_Advise(IAppVisibility* This,IAppVisibilityEvents *pCallback,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pCallback,pdwCookie); } static FORCEINLINE HRESULT IAppVisibility_Unadvise(IAppVisibility* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } #endif #endif #endif #endif /* __IAppVisibility_INTERFACE_DEFINED__ */ #if 0 typedef WCHAR *PZZWSTR; #endif typedef enum PACKAGE_EXECUTION_STATE { PES_UNKNOWN = 0, PES_RUNNING = 1, PES_SUSPENDING = 2, PES_SUSPENDED = 3, PES_TERMINATED = 4 } PACKAGE_EXECUTION_STATE; /***************************************************************************** * IPackageExecutionStateChangeNotification interface */ #ifndef __IPackageExecutionStateChangeNotification_INTERFACE_DEFINED__ #define __IPackageExecutionStateChangeNotification_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPackageExecutionStateChangeNotification, 0x1bb12a62, 0x2ad8, 0x432b, 0x8c,0xcf, 0x0c,0x2c,0x52,0xaf,0xcd,0x5b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1bb12a62-2ad8-432b-8ccf-0c2c52afcd5b") IPackageExecutionStateChangeNotification : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnStateChanged( LPCWSTR pszPackageFullName, PACKAGE_EXECUTION_STATE pesNewState) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPackageExecutionStateChangeNotification, 0x1bb12a62, 0x2ad8, 0x432b, 0x8c,0xcf, 0x0c,0x2c,0x52,0xaf,0xcd,0x5b) #endif #else typedef struct IPackageExecutionStateChangeNotificationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPackageExecutionStateChangeNotification *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPackageExecutionStateChangeNotification *This); ULONG (STDMETHODCALLTYPE *Release)( IPackageExecutionStateChangeNotification *This); /*** IPackageExecutionStateChangeNotification methods ***/ HRESULT (STDMETHODCALLTYPE *OnStateChanged)( IPackageExecutionStateChangeNotification *This, LPCWSTR pszPackageFullName, PACKAGE_EXECUTION_STATE pesNewState); END_INTERFACE } IPackageExecutionStateChangeNotificationVtbl; interface IPackageExecutionStateChangeNotification { CONST_VTBL IPackageExecutionStateChangeNotificationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPackageExecutionStateChangeNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPackageExecutionStateChangeNotification_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPackageExecutionStateChangeNotification_Release(This) (This)->lpVtbl->Release(This) /*** IPackageExecutionStateChangeNotification methods ***/ #define IPackageExecutionStateChangeNotification_OnStateChanged(This,pszPackageFullName,pesNewState) (This)->lpVtbl->OnStateChanged(This,pszPackageFullName,pesNewState) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPackageExecutionStateChangeNotification_QueryInterface(IPackageExecutionStateChangeNotification* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPackageExecutionStateChangeNotification_AddRef(IPackageExecutionStateChangeNotification* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPackageExecutionStateChangeNotification_Release(IPackageExecutionStateChangeNotification* This) { return This->lpVtbl->Release(This); } /*** IPackageExecutionStateChangeNotification methods ***/ static FORCEINLINE HRESULT IPackageExecutionStateChangeNotification_OnStateChanged(IPackageExecutionStateChangeNotification* This,LPCWSTR pszPackageFullName,PACKAGE_EXECUTION_STATE pesNewState) { return This->lpVtbl->OnStateChanged(This,pszPackageFullName,pesNewState); } #endif #endif #endif #endif /* __IPackageExecutionStateChangeNotification_INTERFACE_DEFINED__ */ /***************************************************************************** * IPackageDebugSettings interface */ #ifndef __IPackageDebugSettings_INTERFACE_DEFINED__ #define __IPackageDebugSettings_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPackageDebugSettings, 0xf27c3930, 0x8029, 0x4ad1, 0x94,0xe3, 0x3d,0xba,0x41,0x78,0x10,0xc1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f27c3930-8029-4ad1-94e3-3dba417810c1") IPackageDebugSettings : public IUnknown { virtual HRESULT STDMETHODCALLTYPE EnableDebugging( LPCWSTR packageFullName, LPCWSTR debuggerCommandLine, PZZWSTR environment) = 0; virtual HRESULT STDMETHODCALLTYPE DisableDebugging( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE Suspend( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE Resume( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE TerminateAllProcesses( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE SetTargetSessionId( ULONG sessionId) = 0; virtual HRESULT STDMETHODCALLTYPE EnumerateBackgroundTasks( LPCWSTR packageFullName, ULONG *taskCount, LPCGUID *taskIds, LPCWSTR **taskNames) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateBackgroundTask( LPCGUID taskId) = 0; virtual HRESULT STDMETHODCALLTYPE StartServicing( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE StopServicing( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE StartSessionRedirection( LPCWSTR packageFullName, ULONG sessionId) = 0; virtual HRESULT STDMETHODCALLTYPE StopSessionRedirection( LPCWSTR packageFullName) = 0; virtual HRESULT STDMETHODCALLTYPE GetPackageExecutionState( LPCWSTR packageFullName, PACKAGE_EXECUTION_STATE *packageExecutionState) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterForPackageStateChanges( LPCWSTR packageFullName, IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterForPackageStateChanges( DWORD dwCookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPackageDebugSettings, 0xf27c3930, 0x8029, 0x4ad1, 0x94,0xe3, 0x3d,0xba,0x41,0x78,0x10,0xc1) #endif #else typedef struct IPackageDebugSettingsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPackageDebugSettings *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPackageDebugSettings *This); ULONG (STDMETHODCALLTYPE *Release)( IPackageDebugSettings *This); /*** IPackageDebugSettings methods ***/ HRESULT (STDMETHODCALLTYPE *EnableDebugging)( IPackageDebugSettings *This, LPCWSTR packageFullName, LPCWSTR debuggerCommandLine, PZZWSTR environment); HRESULT (STDMETHODCALLTYPE *DisableDebugging)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *Suspend)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *Resume)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *TerminateAllProcesses)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *SetTargetSessionId)( IPackageDebugSettings *This, ULONG sessionId); HRESULT (STDMETHODCALLTYPE *EnumerateBackgroundTasks)( IPackageDebugSettings *This, LPCWSTR packageFullName, ULONG *taskCount, LPCGUID *taskIds, LPCWSTR **taskNames); HRESULT (STDMETHODCALLTYPE *ActivateBackgroundTask)( IPackageDebugSettings *This, LPCGUID taskId); HRESULT (STDMETHODCALLTYPE *StartServicing)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *StopServicing)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *StartSessionRedirection)( IPackageDebugSettings *This, LPCWSTR packageFullName, ULONG sessionId); HRESULT (STDMETHODCALLTYPE *StopSessionRedirection)( IPackageDebugSettings *This, LPCWSTR packageFullName); HRESULT (STDMETHODCALLTYPE *GetPackageExecutionState)( IPackageDebugSettings *This, LPCWSTR packageFullName, PACKAGE_EXECUTION_STATE *packageExecutionState); HRESULT (STDMETHODCALLTYPE *RegisterForPackageStateChanges)( IPackageDebugSettings *This, LPCWSTR packageFullName, IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *UnregisterForPackageStateChanges)( IPackageDebugSettings *This, DWORD dwCookie); END_INTERFACE } IPackageDebugSettingsVtbl; interface IPackageDebugSettings { CONST_VTBL IPackageDebugSettingsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPackageDebugSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPackageDebugSettings_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPackageDebugSettings_Release(This) (This)->lpVtbl->Release(This) /*** IPackageDebugSettings methods ***/ #define IPackageDebugSettings_EnableDebugging(This,packageFullName,debuggerCommandLine,environment) (This)->lpVtbl->EnableDebugging(This,packageFullName,debuggerCommandLine,environment) #define IPackageDebugSettings_DisableDebugging(This,packageFullName) (This)->lpVtbl->DisableDebugging(This,packageFullName) #define IPackageDebugSettings_Suspend(This,packageFullName) (This)->lpVtbl->Suspend(This,packageFullName) #define IPackageDebugSettings_Resume(This,packageFullName) (This)->lpVtbl->Resume(This,packageFullName) #define IPackageDebugSettings_TerminateAllProcesses(This,packageFullName) (This)->lpVtbl->TerminateAllProcesses(This,packageFullName) #define IPackageDebugSettings_SetTargetSessionId(This,sessionId) (This)->lpVtbl->SetTargetSessionId(This,sessionId) #define IPackageDebugSettings_EnumerateBackgroundTasks(This,packageFullName,taskCount,taskIds,taskNames) (This)->lpVtbl->EnumerateBackgroundTasks(This,packageFullName,taskCount,taskIds,taskNames) #define IPackageDebugSettings_ActivateBackgroundTask(This,taskId) (This)->lpVtbl->ActivateBackgroundTask(This,taskId) #define IPackageDebugSettings_StartServicing(This,packageFullName) (This)->lpVtbl->StartServicing(This,packageFullName) #define IPackageDebugSettings_StopServicing(This,packageFullName) (This)->lpVtbl->StopServicing(This,packageFullName) #define IPackageDebugSettings_StartSessionRedirection(This,packageFullName,sessionId) (This)->lpVtbl->StartSessionRedirection(This,packageFullName,sessionId) #define IPackageDebugSettings_StopSessionRedirection(This,packageFullName) (This)->lpVtbl->StopSessionRedirection(This,packageFullName) #define IPackageDebugSettings_GetPackageExecutionState(This,packageFullName,packageExecutionState) (This)->lpVtbl->GetPackageExecutionState(This,packageFullName,packageExecutionState) #define IPackageDebugSettings_RegisterForPackageStateChanges(This,packageFullName,pPackageExecutionStateChangeNotification,pdwCookie) (This)->lpVtbl->RegisterForPackageStateChanges(This,packageFullName,pPackageExecutionStateChangeNotification,pdwCookie) #define IPackageDebugSettings_UnregisterForPackageStateChanges(This,dwCookie) (This)->lpVtbl->UnregisterForPackageStateChanges(This,dwCookie) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPackageDebugSettings_QueryInterface(IPackageDebugSettings* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPackageDebugSettings_AddRef(IPackageDebugSettings* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPackageDebugSettings_Release(IPackageDebugSettings* This) { return This->lpVtbl->Release(This); } /*** IPackageDebugSettings methods ***/ static FORCEINLINE HRESULT IPackageDebugSettings_EnableDebugging(IPackageDebugSettings* This,LPCWSTR packageFullName,LPCWSTR debuggerCommandLine,PZZWSTR environment) { return This->lpVtbl->EnableDebugging(This,packageFullName,debuggerCommandLine,environment); } static FORCEINLINE HRESULT IPackageDebugSettings_DisableDebugging(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->DisableDebugging(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_Suspend(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->Suspend(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_Resume(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->Resume(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_TerminateAllProcesses(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->TerminateAllProcesses(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_SetTargetSessionId(IPackageDebugSettings* This,ULONG sessionId) { return This->lpVtbl->SetTargetSessionId(This,sessionId); } static FORCEINLINE HRESULT IPackageDebugSettings_EnumerateBackgroundTasks(IPackageDebugSettings* This,LPCWSTR packageFullName,ULONG *taskCount,LPCGUID *taskIds,LPCWSTR **taskNames) { return This->lpVtbl->EnumerateBackgroundTasks(This,packageFullName,taskCount,taskIds,taskNames); } static FORCEINLINE HRESULT IPackageDebugSettings_ActivateBackgroundTask(IPackageDebugSettings* This,LPCGUID taskId) { return This->lpVtbl->ActivateBackgroundTask(This,taskId); } static FORCEINLINE HRESULT IPackageDebugSettings_StartServicing(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->StartServicing(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_StopServicing(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->StopServicing(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_StartSessionRedirection(IPackageDebugSettings* This,LPCWSTR packageFullName,ULONG sessionId) { return This->lpVtbl->StartSessionRedirection(This,packageFullName,sessionId); } static FORCEINLINE HRESULT IPackageDebugSettings_StopSessionRedirection(IPackageDebugSettings* This,LPCWSTR packageFullName) { return This->lpVtbl->StopSessionRedirection(This,packageFullName); } static FORCEINLINE HRESULT IPackageDebugSettings_GetPackageExecutionState(IPackageDebugSettings* This,LPCWSTR packageFullName,PACKAGE_EXECUTION_STATE *packageExecutionState) { return This->lpVtbl->GetPackageExecutionState(This,packageFullName,packageExecutionState); } static FORCEINLINE HRESULT IPackageDebugSettings_RegisterForPackageStateChanges(IPackageDebugSettings* This,LPCWSTR packageFullName,IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification,DWORD *pdwCookie) { return This->lpVtbl->RegisterForPackageStateChanges(This,packageFullName,pPackageExecutionStateChangeNotification,pdwCookie); } static FORCEINLINE HRESULT IPackageDebugSettings_UnregisterForPackageStateChanges(IPackageDebugSettings* This,DWORD dwCookie) { return This->lpVtbl->UnregisterForPackageStateChanges(This,dwCookie); } #endif #endif #endif #endif /* __IPackageDebugSettings_INTERFACE_DEFINED__ */ typedef enum AHE_TYPE { AHE_DESKTOP = 0, AHE_IMMERSIVE = 1 } AHE_TYPE; /***************************************************************************** * IExecuteCommandApplicationHostEnvironment interface */ #ifndef __IExecuteCommandApplicationHostEnvironment_INTERFACE_DEFINED__ #define __IExecuteCommandApplicationHostEnvironment_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExecuteCommandApplicationHostEnvironment, 0x18b21aa9, 0xe184, 0x4ff0, 0x9f,0x5e, 0xf8,0x82,0xd0,0x37,0x71,0xb3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("18b21aa9-e184-4ff0-9f5e-f882d03771b3") IExecuteCommandApplicationHostEnvironment : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetValue( AHE_TYPE *pahe) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExecuteCommandApplicationHostEnvironment, 0x18b21aa9, 0xe184, 0x4ff0, 0x9f,0x5e, 0xf8,0x82,0xd0,0x37,0x71,0xb3) #endif #else typedef struct IExecuteCommandApplicationHostEnvironmentVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExecuteCommandApplicationHostEnvironment *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExecuteCommandApplicationHostEnvironment *This); ULONG (STDMETHODCALLTYPE *Release)( IExecuteCommandApplicationHostEnvironment *This); /*** IExecuteCommandApplicationHostEnvironment methods ***/ HRESULT (STDMETHODCALLTYPE *GetValue)( IExecuteCommandApplicationHostEnvironment *This, AHE_TYPE *pahe); END_INTERFACE } IExecuteCommandApplicationHostEnvironmentVtbl; interface IExecuteCommandApplicationHostEnvironment { CONST_VTBL IExecuteCommandApplicationHostEnvironmentVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExecuteCommandApplicationHostEnvironment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExecuteCommandApplicationHostEnvironment_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExecuteCommandApplicationHostEnvironment_Release(This) (This)->lpVtbl->Release(This) /*** IExecuteCommandApplicationHostEnvironment methods ***/ #define IExecuteCommandApplicationHostEnvironment_GetValue(This,pahe) (This)->lpVtbl->GetValue(This,pahe) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExecuteCommandApplicationHostEnvironment_QueryInterface(IExecuteCommandApplicationHostEnvironment* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExecuteCommandApplicationHostEnvironment_AddRef(IExecuteCommandApplicationHostEnvironment* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExecuteCommandApplicationHostEnvironment_Release(IExecuteCommandApplicationHostEnvironment* This) { return This->lpVtbl->Release(This); } /*** IExecuteCommandApplicationHostEnvironment methods ***/ static FORCEINLINE HRESULT IExecuteCommandApplicationHostEnvironment_GetValue(IExecuteCommandApplicationHostEnvironment* This,AHE_TYPE *pahe) { return This->lpVtbl->GetValue(This,pahe); } #endif #endif #endif #endif /* __IExecuteCommandApplicationHostEnvironment_INTERFACE_DEFINED__ */ typedef enum EC_HOST_UI_MODE { ECHUIM_DESKTOP = 0, ECHUIM_IMMERSIVE = 1, ECHUIM_SYSTEM_LAUNCHER = 2 } EC_HOST_UI_MODE; /***************************************************************************** * IExecuteCommandHost interface */ #ifndef __IExecuteCommandHost_INTERFACE_DEFINED__ #define __IExecuteCommandHost_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExecuteCommandHost, 0x4b6832a2, 0x5f04, 0x4c9d, 0xb8,0x9d, 0x72,0x7a,0x15,0xd1,0x03,0xe7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4b6832a2-5f04-4c9d-b89d-727a15d103e7") IExecuteCommandHost : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetUIMode( EC_HOST_UI_MODE *pUIMode) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExecuteCommandHost, 0x4b6832a2, 0x5f04, 0x4c9d, 0xb8,0x9d, 0x72,0x7a,0x15,0xd1,0x03,0xe7) #endif #else typedef struct IExecuteCommandHostVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExecuteCommandHost *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExecuteCommandHost *This); ULONG (STDMETHODCALLTYPE *Release)( IExecuteCommandHost *This); /*** IExecuteCommandHost methods ***/ HRESULT (STDMETHODCALLTYPE *GetUIMode)( IExecuteCommandHost *This, EC_HOST_UI_MODE *pUIMode); END_INTERFACE } IExecuteCommandHostVtbl; interface IExecuteCommandHost { CONST_VTBL IExecuteCommandHostVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExecuteCommandHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExecuteCommandHost_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExecuteCommandHost_Release(This) (This)->lpVtbl->Release(This) /*** IExecuteCommandHost methods ***/ #define IExecuteCommandHost_GetUIMode(This,pUIMode) (This)->lpVtbl->GetUIMode(This,pUIMode) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IExecuteCommandHost_QueryInterface(IExecuteCommandHost* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IExecuteCommandHost_AddRef(IExecuteCommandHost* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IExecuteCommandHost_Release(IExecuteCommandHost* This) { return This->lpVtbl->Release(This); } /*** IExecuteCommandHost methods ***/ static FORCEINLINE HRESULT IExecuteCommandHost_GetUIMode(IExecuteCommandHost* This,EC_HOST_UI_MODE *pUIMode) { return This->lpVtbl->GetUIMode(This,pUIMode); } #endif #endif #endif #endif /* __IExecuteCommandHost_INTERFACE_DEFINED__ */ #define SID_ExecuteCommandHost IID_IExecuteCommandHost typedef enum APPLICATION_VIEW_STATE { AVS_FULLSCREEN_LANDSCAPE = 0, AVS_FILLED = 1, AVS_SNAPPED = 2, AVS_FULLSCREEN_PORTRAIT = 3 } APPLICATION_VIEW_STATE; typedef enum EDGE_GESTURE_KIND { EGK_TOUCH = 0, EGK_KEYBOARD = 1, EGK_MOUSE = 2 } EDGE_GESTURE_KIND; /***************************************************************************** * IApplicationDesignModeSettings interface */ #ifndef __IApplicationDesignModeSettings_INTERFACE_DEFINED__ #define __IApplicationDesignModeSettings_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationDesignModeSettings, 0x2a3dee9a, 0xe31d, 0x46d6, 0x85,0x08, 0xbc,0xc5,0x97,0xdb,0x35,0x57); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2a3dee9a-e31d-46d6-8508-bcc597db3557") IApplicationDesignModeSettings : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetNativeDisplaySize( SIZE sizeNativeDisplay) = 0; virtual HRESULT STDMETHODCALLTYPE SetScaleFactor( DEVICE_SCALE_FACTOR scaleFactor) = 0; virtual HRESULT STDMETHODCALLTYPE SetApplicationViewState( APPLICATION_VIEW_STATE viewState) = 0; virtual HRESULT STDMETHODCALLTYPE ComputeApplicationSize( SIZE *psizeApplication) = 0; virtual HRESULT STDMETHODCALLTYPE IsApplicationViewStateSupported( APPLICATION_VIEW_STATE viewState, SIZE sizeNativeDisplay, DEVICE_SCALE_FACTOR scaleFactor, WINBOOL *pfSupported) = 0; virtual HRESULT STDMETHODCALLTYPE TriggerEdgeGesture( EDGE_GESTURE_KIND edgeGestureKind) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationDesignModeSettings, 0x2a3dee9a, 0xe31d, 0x46d6, 0x85,0x08, 0xbc,0xc5,0x97,0xdb,0x35,0x57) #endif #else typedef struct IApplicationDesignModeSettingsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationDesignModeSettings *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationDesignModeSettings *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationDesignModeSettings *This); /*** IApplicationDesignModeSettings methods ***/ HRESULT (STDMETHODCALLTYPE *SetNativeDisplaySize)( IApplicationDesignModeSettings *This, SIZE sizeNativeDisplay); HRESULT (STDMETHODCALLTYPE *SetScaleFactor)( IApplicationDesignModeSettings *This, DEVICE_SCALE_FACTOR scaleFactor); HRESULT (STDMETHODCALLTYPE *SetApplicationViewState)( IApplicationDesignModeSettings *This, APPLICATION_VIEW_STATE viewState); HRESULT (STDMETHODCALLTYPE *ComputeApplicationSize)( IApplicationDesignModeSettings *This, SIZE *psizeApplication); HRESULT (STDMETHODCALLTYPE *IsApplicationViewStateSupported)( IApplicationDesignModeSettings *This, APPLICATION_VIEW_STATE viewState, SIZE sizeNativeDisplay, DEVICE_SCALE_FACTOR scaleFactor, WINBOOL *pfSupported); HRESULT (STDMETHODCALLTYPE *TriggerEdgeGesture)( IApplicationDesignModeSettings *This, EDGE_GESTURE_KIND edgeGestureKind); END_INTERFACE } IApplicationDesignModeSettingsVtbl; interface IApplicationDesignModeSettings { CONST_VTBL IApplicationDesignModeSettingsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationDesignModeSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationDesignModeSettings_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationDesignModeSettings_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationDesignModeSettings methods ***/ #define IApplicationDesignModeSettings_SetNativeDisplaySize(This,sizeNativeDisplay) (This)->lpVtbl->SetNativeDisplaySize(This,sizeNativeDisplay) #define IApplicationDesignModeSettings_SetScaleFactor(This,scaleFactor) (This)->lpVtbl->SetScaleFactor(This,scaleFactor) #define IApplicationDesignModeSettings_SetApplicationViewState(This,viewState) (This)->lpVtbl->SetApplicationViewState(This,viewState) #define IApplicationDesignModeSettings_ComputeApplicationSize(This,psizeApplication) (This)->lpVtbl->ComputeApplicationSize(This,psizeApplication) #define IApplicationDesignModeSettings_IsApplicationViewStateSupported(This,viewState,sizeNativeDisplay,scaleFactor,pfSupported) (This)->lpVtbl->IsApplicationViewStateSupported(This,viewState,sizeNativeDisplay,scaleFactor,pfSupported) #define IApplicationDesignModeSettings_TriggerEdgeGesture(This,edgeGestureKind) (This)->lpVtbl->TriggerEdgeGesture(This,edgeGestureKind) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IApplicationDesignModeSettings_QueryInterface(IApplicationDesignModeSettings* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IApplicationDesignModeSettings_AddRef(IApplicationDesignModeSettings* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IApplicationDesignModeSettings_Release(IApplicationDesignModeSettings* This) { return This->lpVtbl->Release(This); } /*** IApplicationDesignModeSettings methods ***/ static FORCEINLINE HRESULT IApplicationDesignModeSettings_SetNativeDisplaySize(IApplicationDesignModeSettings* This,SIZE sizeNativeDisplay) { return This->lpVtbl->SetNativeDisplaySize(This,sizeNativeDisplay); } static FORCEINLINE HRESULT IApplicationDesignModeSettings_SetScaleFactor(IApplicationDesignModeSettings* This,DEVICE_SCALE_FACTOR scaleFactor) { return This->lpVtbl->SetScaleFactor(This,scaleFactor); } static FORCEINLINE HRESULT IApplicationDesignModeSettings_SetApplicationViewState(IApplicationDesignModeSettings* This,APPLICATION_VIEW_STATE viewState) { return This->lpVtbl->SetApplicationViewState(This,viewState); } static FORCEINLINE HRESULT IApplicationDesignModeSettings_ComputeApplicationSize(IApplicationDesignModeSettings* This,SIZE *psizeApplication) { return This->lpVtbl->ComputeApplicationSize(This,psizeApplication); } static FORCEINLINE HRESULT IApplicationDesignModeSettings_IsApplicationViewStateSupported(IApplicationDesignModeSettings* This,APPLICATION_VIEW_STATE viewState,SIZE sizeNativeDisplay,DEVICE_SCALE_FACTOR scaleFactor,WINBOOL *pfSupported) { return This->lpVtbl->IsApplicationViewStateSupported(This,viewState,sizeNativeDisplay,scaleFactor,pfSupported); } static FORCEINLINE HRESULT IApplicationDesignModeSettings_TriggerEdgeGesture(IApplicationDesignModeSettings* This,EDGE_GESTURE_KIND edgeGestureKind) { return This->lpVtbl->TriggerEdgeGesture(This,edgeGestureKind); } #endif #endif #endif #endif /* __IApplicationDesignModeSettings_INTERFACE_DEFINED__ */ /***************************************************************************** * IInitializeWithWindow interface */ #ifndef __IInitializeWithWindow_INTERFACE_DEFINED__ #define __IInitializeWithWindow_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeWithWindow, 0x3e68d4bd, 0x7135, 0x4d10, 0x80,0x18, 0x9f,0xb6,0xd9,0xf3,0x3f,0xa1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3e68d4bd-7135-4d10-8018-9fb6d9f33fa1") IInitializeWithWindow : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwnd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeWithWindow, 0x3e68d4bd, 0x7135, 0x4d10, 0x80,0x18, 0x9f,0xb6,0xd9,0xf3,0x3f,0xa1) #endif #else typedef struct IInitializeWithWindowVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeWithWindow *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeWithWindow *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeWithWindow *This); /*** IInitializeWithWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeWithWindow *This, HWND hwnd); END_INTERFACE } IInitializeWithWindowVtbl; interface IInitializeWithWindow { CONST_VTBL IInitializeWithWindowVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeWithWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeWithWindow_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeWithWindow_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeWithWindow methods ***/ #define IInitializeWithWindow_Initialize(This,hwnd) (This)->lpVtbl->Initialize(This,hwnd) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeWithWindow_QueryInterface(IInitializeWithWindow* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeWithWindow_AddRef(IInitializeWithWindow* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeWithWindow_Release(IInitializeWithWindow* This) { return This->lpVtbl->Release(This); } /*** IInitializeWithWindow methods ***/ static FORCEINLINE HRESULT IInitializeWithWindow_Initialize(IInitializeWithWindow* This,HWND hwnd) { return This->lpVtbl->Initialize(This,hwnd); } #endif #endif #endif #endif /* __IInitializeWithWindow_INTERFACE_DEFINED__ */ /***************************************************************************** * IHandlerInfo interface */ #ifndef __IHandlerInfo_INTERFACE_DEFINED__ #define __IHandlerInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_IHandlerInfo, 0x997706ef, 0xf880, 0x453b, 0x81,0x18, 0x39,0xe1,0xa2,0xd2,0x65,0x5a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("997706ef-f880-453b-8118-39e1a2d2655a") IHandlerInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetApplicationDisplayName( LPWSTR *value) = 0; virtual HRESULT STDMETHODCALLTYPE GetApplicationPublisher( LPWSTR *value) = 0; virtual HRESULT STDMETHODCALLTYPE GetApplicationIconReference( LPWSTR *value) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IHandlerInfo, 0x997706ef, 0xf880, 0x453b, 0x81,0x18, 0x39,0xe1,0xa2,0xd2,0x65,0x5a) #endif #else typedef struct IHandlerInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IHandlerInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IHandlerInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IHandlerInfo *This); /*** IHandlerInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetApplicationDisplayName)( IHandlerInfo *This, LPWSTR *value); HRESULT (STDMETHODCALLTYPE *GetApplicationPublisher)( IHandlerInfo *This, LPWSTR *value); HRESULT (STDMETHODCALLTYPE *GetApplicationIconReference)( IHandlerInfo *This, LPWSTR *value); END_INTERFACE } IHandlerInfoVtbl; interface IHandlerInfo { CONST_VTBL IHandlerInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IHandlerInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IHandlerInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IHandlerInfo_Release(This) (This)->lpVtbl->Release(This) /*** IHandlerInfo methods ***/ #define IHandlerInfo_GetApplicationDisplayName(This,value) (This)->lpVtbl->GetApplicationDisplayName(This,value) #define IHandlerInfo_GetApplicationPublisher(This,value) (This)->lpVtbl->GetApplicationPublisher(This,value) #define IHandlerInfo_GetApplicationIconReference(This,value) (This)->lpVtbl->GetApplicationIconReference(This,value) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IHandlerInfo_QueryInterface(IHandlerInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IHandlerInfo_AddRef(IHandlerInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IHandlerInfo_Release(IHandlerInfo* This) { return This->lpVtbl->Release(This); } /*** IHandlerInfo methods ***/ static FORCEINLINE HRESULT IHandlerInfo_GetApplicationDisplayName(IHandlerInfo* This,LPWSTR *value) { return This->lpVtbl->GetApplicationDisplayName(This,value); } static FORCEINLINE HRESULT IHandlerInfo_GetApplicationPublisher(IHandlerInfo* This,LPWSTR *value) { return This->lpVtbl->GetApplicationPublisher(This,value); } static FORCEINLINE HRESULT IHandlerInfo_GetApplicationIconReference(IHandlerInfo* This,LPWSTR *value) { return This->lpVtbl->GetApplicationIconReference(This,value); } #endif #endif #endif #endif /* __IHandlerInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * IHandlerActivationHost interface */ #ifndef __IHandlerActivationHost_INTERFACE_DEFINED__ #define __IHandlerActivationHost_INTERFACE_DEFINED__ DEFINE_GUID(IID_IHandlerActivationHost, 0x35094a87, 0x8bb1, 0x4237, 0x96,0xc6, 0xc4,0x17,0xee,0xbd,0xb0,0x78); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("35094a87-8bb1-4237-96c6-c417eebdb078") IHandlerActivationHost : public IUnknown { virtual HRESULT STDMETHODCALLTYPE BeforeCoCreateInstance( REFCLSID clsidHandler, IShellItemArray *itemsBeingActivated, IHandlerInfo *handlerInfo) = 0; virtual HRESULT STDMETHODCALLTYPE BeforeCreateProcess( LPCWSTR applicationPath, LPCWSTR commandLine, IHandlerInfo *handlerInfo) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IHandlerActivationHost, 0x35094a87, 0x8bb1, 0x4237, 0x96,0xc6, 0xc4,0x17,0xee,0xbd,0xb0,0x78) #endif #else typedef struct IHandlerActivationHostVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IHandlerActivationHost *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IHandlerActivationHost *This); ULONG (STDMETHODCALLTYPE *Release)( IHandlerActivationHost *This); /*** IHandlerActivationHost methods ***/ HRESULT (STDMETHODCALLTYPE *BeforeCoCreateInstance)( IHandlerActivationHost *This, REFCLSID clsidHandler, IShellItemArray *itemsBeingActivated, IHandlerInfo *handlerInfo); HRESULT (STDMETHODCALLTYPE *BeforeCreateProcess)( IHandlerActivationHost *This, LPCWSTR applicationPath, LPCWSTR commandLine, IHandlerInfo *handlerInfo); END_INTERFACE } IHandlerActivationHostVtbl; interface IHandlerActivationHost { CONST_VTBL IHandlerActivationHostVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IHandlerActivationHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IHandlerActivationHost_AddRef(This) (This)->lpVtbl->AddRef(This) #define IHandlerActivationHost_Release(This) (This)->lpVtbl->Release(This) /*** IHandlerActivationHost methods ***/ #define IHandlerActivationHost_BeforeCoCreateInstance(This,clsidHandler,itemsBeingActivated,handlerInfo) (This)->lpVtbl->BeforeCoCreateInstance(This,clsidHandler,itemsBeingActivated,handlerInfo) #define IHandlerActivationHost_BeforeCreateProcess(This,applicationPath,commandLine,handlerInfo) (This)->lpVtbl->BeforeCreateProcess(This,applicationPath,commandLine,handlerInfo) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IHandlerActivationHost_QueryInterface(IHandlerActivationHost* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IHandlerActivationHost_AddRef(IHandlerActivationHost* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IHandlerActivationHost_Release(IHandlerActivationHost* This) { return This->lpVtbl->Release(This); } /*** IHandlerActivationHost methods ***/ static FORCEINLINE HRESULT IHandlerActivationHost_BeforeCoCreateInstance(IHandlerActivationHost* This,REFCLSID clsidHandler,IShellItemArray *itemsBeingActivated,IHandlerInfo *handlerInfo) { return This->lpVtbl->BeforeCoCreateInstance(This,clsidHandler,itemsBeingActivated,handlerInfo); } static FORCEINLINE HRESULT IHandlerActivationHost_BeforeCreateProcess(IHandlerActivationHost* This,LPCWSTR applicationPath,LPCWSTR commandLine,IHandlerInfo *handlerInfo) { return This->lpVtbl->BeforeCreateProcess(This,applicationPath,commandLine,handlerInfo); } #endif #endif #endif #endif /* __IHandlerActivationHost_INTERFACE_DEFINED__ */ #define SID_SHandlerActivationHost IID_IHandlerActivationHost DEFINE_GUID(SID_ShellExecuteNamedPropertyStore, 0xeb84ada2, 0x00ff, 0x4992, 0x83, 0x24, 0xed, 0x5c, 0xe0, 0x61, 0xcb, 0x29); #endif #endif /* Begin additional prototypes for all interfaces */ ULONG __RPC_USER PCIDLIST_ABSOLUTE_UserSize (ULONG *, ULONG, PCIDLIST_ABSOLUTE *); unsigned char * __RPC_USER PCIDLIST_ABSOLUTE_UserMarshal (ULONG *, unsigned char *, PCIDLIST_ABSOLUTE *); unsigned char * __RPC_USER PCIDLIST_ABSOLUTE_UserUnmarshal(ULONG *, unsigned char *, PCIDLIST_ABSOLUTE *); void __RPC_USER PCIDLIST_ABSOLUTE_UserFree (ULONG *, PCIDLIST_ABSOLUTE *); ULONG __RPC_USER PIDLIST_ABSOLUTE_UserSize (ULONG *, ULONG, PIDLIST_ABSOLUTE *); unsigned char * __RPC_USER PIDLIST_ABSOLUTE_UserMarshal (ULONG *, unsigned char *, PIDLIST_ABSOLUTE *); unsigned char * __RPC_USER PIDLIST_ABSOLUTE_UserUnmarshal(ULONG *, unsigned char *, PIDLIST_ABSOLUTE *); void __RPC_USER PIDLIST_ABSOLUTE_UserFree (ULONG *, PIDLIST_ABSOLUTE *); ULONG __RPC_USER PITEMID_CHILD_UserSize (ULONG *, ULONG, PITEMID_CHILD *); unsigned char * __RPC_USER PITEMID_CHILD_UserMarshal (ULONG *, unsigned char *, PITEMID_CHILD *); unsigned char * __RPC_USER PITEMID_CHILD_UserUnmarshal(ULONG *, unsigned char *, PITEMID_CHILD *); void __RPC_USER PITEMID_CHILD_UserFree (ULONG *, PITEMID_CHILD *); 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 PIDLIST_RELATIVE_UserSize (ULONG *, ULONG, PIDLIST_RELATIVE *); unsigned char * __RPC_USER PIDLIST_RELATIVE_UserMarshal (ULONG *, unsigned char *, PIDLIST_RELATIVE *); unsigned char * __RPC_USER PIDLIST_RELATIVE_UserUnmarshal(ULONG *, unsigned char *, PIDLIST_RELATIVE *); void __RPC_USER PIDLIST_RELATIVE_UserFree (ULONG *, PIDLIST_RELATIVE *); ULONG __RPC_USER PCUIDLIST_RELATIVE_UserSize (ULONG *, ULONG, PCUIDLIST_RELATIVE *); unsigned char * __RPC_USER PCUIDLIST_RELATIVE_UserMarshal (ULONG *, unsigned char *, PCUIDLIST_RELATIVE *); unsigned char * __RPC_USER PCUIDLIST_RELATIVE_UserUnmarshal(ULONG *, unsigned char *, PCUIDLIST_RELATIVE *); void __RPC_USER PCUIDLIST_RELATIVE_UserFree (ULONG *, PCUIDLIST_RELATIVE *); ULONG __RPC_USER PCUITEMID_CHILD_UserSize (ULONG *, ULONG, PCUITEMID_CHILD *); unsigned char * __RPC_USER PCUITEMID_CHILD_UserMarshal (ULONG *, unsigned char *, PCUITEMID_CHILD *); unsigned char * __RPC_USER PCUITEMID_CHILD_UserUnmarshal(ULONG *, unsigned char *, PCUITEMID_CHILD *); void __RPC_USER PCUITEMID_CHILD_UserFree (ULONG *, PCUITEMID_CHILD *); 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 *); 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 LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *); unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *); unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *); void __RPC_USER LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *); ULONG __RPC_USER HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *); unsigned char * __RPC_USER HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *); unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *); void __RPC_USER HBITMAP_UserFree (ULONG *, HBITMAP *); ULONG __RPC_USER HMENU_UserSize (ULONG *, ULONG, HMENU *); unsigned char * __RPC_USER HMENU_UserMarshal (ULONG *, unsigned char *, HMENU *); unsigned char * __RPC_USER HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *); void __RPC_USER HMENU_UserFree (ULONG *, HMENU *); ULONG __RPC_USER HGLOBAL_UserSize (ULONG *, ULONG, HGLOBAL *); unsigned char * __RPC_USER HGLOBAL_UserMarshal (ULONG *, unsigned char *, HGLOBAL *); unsigned char * __RPC_USER HGLOBAL_UserUnmarshal(ULONG *, unsigned char *, HGLOBAL *); void __RPC_USER HGLOBAL_UserFree (ULONG *, HGLOBAL *); ULONG __RPC_USER HICON_UserSize (ULONG *, ULONG, HICON *); unsigned char * __RPC_USER HICON_UserMarshal (ULONG *, unsigned char *, HICON *); unsigned char * __RPC_USER HICON_UserUnmarshal(ULONG *, unsigned char *, HICON *); void __RPC_USER HICON_UserFree (ULONG *, HICON *); ULONG __RPC_USER HACCEL_UserSize (ULONG *, ULONG, HACCEL *); unsigned char * __RPC_USER HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *); unsigned char * __RPC_USER HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *); void __RPC_USER HACCEL_UserFree (ULONG *, HACCEL *); ULONG __RPC_USER HMONITOR_UserSize (ULONG *, ULONG, HMONITOR *); unsigned char * __RPC_USER HMONITOR_UserMarshal (ULONG *, unsigned char *, HMONITOR *); unsigned char * __RPC_USER HMONITOR_UserUnmarshal(ULONG *, unsigned char *, HMONITOR *); void __RPC_USER HMONITOR_UserFree (ULONG *, HMONITOR *); /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __shobjidl_h__ */