IObjectWithAppUserModelID 接口 (shobjidl_core.h)
公开允许自定义 IAssocHandler 对象的实现者访问其显式应用程序用户模型 ID (AppUserModelID) 的方法。 此信息用于确定是否可以将特定文件类型添加到应用程序的跳转列表。
继承
IObjectWithAppUserModelID 接口继承自 IUnknown 接口。 IObjectWithAppUserModelID 也具有以下类型的成员:
方法
IObjectWithAppUserModelID 接口具有这些方法。
IObjectWithAppUserModelID::GetAppID 检索文件类型处理程序的显式应用程序用户模型 ID (AppUserModelID) (如果已声明)。 |
IObjectWithAppUserModelID::SetAppID 指定应用程序定义的唯一应用程序用户模型 ID (AppUserModelID) ,将对象标识为特定文件类型的处理程序。 此方法由需要动态 AppUserModelID 的应用程序使用。 |
注解
只有应用程序是已注册处理程序的文件类型才会显示在该应用程序的跳转列表中。 当应用程序使用显式 AppUserModelID 来标识自身以及属于它的窗口和进程时,还必须在处理程序的实现中设置该 AppUserModelID,以便处理程序被识别为与该应用程序关联。 当应用程序访问一个文件,从而调用 SHAddToRecentDocs 时,会尝试将该文件添加到该应用程序的跳转列表中的 “最近” 或“ 常用 ”类别,或者可能为自定义类别。 如果应用程序是该文件类型的注册处理程序,由处理程序的 AppUserModelID 与应用程序的 AppUserModelID 进行标识,则该文件将添加到跳转列表中。 如果不是,则会对其进行筛选,并且不会显示。
何时实现
Windows 中提供了此接口的实现。 如果应用程序创建自定义 Shell 文件夹,这些文件夹公开系统确定应用程序跳转列表中允许的文件所需的关联处理程序枚举,则应实现其自己的版本。何时使用
仅当应用程序使用显式 AppUserModelID 时,才需要此对象。 如果不公开显式 AppUserModelID,则无需此对象。IObjectWithAppUserModelID 始终用作使用显式 AppUserModelID 且想要向系统公开该信息的较大对象的一部分。
系统调用在处理程序上实现的 IObjectWithAppUserModelID::GetAppID 方法,以确定应用程序是否是文件类型的已注册处理程序。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
目标平台 | Windows |
标头 | shobjidl_core.h (包括 Shobjidl.h) |