GETPROPERTYSTOREFLAGS 枚举 (propsys.h)
指示修改由创建属性存储的方法检索的属性存储对象的标志,例如 IShellItem2::GetPropertyStore 或 IPropertyStoreFactory::GetPropertyStore。
语法
typedef enum GETPROPERTYSTOREFLAGS {
GPS_DEFAULT = 0,
GPS_HANDLERPROPERTIESONLY = 0x1,
GPS_READWRITE = 0x2,
GPS_TEMPORARY = 0x4,
GPS_FASTPROPERTIESONLY = 0x8,
GPS_OPENSLOWITEM = 0x10,
GPS_DELAYCREATION = 0x20,
GPS_BESTEFFORT = 0x40,
GPS_NO_OPLOCK = 0x80,
GPS_PREFERQUERYPROPERTIES = 0x100,
GPS_EXTRINSICPROPERTIES = 0x200,
GPS_EXTRINSICPROPERTIESONLY = 0x400,
GPS_VOLATILEPROPERTIES = 0x800,
GPS_VOLATILEPROPERTIESONLY = 0x1000,
GPS_MASK_VALID = 0x1fff
} ;
常量
GPS_DEFAULT 值: 0 对调用进程的含义:返回包含所有属性的只读属性存储。 不会打开) 脱机文件 (慢速项。 与其他标志组合:可由其他标志重写。 |
GPS_HANDLERPROPERTIESONLY 值: 0x1 对调用进程的含义:仅包含直接来自属性处理程序的属性,该处理程序会在磁盘、网络或设备上打开文件。 对文件文件夹的含义:仅包含直接来自处理程序的属性。 对其他文件夹的含义:委托给某个文件夹时,将此标志传递给文件文件夹;不要执行任何多路复用 (MUX) 。 如果未委托给文件夹,请忽略此标志,而不是返回失败代码。 与其他标志的组合:不能与GPS_TEMPORARY、GPS_FASTPROPERTIESONLY或GPS_BESTEFFORT结合使用。 |
GPS_READWRITE 值: 0x2 对调用进程的含义:可以将属性写入项。 注意:存储区包含的属性可能比只读存储区少。 对文件夹的含义:ReadWrite。 其他文件夹的含义:ReadWrite。 注意:使用默认 MUX 时,返回单个非多路复用存储,因为默认 MUX 不支持 ReadWrite。 与其他标志的组合:不能与GPS_TEMPORARY、GPS_FASTPROPERTIESONLY、GPS_BESTEFFORT或GPS_DELAYCREATION结合使用。 表示GPS_HANDLERPROPERTIESONLY。 |
GPS_TEMPORARY 值: 0x4 对调用进程的含义:提供在 Shell 项实例的生存期内存在的无初始属性的可写存储;基本上,是附加到项目实例的属性包。 对文件夹的含义:不适用。 由 Shell 项处理。 其他文件夹的含义:不适用。 由 Shell 项处理。 与其他标志组合:不能与其他任何标志组合使用。 表示GPS_READWRITE。 |
GPS_FASTPROPERTIESONLY 值: 0x8 对调用过程的含义:提供不涉及从磁盘或网络读取的存储。 注意:与不带此标志的存储相比,某些值可能不同或缺失。 文件夹的含义:仅包含“先天”和“回退”存储。 不要加载处理程序。 对其他文件夹的含义:仅包括内存中可用或可以非常快速地计算的属性, (磁盘、网络或外围 IO 设备) 没有属性。 这通常只是 IDLIST 中的数据源。 委托给其他文件夹时,将此标志传递给它们。 与其他标志组合:不能与GPS_TEMPORARY、GPS_READWRITE、GPS_HANDLERPROPERTIESONLY或GPS_DELAYCREATION结合使用。 |
GPS_OPENSLOWITEM 值: 0x10 对调用进程的意义:如有必要, (脱机文件) 打开慢速项。 对文件文件夹的含义:从脱机存储检索文件(如有必要)。 注意:如果没有此标志,则不会为脱机文件创建处理程序。 对其他文件夹的含义:不返回任何速度非常慢的属性。 与其他标志的组合:不能与GPS_TEMPORARY或GPS_FASTPROPERTIESONLY结合使用。 |
GPS_DELAYCREATION 值: 0x20 对调用进程的含义:延迟内存密集型操作(如文件访问),直到请求需要此类访问的属性。 对文件文件夹的含义:在需要之前不要创建处理程序;例如, GetCount/GetAt 或 GetValue,其中先天存储不满足请求。 注意: GetValue 可能因文件访问问题而失败。 对其他文件夹的意义:如果文件夹具有内存密集型属性(例如委托给文件夹或网络访问),它可以通过支持 IDelayedPropertyStoreFactory 并将其属性拆分为快速和慢速存储来优化性能。 然后,它可以使用延迟的 MUX 来重新组合它们。 与其他标志的组合:不能与GPS_TEMPORARY或GPS_READWRITE结合使用。 |
GPS_BESTEFFORT 值: 0x40 对调用过程的含义:即使未返回某些属性,也能成功获取存储。 注意:与不带此标志的存储相比,某些值可能不同或缺失。 对文件夹的含义:成功并返回存储,即使处理程序或固有存储区在创建过程中出错也是如此。 仅当子存储失败时才会失败。 对其他文件夹的含义:即使未返回某些属性,也能成功获取存储。 与其他标志的组合:不能与GPS_TEMPORARY、GPS_READWRITE或GPS_HANDLERPROPERTIESONLY结合使用。 |
GPS_NO_OPLOCK 值: 0x80 Windows 7 及更高版本。 仅当调用方已在文件上持有 oplock (oplock) 的机会性锁时,才应使用此标志,因为如果没有 oplock,绑定操作将无法继续。 默认情况下,Shell 在绑定到属性处理程序之前请求文件上的 oplock。 此标志禁用默认行为。 Windows Server 2008 和 Windows Vista: 此标志不可用。 |
GPS_PREFERQUERYPROPERTIES 值: 0x100 Windows 8 及更高版本。 使用此标志仅从索引器检索 WDS 结果的属性。 |
GPS_EXTRINSICPROPERTIES 值: 0x200 包含文件的辅助流中的属性。 |
GPS_EXTRINSICPROPERTIESONLY 值: 0x400 仅包含文件的辅助流中的属性。 |
GPS_VOLATILEPROPERTIES 值: 0x800 |
GPS_VOLATILEPROPERTIESONLY 值: 0x1000 |
GPS_MASK_VALID 值: 0x1fff 有效 GETPROPERTYSTOREFLAGS 值的掩码。 |
注解
如果 Shell 项是文件,则属性存储区包含以下项。
- 文件系统中与文件相关的属性。
- 文件的属性处理程序提供的文件本身的属性,除非文件处于脱机状态, (请参阅GPS_OPENSLOWITEM) 。
注意 GPS_INCLUDEOFFLINEPROPERTIES已被GPS_OPENSLOWITEM取代。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
标头 | propsys.h |