Shell 接口

本部分介绍 Windows Shell 接口。

本部分内容

主题 说明
IAccessibleObject
公开一种可供辅助功能应用程序使用的方法。
IAccessibilityDockingService
将单个辅助功能应用窗口停靠到屏幕底部。
IAccessibilityDockingServiceCallback
通知辅助功能应用其窗口已被取消停靠。
IACLCustomMRU
公开用于初始化自动完成对象的最近使用 (MRU) 列表的方法。
IACList
公开了一种方法,当候选字符串以层次结构组织时,该方法可提高自动完成的效率。
IACList2
扩展 IACList 接口,使自动完成对象的客户端能够检索和设置选项标志。
IActionProgress
表示可从中继承进度驱动的操作的抽象基类。
IActionProgressDialog
公开用于初始化和停止进度对话框的方法。
IApplicationActivationManager
公开为启动、文件和协议扩展激活 Windows 应用商店应用的方法。 通常会在调试器和设计工具中使用该接口。
IApplicationAssociationRegistration
公开可查询和设置特定文件关联类型和特定关联级别协议的默认应用程序的方法。
注意:从 Windows 8 开始,此接口支持的唯一功能是 QueryCurrentDefault
IApplicationAssociationRegistrationUI
公开一种用于启动高级关联对话框的方法,用户可通过该对话框自定义其关联。
IApplicationDesignModeSettings
使开发工具应用程序能够动态伪装系统和用户状态,如本地显示分辨率、设备缩放系数和应用程序视图状态,以便测试在设计模式下为各种外形尺寸运行的 Windows 应用程序,而无需配备实际的硬件。 此外还能测试通常由用户控制的状态变化,以便在各种情况下对 Windows 应用商店应用进行测试。
IApplicationDesignModeSettings2
使开发工具应用程序能够动态控制系统和用户状态,如报告给 Windows 商店应用的本机显示分辨率、设备缩放系数和应用程序视图布局,以便测试在设计模式下为各种外形尺寸运行的 Windows 应用程序,而无需配备实际的硬件。 此外还能测试通常由用户控制的状态变化,以便在各种情况下对 Windows 应用商店应用进行测试。
IApplicationDestinations
公开的方法允许应用程序从跳转列表的“最近”或“经常”类别中移除一个或所有目的地。
IApplicationDocumentLists
公开的方法允许应用程序检索跳转列表中“最近”或“经常”类别内容。
IAppPublisher
公开通过控制面板中的“添加/删除程序”发布应用程序的方法。 这是为此目的而实现的主要接口。
IAppVisibility
提供用于确定是否显示 Windows 商店应用的功能。
IAppVisibilityEvents
使应用程序能够接收显示中的状态更改和“开始”屏幕可见性更改的通知。
IAssocHandler
公开通过文件关联对话框或菜单进行操作的方法。
IAssocHandlerInvoker
公开调用关联应用程序处理程序的方法。
IAttachmentExecute
公开使用客户端应用程序来提供用户环境的方法,以便通过电子邮件和信息附件安全下载和交换文件。
IAutoComplete
由自动完成对象 (CLSID_AutoComplete) 公开。 此接口允许应用程序初始化、启用和禁用对象。
IAutoComplete2
扩展 IAutoComplete。 此接口让自动完成对象的客户端可以检索和设置一系列控制自动完成操作方式的选项。
IAutoCompleteDropDown
公开允许客户端重置或查询自动完成下拉列表显示状态的方法,自动完成下拉列表包含用户在编辑控件中输入的字符串的可能完成项。
IBandHost
公开用于创建和销毁各种条并指定其可用性的方法。
IBandSite
公开控制条对象的方法。
IBrowserFrameOptions
允许浏览器或主机询问 IShellView 支持哪种视图行为。
ICategorizer
公开用于获取有关项目标识符列表信息的方法。
ICategoryProvider
公开在 IShellFolder 上注册的分类器列表。
ICDBurn
公开用于确定系统是否有写入 CD 的硬件、CD 刻录机设备的驱动器号,以及以编程方式启动 CD 刻录会话的方法。
IColumnManager
公开用于在 Windows 资源管理器详细信息视图中检查和操作列的方法。 每一列都由一个用于命名属性的 PROPERTYKEY 结构引用。
ICommDlgBrowser
由公共文件对话框公开,以便在托管 Shell 浏览器时使用。 如果受支持,ICommDlgBrowser 将提供一些方法,从而允许 Shell 视图处理对话框中需要与普通 Shell 视图中不同行为的几种情况。 可以在 IShellBrowser 对象上调用 QueryInterface 以获得 ICommDlgBrowser 接口指针。
ICommDlgBrowser2
扩展 ICommDlgBrowser 的功能。 此接口在公共文件对话框托管 Shell 浏览器时由其进行公开。 在 IShellBrowser 对象上调用 QueryInterface 可以获得指向 ICommDlgBrowser2 的指针。
ICommDlgBrowser3
扩展 ICommDlgBrowser2 的功能,并在公共文件对话框托管 Shell 浏览器时使用。
IComputerInfoChangeNotify
在较新版本的 Windows 中可能没有此接口。
IConnectableCredentialProviderCredential
公开用于连接和断开 IConnectableCredentialProviderCredential 对象的方法。
IContactManagerInterop
允许访问要管理多个窗口的应用程序中的 ContactManager 方法。
IContextMenu
公开创建或合并与 Shell 对象相关联的快捷菜单的方法。
IContextMenu2
公开创建或合并与 Shell 对象相关联的快捷方式(上下文)菜单的方法。 通过添加允许客户端对象处理与所有者绘制的菜单项相关联的消息的方法来扩展 IContextMenu
IContextMenu3
公开创建或合并与 Shell 对象相关联的快捷菜单的方法。 允许客户端对象处理与所有者绘制的菜单项相关联的消息,并通过接受消息处理的返回值对 IContextMenu2 进行扩展。
IContextMenuCB
公开用于启用上下文菜单的回调的方法。 例如,要在需要提升的 menuItem 中添加盾牌图标。
IControlMarkup
ICopyHook
公开一种用于创建复制挂钩处理程序的方法。 复制挂钩处理程序是一个 Shell 扩展,用于确定是否可以移动、复制、重命名或删除 Shell 文件夹或打印机对象。 在执行这些操作之前,Shell 会调用 ICopyHook::CopyCallback方法。
ICreateObject
公开一个创建指定类对象的方法。
ICreatingProcess
ShellExecuteExIContextMenu 用于允许调用方更改正在创建的进程的某些参数。
ICreateProcessInputs
ICreatingProcess 接口用于用于更改正在创建的流程的某些参数。
ICredentialProvider
公开在设置和操作凭据提供程序中使用的方法。 所有凭据提供程序都必须实现此接口。
ICredentialProviderCredential
公开可处理凭据的方法。
ICredentialProviderCredential2
通过添加检索用户安全标识符 (SID) 的方法来扩展 ICredentialProviderCredential 接口。 凭据与该用户相关联,并可在用户磁贴下分组。
ICredentialProviderCredentialEvents
提供一种异步回调机制,用于通知凭据在登录 UI 或凭据 UI 中的状态或文本更改事件。
ICredentialProviderCredentialEvents2
通过添加可批量更新登录 UI 或凭据 UI 中的字段的方法来扩展 ICredentialProviderCredentialEvents 接口。
ICredentialProviderCredentialWithFieldOptions
提供一种方法,使凭据提供程序框架能够确定是否对登录或凭据 UI 中的字段选项进行了自定义。
ICredentialProviderEvents
提供一种由凭据提供程序使用的异步回调机制,以通知它凭据列表或其字段的更改。
ICredentialProviderFilter
用于根据运行时可用的信息动态筛选凭据提供程序。
ICredentialProviderSetUserArray
提供一种让凭据提供程序能够接收将在登录或凭据 UI 中显示的用户集的方法。
ICredentialProviderUser
提供用于检索登录或凭据 UI 中单个用户的某些属性的方法。
ICredentialProviderUserArray
表示将出现在登录或凭据 UI 中的用户集。 有了这些信息,凭据提供程序就能对集进行枚举,以便检索每个用户的属性信息,从而填充字段或对集进行筛选。
ICurrentItem
通过调用一个项目的 IShellFolder::BindToObject 来获取。 如果项目代表的是以前某个时间的项目快照,则此接口将获取项目的当前版本。
ICurrentWorkingDirectory
公开让客户端能够检索或设置对象的当前工作目录的方法。
ICustomDestinationList
公开允许应用程序提供自定义跳转列表(包括目标和任务)以便在任务栏中显示的方法。
IDataObjectAsyncCapability
让通常同步运行的接口能够异步运行。
注意:此接口是 IAsyncOperation 的当前重命名版本。
IDataObjectProvider
提供的方法可设置或检索 DataPackage 对象的 IDataObject interface,DataPackage 会将其用于支持互操作性。 DataPackage 对象由一个应用用于向另一个应用提供数据。
IDataTransferManagerInterop
允许访问要管理多个窗口的 Windows 商店应用中的 DataTransferManager 方法。
IDefaultExtractIconInit
公开用于设置与对象相关的默认图标的方法。
IDefaultFolderMenuInitialize
提供用于获取和设置快捷菜单信息的方法。 这些信息与通过 DEFCONTEXTMENU 结构提供给 SHCreateDefaultContextMenu 的信息相同。
IDelayedPropertyStoreFactory
公开一种用于在属性访问可能较慢的情况下创建指定的 IPropertyStore 对象的方法。
IDelegateFolder
公开一种方法,通过该方法,委托文件夹可获得分配和释放项目 ID 所需的 IMalloc 接口。
IDelegateItem
用于获取项目路径的直接基础表示。
IDesktopGadget
公开一种允许以编程方式在用户桌面上添加已安装的小工具的方法。
IDesktopWallpaper
IDestinationStreamFactory
公开一种在对属性应用更改之前手动复制流或文件的方法。
IDisplayItem
公开可查找当前项目版本,以用于获取将在 UI 中显示的显示属性(如项目名称)的方法。 由复制引擎对话框使用,为 UI 提供要显示的相应项目。 如果找不到其他版本,则使用当前项目。
IDockingWindow
公开用于通知停靠窗口对象变化(包括显示、隐藏和即将移除)的方法。 此接口由可停靠在 Windows 资源管理器窗口边框空间内的窗口对象来实现。
IDockingWindowFrame
公开支持向框架添加 IDockingWindow 对象的方法。 由浏览器实现。
IDockingWindowSite
公开为一个或多个 IDockingWindow 对象管理边框空间的方法。 此接口由浏览器实现,类似于 IOleInPlaceUIWindow 接口。
IDragSourceHelper
由 Shell 公开,允许应用程序指定将在 Shell 拖放操作期间显示的图像。
IDragSourceHelper2
公开一种为 IDragSourceHelper 添加功能的方法。 此方法将设置 IDragSourceHelper 对象上拖放操作的特征。
IDropTargetHelper
公开允许拖放目标在图像位于目标窗口上方时显示拖放图像的方法。
IDynamicHWHandler
由自动播放调用。 公开在向用户显示已注册处理程序之前,用于获取该处理程序动态信息的方法。
IEnumAssocHandlers
公开一种允许枚举与特定文件扩展名相关联的处理程序集合的方法。
IEnumerableView
公开枚举视图内容,并在枚举完成后接收回调通知的方法。 此接口可让视图的客户端尝试共享视图的文件夹内容列表。
IEnumExplorerCommand
IExplorerCommandProvider 提供。 此接口面包含要放入命令栏中的命令的枚举。
IEnumExtraSearch
一个标准的 OLE 枚举器,客户端用它来确定文件夹的可用搜索对象。
IEnumFullIDList
公开一组标准方法,用于枚举 Shell 文件夹中项目标识符列表 (PIDL) 的指针。
IEnumIDList
提供一在用于枚举 Shell 文件夹中项目的 PIDL 的标准方法。 当调用文件夹的 IShellFolder::EnumObjects 方法时,它会创建一个枚举对象,并将指向该对象的 IEnumIDList 接口的指针传回调用应用程序。
IEnumObjects
公开用于枚举未知对象的方法。
IEnumPublishedApps
公开在“控制面板”中的“添加/删除程序”中列举已发布应用程序的方法。 可通过 IAppPublisher::EnumApps 请求公开此接口的对象。
IEnumReadyCallback
公开让视图能在枚举完成时通知实现者的方法。 视图调用此方法是为了告诉实现者,可以通过 IEnumerableView::CreateEnumIDListFromContents 来检索枚举。 回调允许实现者共享视图枚举。
IEnumResources
公开资源枚举方法。
IEnumShellItems
公开 IShellItem 接口的枚举。 此接口通常通过调用 IEnumShellItems 方法来获取。
IEnumSyncMgrConflict
公开冲突枚举方法。
IEnumSyncMgrEvents
公开同步事件枚举方法。
IEnumSyncMgrSyncItems
公开枚举处理程序管理的同步项目对象的方法。
IExecuteCommand
公开设置与命令动词相关的给定状态或参数的方法,以及调用该动词的方法。
IExecuteCommandApplicationHostEnvironment
提供一种单一方法,让应用程序能够确定其主机是处于桌面模式还是沉浸模式。
IExecuteCommandHost
提供一种方法,让基于 IExplorerCommand 的 Shell 谓词处理程序能够查询调用应用程序的主机组件的 UI 模式。
IExplorerBrowser
IExplorerBrowser 是一个浏览器对象,既可以进行导航,也可以承载数据对象的视图。 作为一个全功能的浏览器对象,它还支持自动行程日志。
IExplorerBrowserEvents
公开用于通知资源管理器浏览器导航和视图创建事件的方法。
IExplorerCommand
公开用于获取命令外观、枚举子命令或调用命令的方法。
IExplorerCommandProvider
公开用于创建资源管理器命令和命令枚举器的方法。
IExplorerCommandState
公开允许检索命令状态的单个方法。
IExplorerPaneVisibility
在 Windows 资源管理器中由 IShellFolder 实现使用,以便向视图提供有关哪些窗格可见的建议。 此外,IExplorerBrowser 主机可使用此接口提供有关窗格可见性的信息。 主机应实现 QueryService,并将 SID_ExplorerPaneVisibility 作为服务 ID。 主机必须位于站点链中。
IExplorerPaneVisibility 实现是从 Shell 文件夹中检索的。 而 Shell 文件夹则是从视图中检索的。 命名空间扩展可以选择提供自定义视图 (IShellView),而不是使用系统文件夹视图对象 (DefView)。 在此情况下,IShellView 的实现必须包含 IFolderView::GetFolder 的实现,这样才能返回 IExplorerPaneVisibility 对象。
命名空间扩展可以通过实现 IShellView 而不是使用系统文件夹视图对象 (DefView) 来提供自定义视图。 在这种情况下,IShellView 的实现必须包含 IFolderView::GetFolder 的实现,这样才能使用 IExplorerPaneVisibility
IExtractIcon
公开允许客户端检索与文件夹中某个对象相关联的图标的方法。
IExtractImage
公开从 Shell 文件夹请求缩略图的方法。
IExtractImage2
扩展 IExtractImage 的功能。
IFileDialog
公开用于初始化、显示和获取常用文件对话框结果的方法。
IFileDialog2
通过提供的方法来扩展 IFileDialog 接口,而这些方法允许调用方命名一个可在公共文件对话框中浏览的特定受限位置,并指定替代文本作为标签显示在“取消”按钮上。
IFileDialogControlEvents
公开让应用程序能够收到与应用程序添加到公共文件对话框中的控件相关的事件通知的方法。
IFileDialogCustomize
公开允许应用程序向公共文件对话框添加控件的方法。
IFileDialogEvents
公开允许在公共文件对话框中通知事件的方法。
IFileIsInUse
公开可调用以获取有关其他应用程序正在使用的文件的信息或关闭文件的方法。 当应用程序尝试访问一个文件,但发现该文件已在使用中时,它可以使用此接口的方法来收集信息,并在对话框中向用户显示。
IFileOpenDialog
通过添加打开对话框的特定方法来扩展 IFileDialog 接口。
IFileOperation
公开用于复制、移动、重命名、创建和删除 Shell 项目的方法,以及提供进度和错误对话框的方法。 此接口取代了 SHFileOperation 函数。
IFileOperationProgressSink
公开可提供丰富的通知系统供 IFileOperation 的调用方使用的方法,以监控他们通过该接口执行的操作的详细信息。
IFileSaveDialog
通过添加保存对话框的特定方法(其中包括支持元数据收集的方法,这些元数据将与文件一起持久保存)来扩展 IFileDialog 接口。
IFileSyncMergeHandler
IFileSystemBindData
公开用于存储文件系统信息的方法,以优化对 IShellFolder::ParseDisplayName 的调用。
IFileSystemBindData2
扩展 IFileSystemBindData,它存储了文件系统信息,用于优化对 IShellFolder::ParseDisplayName 的调用。 此接口增加了设置或获取文件 ID 或结点类标识符 (CLSID) 的功能。
IFileViewer
公开指定接口的方法,该接口允许已注册的文件查看器在必须显示或打印文件时收到通知。
IFileViewerSite
公开指定接口的方法,该接口允许文件查看器检索当前固定窗口的句柄或设置新的固定窗口。 固定窗口是当前文件查看器显示文件的窗口。 当用户选择要查看的新文件时,Shell 会指示文件查看器在固定窗口中显示新文件,而不是创建一个新窗口。
IFolderFilter
由客户端公开,用于指定如何筛选服务器应用程序对 Shell 文件夹的枚举。
IFolderFilterSite
由主机导出,以允许客户端指定如何筛选 Shell 文件夹枚举。
IFolderView
公开可用于获取文件夹显示选项的相关信息、选择文件夹中的指定项目以及设置文件夹的视图模式的方法。
IFolderView2
公开可用于获取文件夹显示选项的相关信息、选择文件夹中的指定项目以及设置文件夹的视图模式的方法。
IFolderViewHost
公开一种在窗口中托管 IFolderView 对象的方法。
IFolderViewOptions
公开允许控制 Windows 7 及更高版本视图特定文件夹视图选项的方法。
IFolderViewSettings
公开用于获取文件夹视图设置的方法。
IFrameworkInputPane
提供可让应用程序了解输入窗格的状态变化和位置的方法。
IFrameworkInputPaneHandler
让应用程序在显示或隐藏输入窗格(屏幕键盘或手写面板)时收到通知。 这样,应用程序窗口就可以调整其显示方式,使输入区域(如文本框)不被输入窗格遮挡。
IHandlerActivationHost
IHandlerInfo
提供向 IHandlerActivationHost 接口提供有关处理程序的信息的方法。
IHomeGroup
公开用于确定计算机的 HomeGroup 成员状态和显示共享向导的方法。
IHWEventHandler
由自动播放调用,以实现对已注册媒体类型的处理。
IHWEventHandler2
扩展 IHWEventHandler 接口,以解决设备处理程序的用户帐户控制 (UAC) 提升问题。
IIdentityName
公开用于比较两个项目是否相同的方法。
IImageRecompress
公开了一种重新压缩图像的方法。
IInitializeCommand
公开一种用于使用应用程序指定的命令名称及其注册属性初始化来实现 IExplorerCommandStateIExecuteCommandIDropTarget 的对象的方法。
IInitializeWithBindCtx
公开一种用于使用绑定上下文来初始化处理程序(如属性处理程序、缩略图处理程序或预览处理程序)的方法。
IInitializeWithFile
公开一种用于使用文件路径来初始化处理程序(如属性处理程序、缩略图处理程序或预览处理程序)的方法。
IInitializeWithItem
公开用于通过 IShellItem 来初始化处理程序(如属性处理程序、缩略图处理程序或预览处理程序)的方法。
IInitializeWithPropertyStore
公开一种用于使用属性存储空间来初始化处理程序(如属性处理程序、缩略图处理程序或预览处理程序)的方法。
IInitializeWithStream
公开一种用于使用流来初始化处理程序(如属性处理程序、缩略图处理程序或预览处理程序)的方法。
IInitializeWithWindow
公开一种让客户端可向桌面应用程序中使用的 Windows 运行时对象提供所有者窗口的方法。
IInputObject
公开为 Shell 中的用户输入对象更改用户界面激活和进程加速器的方法。
IInputObject2
公开通过处理全局加速器来扩展 IInputObject 的方法。
IInputObjectSite
公开一种用于传达 Shell 中所包含用户输入对象的焦点变化的方法。
IInputPanelConfiguration
为桌面应用程序提供选择 Windows 商店应用中使用的焦点跟踪机制的功能。
IInputPanelInvocationConfiguration
让 Windows 商店应用选择退出自动调用行为。
IIOCancelInformation
公开用于从进度对话框向进程线程发布取消窗口消息的方法。
此接口使进度对话框能够通过 PostThreadMessage 向工作线程发布线程消息,以取消其操作。 工作线程必须通过 GetMessagePeekMessageMsgWaitForMultipleObjectsEx 定期检查消息队列。
IIOCancelInformation::SetCancelInformation 方法会告诉进度对话框当用户单击“取消”时应使用哪个线程 ID 以及 PostThreadMessage 的信息。 当线程 ID 为“0”时,取消报文的发送操作无效。
IItemNameLimits
检索有效和无效字符列表或命名空间中名称的最大长度。 使用此接口进行验证解析和翻译。
IKnownFolder
公开允许应用程序检索已知文件夹的类别、类型、GUID、PIDL 值、重定向功能和定义等相关信息的方法。 它提供用于检索已知文件夹的 IShellItem 对象的方法。 它还提供获取或设置已知文件夹路径的方法。
IKnownFolderManager
公开创建、枚举或管理现有已知文件夹的方法。
ILaunchSourceAppUserModelId
提供检索 AppUserModelId 的方法。
ILaunchSourceViewSizePreference
提供检索源应用程序相关信息的方法。
ILaunchTargetMonitor
ILaunchTargetViewSizePreference
提供一种用于检索新应用程序窗口的首选视图大小的方法。
IMarkupCallback
IMenuPopup
IMenuPopup 可能会被修改,也可能无法使用。
IModalWindow
公开一种表示模式窗口的方法。 此接口用于 Windows XP Passport 中。
IMultiMonitorDockingSite
由浏览器实现。 公开用于在多显示器系统中管理哪个显示器包含 Windows 任务栏的方法。
INamedPropertyBag
公开可为对象提供指定属性包的方法,而对象可将其属性保存在该属性包中。
INamedPropertyStore
公开用于获取和设置命名属性的方法。
INameSpaceTreeAccessible
公开从命名空间树控件对 Shell 项目执行辅助功能操作的方法。
INameSpaceTreeControl
公开用于查看和操作 Shell 项目树中节点的方法。
INameSpaceTreeControl2
通过提供用于获取和设置树视图控件显示样式,以便与 Shell 命名空间项一起使用的方法,扩展 INameSpaceTreeControl 接口。
INameSpaceTreeControlCustomDraw
公开可让用户能够绘制自定义命名空间树控件及其项目的方法。
INameSpaceTreeControlDropHandler
公开用于拖放的处理程序方法。 由命名空间树控件使用,用于通知客户端控件内发生的任何拖放操作。 为客户端提供了一种拦截下拉操作并执行自己的操作或返回所需下拉效果的方法。
INameSpaceTreeControlEvents
公开用于处理 INameSpaceTreeControl 事件的方法。
INameSpaceTreeControlFolderCapabilities
公开用于检索文件夹的 System.IsPinnedToNameSpaceTree 筛选支持状态的单个方法。
INamespaceWalk
公开从给定根节点中审核命名空间的方法。 指定审核深度,并返回一个包含所有已审核节点的 ID 的可选数组。
INamespaceWalkCB
一个回调接口,用于提供与 INamespaceWalk 一起使用的方法。 对 INamespaceWalk 执行审核后,表示已审核节点的 IShellFolder 对象将被传递给 INamespaceWalkCB 方法。 这些方法如何处理这些信息取决于实现这些方法的对象。
INamespaceWalkCB2
通过完成命名空间审核所必需的方法来扩展 INamespaceWalkCB。 此方法可以删除在审核过程中收集的数据。
INewMenuClient
公开允许在 Windows 7 菜单中操作项目的方法。
INewShortcutHook
公开用于创建新的 Internet 快捷方式的方法。
INewWindowManager
公开一种用于确定是否显示或阻止由其他窗口启动的窗口,从而实现对弹出窗口的控制的方法。
INotifyReplica
公开一种为对象的创建者提供通知对象可能需要进行后续调节的手段的方法。 公文包协调器负责实现此接口。
IObjectArray
公开让客户端能够访问支持 IUnknown 的对象集合中的项目的方法。
IObjectCollection
通过提供让客户端能够在集合中添加和删除支持 IUnknown 的对象的方法,扩展 IObjectArray 接口。
IObjectProvider
公开一种用于从另一个对象中发现以 GUID 命名的对象的方法。 与 QueryService 不同,此接口不会将其功能委托给其他对象。
IObjectWithAppUserModelID
公开允许自定义 IAssocHandler 对象的实现者访问其显式应用程序用户模型 ID (AppUserModelID) 的方法。 此信息用于确定特定文件类型是否可以添加到应用程序的跳转列表中。
IObjectWithBackReferences
提供一种与对象保留的向后引用进行交互的方法。
IObjectWithCancelEvent
为调用方提供一个事件,该事件将由被调用的对象发出信号,以表示任务取消。
IObjectWithFolderEnumMode
公开用于获取和设置解析项目的枚举模式的方法。
IObjectWithProgID
公开用于提供对与对象相关联的 ProgID 的访问权限的方法。
IObjectWithPropertyKey
公开用于获取和设置属性键的方法。
IObjectWithSelection
公开获取或设置由 Shell 项数组表示的选定项的方法。
IObjMgr
公开允许客户端从服务器对象管理的对象集合中添加或删除对象的方法。
IOpenControlPanel
公开可检索控制面板视图状态、单个控制面板项路径以及打开控制面板本身或单个控制面板项的方法。
IOpenSearchSource
公开一种从自定义客户端 OpenSearch 数据源获取搜索结果的方法。
IOperationsProgressDialog
公开用于获取、设置和查询进度对话框的方法。
IPackageDebugSettings
让调试器开发人员能够控制 Windows 商店应用的生命周期,如暂停或恢复。
IPackageExecutionStateChangeNotification
启用在 Windows 商店应用调试期间接收软件包状态更改通知。
IParentAndItem
公开用于获取和设置父级及其子级 ID 的方法。 虽然 IParentAndItem 通常是在 IShellItems 上实现的,但它并不是 IShellItem 特有的。
IParseAndCreateItem
IPersistFolder
公开一种初始化 Shell 文件夹对象的方法。
IPersistFolder2
公开从 Shell 文件夹对象获取信息的方法。
IPersistFolder3
通过允许文件夹对象实现文件夹快捷方式的非默认处理,扩展 IPersistFolderIPersistFolder2 接口。
IPersistIDList
公开用于保持项目标识符列表的方法。
IPersistSerializedPropStorage
公开用于保持序列化的属性存储数据以供之后使用,以及将保持的数据恢复到新的属性存储实例的方法。
IPersistSerializedPropStorage2
公开用于保持序列化的属性存储数据以供之后使用,以及将保持的数据恢复到新的属性存储实例的方法。
IPlaybackManager
提供允许媒体应用程序与 Windows 播放管理器通信的方法。
IPlaybackManagerEvents
IPreviewHandler
公开用于显示丰富预览的方法。
IPreviewHandlerFrame
允许预览处理程序向主机传递键盘快捷方式。 此接口可检索键盘快捷方式列表,并指示主机处理键盘快捷方式。
IPreviewHandlerVisuals
公开用于将颜色和字体信息应用于预览处理程序的方法。
IPreviewItem
标识将在预览窗格中显示的项目。
IPreviousVersionsInfo
公开一种检查服务器文件或文件夹先前版本的方法,这些文件或文件夹是通过 Windows Server 2003 提供的卷影副本技术存储的,其目的是为了还原这些文件或文件夹。
IPrivateIdentityManager
IPrivateIdentityManager2
IProfferService
公开一种用于对象向同一主机上的其他对象提供服务的一般机制的方法。
IProgressDialog
公开为应用程序提供显示进度对话框选项的方法。 此接口由进度对话框对象 (CLSID_ProgressDialog) 导出。 此对象是向用户显示操作进度的一般方法。 它通常用于删除、上传、复制、移动或下载大量文件。
IPublishedApp
公开用于在“控制面板”的“添加/删除程序”中表示应用程序的方法。
IPublishedApp2
通过提供额外的安装方法来扩展 IPublishedApp 接口。
IPublishingWizard
公开用于使用联机打印向导、Web 发布向导和添加网络位置向导的方法。 在 Windows Vista 中,IPublishingWizard 不再支持 Web 发布向导或联机打印向导。
IQueryAssociations
公开用于简化检索注册表中存储的信息的过程的方法,而这些信息与定义文件类型或协议有关,并与应用程序相关联。
IQueryCancelAutoPlay
公开以编程方式替代 AutoPlayAutoRun 的方法。 这样就可以自定义插入介质时启动的内容位置和类型。
IQueryCodePage
获取并设置 ANSI 代码页的数值(代码页标识符)。
IQueryContinue
公开一种为对象提供一种简单、标准的机制方法,以查询客户端是否允许继续操作。 例如,IUserNotification 的客户端必须向 IUserNotification::Show 方法传递 IQueryContinue 的实现。
IQueryContinueWithStatus
公开的方法提供了一种标准机制,让凭据提供程序在尝试连接网络时调用 QueryContinue 以确定是否应继续这些尝试。 在尝试建立网络连接时,凭据提供程序也可使用此接口向用户显示消息。
IQueryInfo
公开 Shell 用于检索驻留在 IShellFolder 实现中项目的标志和信息提示信息的方法。 信息提示通常显示在工具提示控件内。
IRelatedItem
公开用于推导具有特定关系的相关项目的方法。
IRemoteComputer
公开用于在远程对象上调用该方法时枚举或初始化命名空间扩展名的方法。 例如,此接口用于初始化远程打印机虚拟文件夹。
IResolveShellLink
公开一种让应用程序能够请求 Shell 文件夹对象为其中一个项目解析链接的方法。
IResultsFolder
公开用于保存数据对象中的项的方法。
IResultsFolder 是一个文件夹,可容纳命名空间中的所有项目,并在单个文件夹中向用户展示。
IRunnableTask
一个自由线程接口,可由对象公开,以便允许在后台线程上执行操作。 例如,如果 IExtractImage::GetLocation 方法返回 E_PENDING,则允许调用应用程序在后台线程上提取图像。
ISearchBoxInfo
公开让调用方能够检索输入到搜索框中的信息的方法。
ISearchContext
公开用于将自定义信息导入搜索挂接的方法。
ISearchFolderItemFactory
公开用于创建和修改搜索文件夹的方法。 首先调用 Set 方法来设置搜索参数。 如果未调用,则改为使用默认值。 ISearchFolderItemFactory::GetIDListISearchFolderItemFactory::GetShellItem 返回这些参数指定的两种搜索形式。
ISharedBitmap
公开以节省内存的方式访问位图的方法。 此接口用作 HBITMAP 对象的精简封装程序,允许对这些对象进行引用计数和保护,避免其基础数据发生更改。
ISharingConfigurationManager
公开用于设置和检索Users (C:\Users) 或 Public (C:\Users\Public) 文件夹的计算机默认共享设置信息的方法。 还公开了一组允许控制打印机共享的方法。
IShellApp
公开用于向“添加/删除程序”应用程序提供应用程序常规相关信息的方法。 它不可在“添加/删除程序”应用程序之外使用。 此接口提供的信息包括支持的管理操作列表以及当前是否已安装应用程序。
IShellBrowser
由 Shell 视图(实现 IShellView> 的对象)的主机实现。 公开用于为其托管的视图和在资源管理器窗口上下文中运行的其他对象提供服务的方法。
IShellChangeNotify
公开一种用于在项目 ID 发生变化时通知 Shell 命名空间扩展的方法。
IShellDetails
由 Shell 文件夹公开,以提供文件夹中项目的详细信息。 这与 Windows 资源管理器将文件夹视图设置为详细信息时显示的信息相同。 对于 Windows 2000 及更高版本的系统,IShellDetails 已被 IShellFolder2 所替代。
IShellExtInit
公开一种用于初始化属性表、快捷菜单和拖放处理程序(在非默认拖放操作中将项目添加到快捷菜单的扩展)的 Shell 扩展的方法。
IShellFolder
由所有 Shell 命名空间文件夹对象公开,其方法方法被用来管理文件夹。
IShellFolder2
扩展 IShellFolder 的功能。 其方法可提供有关 Shell 文件夹内容的各种信息。
IShellFolderSearchable
公开可允许 Shell 扩展提供可搜索命名空间的方法。
IShellFolderSearchableCallback
公开用于监控搜索过程的回调例程。
IShellFolderViewCB
公开一种允许 Windows 资源管理器和使用系统文件夹视图对象(通过 SHCreateShellFolderView 返回的 IShellView 对象)实现的文件夹视图之间进行通信的方法,以便文件夹视图可以收到事件通知并相应修改其视图。
IShellFolderViewDual
公开用于修改视图和选择当前文件夹中项目的方法。
IShellFolderViewDual2
公开用于修改视图和选择当前文件夹中项目的方法。
IShellFolderViewDual3
公开用于修改当前文件夹视图的方法。
IShellFolderViewType
公开可使 Shell 文件夹支持不同的内容视图(不同的数据分层布局)的方法。
IShellIcon
公开用于获取 IShellFolder 对象的图标索引的方法。
IShellIconOverlay
公开命名空间扩展用于为其包含的对象指定图标覆盖的方法。
IShellIconOverlayIdentifier
公开用于处理图标覆盖处理程序与 Shell 之间所有通信的方法。
IShellImageDataAbort
公开用于中止 IShellImageData 进程的单个方法。
IShellImageDataFactory
公开可根据各种影像源来创建 IShellImageData 实例的方法。
IShellItem
公开用于检索 Shell 项目相关信息的方法。 IShellItemIShellItem2 是任何新代码中项目的首选表示法。
IShellItem2
通过用于检索项目的各种属性值的方法扩展 IShellItemIShellItemIShellItem2 是任何新代码中项目的首选表示法。
IShellItemArray
公开用于创建和操作 Shell 项目数组的方法。
IShellItemFilter
由客户端公开,用于指定如何筛选服务器应用程序对 Shell 项目的枚举。
IShellItemImageFactory
公开一种用于返回 Shell 项目的图标或缩略图的方法。 如果所请求的项目没有缩略图或图标,可从 Shell 中提供每个类别的图标。
IShellItemResources
公开用于操作和查询 Shell 项目资源的方法。
IShellLibrary
公开用于创建和管理库的方法。
IShellLink
公开用于创建、修改和解析 Shell 链接的方法。
IShellLinkDataList
公开允许应用程序将额外数据块附加到 Shell 链接的方法。 这些方法可以添加、复制或删除数据块。
IShellMenu
公开与 Shell 菜单(如“开始”菜单和“收藏夹”菜单)交互的方法。
IShellMenuCallback
一个回调接口,用于公开一种从菜单带接收信息的方法。
IShellPropSheetExt
公开允许属性表处理程序在文件对象显示的属性表中添加或替换页面的方法。
IShellRunDll
IShellView
公开在 Windows 资源管理器或文件夹窗口中显示视图的方法。
IShellView2
扩展 IShellView 的功能。
IShellView3
通过提供一种方法来替代 IShellView2::CreateViewWindow2,从而扩展 IShellView2 的功能。
IShellWindows
提供对已打开的 Shell 窗口集合的访问权限。
IStartMenuPinnedList
公开一种用于从“开始”菜单或任务栏中卸载应用程序快捷方式的方法。
IStorageProviderCopyHook
公开一种用于确定是否允许 Shell 移动、复制、删除或重命名云提供商同步根目录中的文件夹的方法。
IStorageProviderHandler
检索与特定文件或文件夹关联的 IStorageProviderPropertyHandler 文件。
IStorageProviderPropertyHandler
提供与文件或文件夹相关联的属性的集合。
IStreamAsync
公开用于管理异步流输入/输出 (I/O) 的方法。
IStreamUnbufferedInfo
公开一种用于确定扇区大小的方法,以帮助字节对齐。
ISuspensionDependencyManager
ISyncMgrConflict
公开用于提供关于从冲突存储区检索冲突信息,并允许解决冲突的方法。
ISyncMgrConflictFolder
公开一种可获取冲突对象的冲突 ID 列表的方法。
ISyncMgrConflictItems
公开用于获取冲突项目数据和项目计数的方法。
ISyncMgrConflictPresenter
公开向用户展示冲突的方法。
ISyncMgrConflictResolutionItems
公开用于获取项目信息和项目计数的方法。
ISyncMgrConflictResolveInfo
公开获取和设置同步管理器冲突解决相关信息的方法。
ISyncMgrConflictStore
公开允许处理程序提供在冲突文件夹中出现的冲突的方法。
ISyncMgrControl
公开允许应用程序或处理程序启动或停止同步,通知同步中心处理程序集或项目的更改,或通知属性值的更改的方法。
ISyncMgrEnumItems
公开枚举 SYNCMGRITEM 结构数组的方法。 其中每个结构都提供了有关可同步的项目信息。 ISyncMgrEnumItems 具有与所有标准枚举器接口相同的方法:Next、Skip、Reset 和 Clone。
ISyncMgrEvent
公开可从事件存储区检索数据的方法。 事件存储允许同步中心获取存储中所有事件的枚举器,并检索单个事件。
ISyncMgrEventLinkUIOperation
提供一种在同步结果文件夹中的事件链接被单击时调用的方法。
ISyncMgrEventStore
公开允许处理程序提供自己的事件存储并管理自己的同步事件的方法,而不是使用默认的同步中心事件存储。 这些事件会显示在“同步结果”文件夹中。
ISyncMgrHandler
公开可构成同步处理程序实现的主接口的方法。 同步中心会通过此接口创建一个处理程序实例,以获取属性、枚举同步项目和修改状态。 同步中心会在单独的线程上创建处理程序的单独实例,以执行同步或 UI 操作。
ISyncMgrHandlerCollection
公开用于提供同步处理程序 ID 枚举器和实例化这些同步处理程序的方法。
ISyncMgrHandlerInfo
公开允许处理程序向同步中心提供属性和状态信息的方法。
ISyncMgrRegister
公开让应用程序可向同步管理器注册的方法。 这可以通过 ISyncMgrRegister 接口或直接在注册表中注册来实现。
ISyncMgrResolutionHandler
公开用于管理同步冲突的方法。 实现此接口可构建同步冲突处理程序。 冲突解决用户界面 (UI) 将调用此接口来解决呈现给用户的冲突。
ISyncMgrScheduleWizardUIOperation
公开一种让处理程序能够显示同步计划向导的方法。
ISyncMgrSessionCreator
公开让处理程序或外部应用程序可以通知同步中心同步已开始并报告进度和事件的单个方法。
ISyncMgrSyncCallback
公开让同步进程可以向同步中心报告进度和事件,或查询进程是否已取消的方法。
ISyncMgrSynchronize
公开让已注册的应用程序或服务能够从同步管理器接收通知的方法。
ISyncMgrSynchronizeCallback
公开用于管理同步过程的方法。
ISyncMgrSynchronizeInvoke
公开让已注册的应用程序能够调用同步管理器以更新项目的方法。
ISyncMgrSyncItem
公开可对单个同步项目采取行动并从中获取信息的方法,从而允许处理程序将同步项目作为独立对象进行管理。
ISyncMgrSyncItemContainer
公开用于向处理程序提供有关其所含项目信息的方法。
ISyncMgrSyncItemInfo
公开用于为单个同步项目提供属性和状态信息的方法。
ISyncMgrSyncResult
公开一种让调用 ISyncMgrControl 的应用程序可以获取 ISyncMgrControl::StartHandlerSyncISyncMgrControl::StartItemSync 调用的结果的方法。
ISyncMgrUIOperation
公开一种在同步中心要求时可以同步处理程序或同步项目显示 UI 对象的方法。
ITaskbarList
公开用于控制任务栏的方法。 它允许动态添加、移除和激活任务栏上的项目。
ITaskbarList2
通过公开用于将窗口标记为全屏显示的方法来扩展 ITaskbarList 接口。
ITaskbarList3
通过公开支持 Windows 7 中添加的统一启动和切换任务栏按钮功能的方法来扩展 ITaskbarList2。 此功能包括缩略图显示、基于选项卡式应用程序中各个选项卡的切换目标、缩略图工具栏、通知和状态叠加以及进度指示器。
ITaskbarList4
通过提供让调用方能够控制选项卡缩略图和速览功能的两个属性值的方法来扩展 ITaskbarList3
IThumbnailCache
公开用于跨应用程序共享的系统缩略图缓存的方法。
IThumbnailCachePrimer
IThumbnailHandlerFactory
公开用于检索项目的缩略图处理程序的方法。 如果要指定子 IDList 使用何种提取程序,则实现此接口。
IThumbnailProvider
公开一种获取缩略图的方法,旨在为缩略图处理程序实现。 实现此接口的对象还必须实现 IInitializeWithStream
IThumbnailSettings
提供一种让缩略图提供程序能够确定缩略图请求的用户上下文的方法。
IThumbnailStreamCache
获取或设置缩略图流。 此接口仅供内部使用,只能由照片应用程序调用。
ITrackShellMenu
公开通过提供使工具栏按钮与菜单相协调以及显示弹出式菜单的功能来扩展 IShellMenu 接口的方法。
ITranscodeImage
公开一种允许从 Windows 支持的任何图像类型转换为 JPEG 或位图 (BMP) 图像格式的方法。
ITransferAdviseSink
公开支持状态收集和故障信息的方法。
ITransferDestination
公开可为复制或移动操作创建目标 Shell 项的方法。 提供此接口的目的是通过提供 ITransferDestination::Advise 方法来对文件操作进行更多的控制。
ITransferMediumItem
由复制引擎用于获取调用 QueryInterface 的项目,以返回指向接口 ITransferDestination 或接口 ITransferSource 的指针。 可以对这些接口进行查询和枚举,以进行复制、移动或删除操作。
ITransferSource
公开操作 IShellItem 的方法,包括复制、移动、回收等。 此接口通过提供 ITransferSource::Advise 方法,为文件操作提供更多控制。
ITrayDeskBand
公开可显示、隐藏和查询桌面工具栏的方法。
IUpdateIDList
提供一种用于更新文件夹对象的子对象的 ITEMIDLIST 的方法。
IURLSearchHook
公开一种供浏览器用于转换未知 URL 协议地址的方法。
IURLSearchHook2
公开一种供浏览器用于搜索上下文对象转换未知 URL 协议的地址的方法。
IUserAccountChangeCallback
公开当表示用户帐户的图片发生变化时调用的方法。
IUserNotification
公开设置通知信息,然后在与任务栏的通知区域一起出现的气球中向用户显示该通知的方法。
注意:IUserNotification2IUserNotification 的不同之处仅在于其 Show 方法,该方法为与通知通信的回调接口添加了一个附加参数。 除此之外,这两个接口在形式和功能上都是相同的。 CLSID_UserNotification 实现了作为重载的 Show 的两个版本。
IUserNotification2
公开设置通知信息,然后在与任务栏的通知区域一起出现的气球中向用户显示该通知的方法。
注意:IUserNotification2 不会继承自 IUserNotificationIUserNotification2IUserNotification 的不同之处仅在于其 Show 方法,该方法为与通知通信的回调接口添加了一个附加参数。 除此之外,这两个接口在形式和功能上都是相同的。 CLSID_UserNotification 实现了作为重载的 Show 的两个版本。
IUserNotificationCallback
公开一种用于处理通知气球中的鼠标单击或快捷菜单访问的方法。 与 IUserNotification2::Show 一起使用。
IUseToBrowseItem
查找浏览此项目时应使用的项目。
IViewStateIdentityItem
提供一个规范的持久化项目,即会记住视图自定义设置的项目。
IVirtualDesktopManager
公开让应用程序能够与构成虚拟工作区的窗口组进行交互的方法。
IVisualProperties
公开用于设置和获取可视化属性的方法。
IWebWizardExtension
通过公开用于设置向导扩展的初始 URL 和出错时的特定 URL 的方法来扩展 IWizardExtension 接口。
IWizardExtension
供托管服务器端内容页面的向导使用,如 Web 发布向导和在线打印订购向导。 此接口公开用于指定支持的扩展页面,以及导航进入或退出这些页面的方法。
IWizardSite
公开向导扩展用于在自身和向导的其余部分之间导航边框的方法。
TaskCompletionClient
启用任务完成。