Windows 属性系统

Windows 属性系统技术概述。

若要开发 Windows 属性系统,需要以下标头:

有关此技术的编程指南,请参阅:

枚举

 
_PROPERTYUI_FLAGS

指定属性功能。
GETPROPERTYSTOREFLAGS

指示修改由创建属性存储的方法检索的属性存储对象的标志,例如 IShellItem2::GetPropertyStore 或 IPropertyStoreFactory::GetPropertyStore。
PDOPSTATUS

提供操作状态标志。
PKA_FLAGS

描述属性更改数组行为。
PLACEHOLDER_STATES

指定占位符文件可以具有的状态。 通过 System.FilePlaceholderStatus (PKEY_FilePlaceholderStatus) 属性检索此值。
PROPDESC_AGGREGATION_TYPE

描述在选择多个项时如何显示属性值。
PROPDESC_COLUMNINDEX_TYPE

指示是否可以或如何为属性编制索引。
PROPDESC_CONDITION_TYPE

描述在 Windows Vista 的查询生成器 UI 中显示属性时要使用的条件类型,但不在 Windows 7 及更高版本中显示该属性。
PROPDESC_ENUMFILTER

描述返回的属性说明的筛选列表。
PROPDESC_FORMAT_FLAGS

由属性说明帮助程序函数(如 PSFormatForDisplay)用来指示属性字符串的格式。
PROPDESC_RELATIVEDESCRIPTION_TYPE

描述属性说明的相对说明类型,由 displayInfo 元素的 relativeDescriptionType 属性确定。
PROPDESC_SEARCHINFO_FLAGS

确定 Windows 搜索是否以及如何为属性编制索引。
PROPDESC_TYPE_FLAGS

描述属性的 .propdesc 文件中 typeInfo 元素的属性。
PROPDESC_VIEW_FLAGS

这些标志描述属性说明列表字符串中的属性。
PROPVAR_COMPARE_UNIT

这些标志与某些 PROPVARIANT 结构比较相关联。
PSC_STATE

指定属性的状态。 它们由托管内存中属性存储缓存的代码手动设置。
SYNC_ENGINE_STATE_FLAGS

指定任何同步引擎使用的值,以将其内部引擎状态公开到文件索引器中属性存储的PKEY_StorageProviderStatus值 若要更新属性,请首先使用 GPS_EXTRINSICPROPERTIES 标志调用 IShellItem2::GetPropertyStore。 接下来,调用返回对象的 IPropertyStore::SetValue 方法,指定PKEY_StorageProviderStatus键,以使用这些SYNC_ENGINE_STATE_FLAGS设置属性的位掩码值。
SYNC_TRANSFER_STATUS

指定 System.SyncTransferStatus 属性中使用的可能状态值。

函数

 
附加

在数组的末尾插入更改操作。
AppendOrReplace

替换第一次出现的更改,该更改影响所提供的更改的相同属性键。 如果属性键不在数组中,此方法会将更改追加到数组的末尾。
ApplyToPropVariant

对属性值应用更改。
ClearPropVariantArray

释放存储在数组中的 PROPVARIANT 结构的数组使用的内存和引用。
ClearVariantArray

释放存储在数组中的 VARIANT 结构的数组使用的内存和引用。
CoerceToCanonicalValue

根据属性说明,将值强制为规范值。
EnumeratePropertyDescriptions

获取实现 IPropertyDescriptionList 的子系统对象的实例,以获取系统中属性说明的完整或部分列表。
FindMatchingIndex

将指定的属性值与列表中的枚举值进行比较,并返回匹配的索引。
FormatForDisplay

获取属性值的格式化 Unicode 字符串表示形式。 (IPropertyDescription.FormatForDisplay)
FormatForDisplay

获取属性值的格式化 Unicode 字符串表示形式。 (IPropertySystem.FormatForDisplay)
FormatForDisplay

开发人员应改用 IPropertyDescription。 获取属性值的格式化 Unicode 字符串表示形式。
FormatForDisplayAlloc

获取分配给已分配的内存缓冲区的属性值的字符串表示形式。
FreePropVariantArray

释放 PROPVARIANT 结构数组使用的内存和引用。
GetAdditionalSortByAliases

获取指向 IPropertyDescriptionList 接口的指针的地址,该接口包含其他排序列值。
GetAggregationType

获取一个值,该值描述在 UI 中选择多个项时如何显示属性值。
GetAt

获取指定数组索引处的更改操作。
GetAt

获取属性说明列表中指定索引处的属性说明。
GetAt

获取列表中的指定索引处的 IPropertyEnumType 对象。
GetCanonicalName

获取区分大小写的名称,无论属性的本地化名称如何,系统都可以通过该名称知道属性。
GetColumnIndexType

确定当前属性的索引方式。
GetColumnState

获取列状态标志,该标志描述使用此标志的接口或 API 应如何处理属性。
GetConditionAt

不支持。获取指定索引处的条件。
GetConditionType

获取在查询生成器 UI 中显示 属性时要使用的条件类型和默认条件操作。 这会影响谓词条件的列表, (例如,等于、小于 和 包含为此属性显示的) 。
GetCount

获取数组中的更改操作数。
GetCount

获取属性列表中包含的属性数。
GetCount

获取列表中的元素数。
GetDefaultColumnWidth

获取列表视图中 属性的默认列宽。
GetDefaultWidth

开发人员应改用 IPropertyDescription。 获取属性说明的宽度。
GetDisplayName

获取属性在任何 UI 中显示的显示名称。
GetDisplayName

开发人员应改用 IPropertyDescription。 获取一个字符串,该字符串指定适合向用户显示的属性的名称。
GetDisplayText

从枚举信息结构中获取显示文本。
GetDisplayType

获取用于显示 属性的当前数据类型。
GetEditInvitation

获取在各种对话框中托管的编辑控件中使用的文本。
GetEnumType

从枚举信息结构中获取枚举类型。
GetEnumTypeList

获取 IPropertyEnumTypeList 的实例,该实例可用于枚举属性的可能值。
GetFlags

开发人员应改用 IPropertyDescription。 获取指定属性的属性功能标志。
GetGroupingRange

获取按属性对视图进行分组时要使用的分组方法,并检索分组类型。
GetHelpInfo

开发人员应改用 IPropertyDescription。 (IPropertyUI.GetHelpInfo)
GetImageReference

检索与属性枚举关联的图像引用。
GetImageReferenceForValue

获取与属性值关联的图像引用。
GetMaxSize

从属性架构的 searchInfo 元素获取最大大小值。
GetProjectionString

返回指向包含项规范名称的字符串的指针。
GetPropertyDescription

获取实现 IPropertyDescription 的子系统对象的实例,以获取给定 PROPERTYKEY 的属性说明。
GetPropertyDescription

开发人员应改用 IPropertyDescription。 获取指定属性的属性说明。
GetPropertyDescriptionByName

获取实现 IPropertyDescription 的子系统对象的实例,以获取给定规范名称的属性说明。
GetPropertyDescriptionListFromString

获取实现 IPropertyDescriptionList 的子系统对象的实例,以基于提供的字符串获取属性说明的有序集合。
GetPropertyKey

获取一个结构,该结构充当属性的唯一标识符。
GetPropertyStore

获取与提供的标志对应的 IPropertyStore 对象。
GetPropertyStoreForKeys

获取给定一组属性键的 IPropertyStore 对象。 与调用 IPropertyStoreFactory::GetPropertyStore 相比,这提供了获取 IPropertyStore 对象的替代方法(可能更快)。
GetPropertyType

获取 属性的变体类型。
GetRangeMinValue

从枚举信息结构中获取最小值。
GetRangeSetValue

从枚举信息结构中获取一个设置值。
GetRelatedProperty

检索表示相关属性的 IPropertyDescription 对象。
GetRelativeDescription

按属性说明指定的方式比较两个属性值。 返回描述两个属性比较方式的两个显示字符串。
GetRelativeDescriptionType

获取属性说明的相对说明类型。
GetSearchInfoFlags

获取与 属性关联的PROPDESC_SEARCHINFO_FLAGS。
GetSortByAlias

获取指向包含主排序列的 IPropertyDescription 接口的指针的地址。
GetSortDescription

获取 属性的当前排序说明标志,这些标志指示排序产品/服务的特定措辞。
GetSortDescriptionLabel

获取描述当前排序顺序的本地化显示字符串。
GetState

获取指定属性键的状态。
GetTypeFlags

获取一组标志,这些标志描述 属性的用法和功能。
GetValue

从枚举信息结构中获取值。
GetValueAndState

获取属性键的值和状态数据。
GetViewFlags

获取管理属性视图的当前标志集。
InitPropVariantFromBoolean

使用指定的布尔值将给定 PROPVARIANT 结构初始化为VT_BOOL。
InitPropVariantFromBooleanVector

从指定的布尔向量初始化 PROPVARIANT 结构。
InitPropVariantFromBuffer

使用缓冲区的内容初始化 PROPVARIANT 结构。
InitPropVariantFromCLSID

基于 CLSID) (类标识符初始化 PROPVARIANT 结构。
InitPropVariantFromDouble

基于指定的双精度值初始化 PROPVARIANT 结构。
InitPropVariantFromDoubleVector

基于双精度值的指定向量初始化 PROPVARIANT 结构。
InitPropVariantFromFileTime

基于存储在 FILETIME 结构中的信息初始化 PROPVARIANT 结构。
InitPropVariantFromFileTimeVector

从指定的 FILETIME 值向量初始化 PROPVARIANT 结构。
InitPropVariantFromGUIDAsBuffer

基于 GUID 初始化 PROPVARIANT 结构。 结构初始化为 VT_VECTOR
VT_UI1。
InitPropVariantFromGUIDAsString

基于 GUID 初始化 PROPVARIANT 结构。 结构初始化为VT_LPWSTR。
InitPropVariantFromInt16

基于 16 位整数值初始化 PROPVARIANT 结构。
InitPropVariantFromInt16Vector

基于指定的 16 位整数值向量初始化 PROPVARIANT 结构。
InitPropVariantFromInt32

基于 32 位整数值初始化 PROPVARIANT 结构。
InitPropVariantFromInt32Vector

基于 32 位整数值的向量初始化 PROPVARIANT 结构。
InitPropVariantFromInt64

基于指定的 Int64 值初始化 PROPVARIANT 结构。
InitPropVariantFromInt64Vector

基于 Int64 值的向量初始化 PROPVARIANT 结构。
InitPropVariantFromPropVariantVectorElem

基于指定的 PROPVARIANT 矢量元素初始化 PROPVARIANT 结构。
InitPropVariantFromResource

基于可执行文件中嵌入的字符串资源初始化 PROPVARIANT 结构。
InitPropVariantFromString

基于指定的字符串初始化 PROPVARIANT 结构。
InitPropVariantFromStringAsVector

从指定的字符串初始化 PROPVARIANT 结构。 字符串分析为分号分隔列表 (,例如:_“A;B;C“) 。
InitPropVariantFromStringVector

从指定的字符串向量初始化 PROPVARIANT 结构。
InitPropVariantFromStrRet

基于 STRRET 结构中存储的字符串初始化 PROPVARIANT 结构。
InitPropVariantFromUInt16

基于 16 位无符号整数值初始化 PROPVARIANT 结构。
InitPropVariantFromUInt16Vector

基于 16 位无符号整数值的向量初始化 PROPVARIANT 结构。
InitPropVariantFromUInt32

基于 32 位无符号整数值初始化 PROPVARIANT 结构。
InitPropVariantFromUInt32Vector

基于 32 位无符号整数值的向量初始化 PROPVARIANT 结构。
InitPropVariantFromUInt64

使用 64 位无符号整数值初始化 PROPVARIANT 结构。
InitPropVariantFromUInt64Vector

基于 64 位无符号整数的向量初始化 PROPVARIANT 结构。
InitPropVariantVectorFromPropVariant

使用存储在另一个 PROPVARIANT 中的值初始化 PROPVARIANT 结构中的向量元素。
InitVariantFromBoolean

使用布尔值初始化 VARIANT 结构。
InitVariantFromBooleanArray

从布尔值数组初始化 VARIANT 结构。
InitVariantFromBuffer

使用缓冲区的内容初始化 VARIANT 结构。
InitVariantFromDispatch

基于 IDispatch 对象的实例初始化 VARIANT 结构。
InitVariantFromDosDateTime

使用 Microsoft MS-DOS 所用格式给定的日期和时间初始化 VARIANT 结构。 日期和时间值将转换为用于在 VARIANT 中存储日期和时间的格式。
InitVariantFromDouble

使用 DOUBLE 类型的值初始化 VARIANT 结构。
InitVariantFromDoubleArray

使用 DOUBLE 类型的值数组初始化 VARIANT 结构。
InitVariantFromFileTime

使用 FILETIME 结构的内容初始化 VARIANT 结构。
InitVariantFromFileTimeArray

使用 FILETIME 结构数组初始化 VARIANT 结构。
InitVariantFromGUIDAsBuffer

基于 GUID 初始化 VARIANT 结构。 结构初始化为 VT_ARRAY
VT_UI1。
InitVariantFromGUIDAsString

基于 GUID 初始化 VARIANT 结构。 结构初始化为VT_BSTR类型。
InitVariantFromInt16

使用 16 位整数值初始化 VARIANT 结构。
InitVariantFromInt16Array

使用 16 位整数值的数组初始化 VARIANT 结构。
InitVariantFromInt32

使用 32 位整数值初始化 VARIANT 结构。
InitVariantFromInt32Array

使用 32 位整数值的数组初始化 VARIANT 结构。
InitVariantFromInt64

使用 64 位整数值初始化 VARIANT 结构。
InitVariantFromInt64Array

使用 64 位整数值的数组初始化 VARIANT 结构。
InitVariantFromResource

基于可执行文件中嵌入的字符串资源初始化 VARIANT 结构。
InitVariantFromString

使用字符串初始化 VARIANT 结构。
InitVariantFromStringArray

使用字符串数组初始化 VARIANT 结构。
InitVariantFromStrRet

使用 STRRET 结构中存储的字符串初始化 VARIANT 结构。
InitVariantFromUInt16

使用无符号 16 位整数值初始化 VARIANT 结构。
InitVariantFromUInt16Array

使用无符号 16 位整数值的数组初始化 VARIANT 结构。
InitVariantFromUInt32

使用无符号 32 位整数值初始化 VARIANT 结构。
InitVariantFromUInt32Array

使用无符号 32 位整数值的数组初始化 VARIANT 结构。
InitVariantFromUInt64

使用无符号 64 位整数值初始化 VARIANT 结构。
InitVariantFromUInt64Array

使用无符号 64 位整数值的数组初始化 VARIANT 结构。
InitVariantFromVariantArrayElem

使用存储在另一 VARIANT 结构中的值初始化 VARIANT 结构。
InsertAt

将更改操作插入到位于指定位置的数组中。
IsKeyInArray

指定更改数组中是否存在特定的属性键。
IsPropertyWritable

查询属性处理程序是否允许用户在 UI 中编辑特定属性。
IsPropVariantString

指定指定的 PROPVARIANT 结构是否为字符串类型。
IsPropVariantVector

指定 PROPVARIANT 结构是否具有向量类型。
IsValueCanonical

获取一个值,该值指示根据属性说明的定义,属性是否为规范属性。
IsVariantArray

指定变体是否为数组。
IsVariantString

指定变体是否为字符串。
IsVarTypeFloat

返回 VARTYPE 是否为浮点数。
IsVarTypeInteger

返回 VARTYPE 是否为整数。
IsVarTypeNumber

指定 VARTYPE 是否为数字。
IsVarTypeSignedInteger

返回 VARTYPE 是否为带符号整数。
IsVarTypeUnsignedInteger

返回 VARTYPE 是否为无符号整数。
ParsePropertyName

开发人员应改用 IPropertyDescription。 读取指定属性名称的字符,并标识属性的 FMTID 和 PROPID。
PifMgr_CloseProperties

关闭使用 PifMgr_OpenProperties 打开的应用程序属性。
PifMgr_GetProperties

从 .pif 文件返回指定的数据块。
PifMgr_OpenProperties

打开与 Microsoft MS-DOS 应用程序关联的 .pif 文件,并返回应用程序属性的句柄。
PifMgr_SetProperties

将值分配给 .pif 文件中的数据块。
PropVariantChangeType

将存储为 PROPVARIANT 结构的值强制转换为不同变体类型的等效值。
PropVariantClear

清除 PROPVARIANT 结构。
PropVariantCompare

基于默认比较单位和设置比较两个 PROPVARIANT 结构。
PropVariantCompareEx

通过允许调用方根据指定的比较单位和标志比较两个 PROPVARIANT 结构来扩展 PropVariantCompare。
PropVariantCopy

创建 PROPVARIANT 结构的副本。
PropVariantGetBooleanElem

从类型为 VT_BOOL 的 PROPVARIANT 结构中提取单个布尔元素,VT_VECTOR
VT_BOOL或VT_ARRAY VT_BOOL。
PropVariantGetDoubleElem

从类型为 VT_R8 的 PROPVARIANT 结构中提取单个双精度元素,VT_VECTOR
VT_R8或VT_ARRAY VT_R8。
PropVariantGetElem

基于另一个 PROPVARIANT 结构中的指定元素初始化 PROPVARIANT 结构。
PropVariantGetElementCount

检索 PROPVARIANT 结构的元素计数。
PropVariantGetFileTimeElem

从 VT_FILETIME 类型的 PROPVARIANT 结构中提取单个 FILETIME 元素,VT_VECTOR
VT_FILETIME或VT_ARRAY VT_FILETIME。
PropVariantGetInt16Elem

从类型为 VT_I2 的 PROPVARIANT 结构中提取单个 Int16 元素,VT_VECTOR
VT_I2或VT_ARRAY VT_I2。
PropVariantGetInt32Elem

从类型为 VT_I4 的 PROPVARIANT 提取单个 Int32 元素,VT_VECTOR
VT_I4或VT_ARRAY VT_I4。
PropVariantGetInt64Elem

从类型为 VT_I8 的 PROPVARIANT 结构中提取单个 Int64 元素,VT_VECTOR
VT_I8或VT_ARRAY VT_I8。
PropVariantGetStringElem

从类型为 VT_LPWSTR、VT_BSTR VT_VECTOR 的 PROPVARIANT 结构中提取单个 Unicode 字符串元素
VT_LPWSTR、VT_VECTOR VT_BSTR或VT_ARRAY VT_BSTR。
PropVariantGetUInt16Elem

从类型为 VT_U12 的 PROPVARIANT 结构中提取单个无符号 Int16 元素,VT_VECTOR
VT_U12或VT_ARRAY VT_U12。
PropVariantGetUInt32Elem

从类型为 VT_UI4 的 PROPVARIANT 结构中提取单个无符号 Int32 元素,VT_VECTOR
VT_UI4或VT_ARRAY VT_UI4。
PropVariantGetUInt64Elem

从类型为 VT_UI8 的 PROPVARIANT 结构中提取单个无符号 Int64 元素,VT_VECTOR
VT_UI8或VT_ARRAY VT_UI8。
PropVariantToBoolean

提取 PROPVARIANT 结构的布尔属性值。 如果无法提取任何值,则分配默认值。
PropVariantToBooleanVector

从 PROPVARIANT 结构中提取布尔向量。
PropVariantToBooleanVectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的布尔向量中。
PropVariantToBooleanWithDefault

提取 PROPVARIANT 结构的布尔属性值。 如果不存在值,则返回指定的默认值。
PropVariantToBSTR

提取 PROPVARIANT 结构的 BSTR 属性值。
PropVariantToBuffer

从类型为 VT_VECTOR 的 PROPVARIANT 结构中提取缓冲区值
VT_UI1或VT_ARRRAY VT_UI1。
PropVariantToCLSID

提取 (CLSID) PROPVARIANT 结构的属性值的类标识符。
PropVariantToDouble

从 PROPVARIANT 结构中提取双精度值。
PropVariantToDoubleVector

从 PROPVARIANT 结构中提取双精度向量。
PropVariantToDoubleVectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的双向量中。
PropVariantToDoubleWithDefault

提取 PROPVARIANT 结构的 double 属性值。 如果不存在值,则返回指定的默认值。
PropVariantToFileTime

从 PROPVARIANT 结构中提取 FILETIME 结构。
PropVariantToFileTimeVector

将数据从 PROPVARIANT 结构提取到 FILETIME 向量中。
PropVariantToFileTimeVectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的 FILETIME 向量中。
PropVariantToGUID

从 PROPVARIANT 结构中提取 GUID 值。
PropVariantToInt16

提取 PROPVARIANT 结构的 Int16 属性值。
PropVariantToInt16Vector

从 PROPVARIANT 结构中提取 Int16 值的向量。
PropVariantToInt16VectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的 Int16 向量中。
PropVariantToInt16WithDefault

提取 PROPVARIANT 结构的 Int16 属性值。 如果当前不存在值,则返回指定的默认值。
PropVariantToInt32

提取 PROPVARIANT 结构的 Int32 属性值。 如果无法提取任何值,则分配默认值。
PropVariantToInt32Vector

从 PROPVARIANT 结构中提取长值的向量。
PropVariantToInt32VectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的 Int32 向量中。
PropVariantToInt32WithDefault

从 PROPVARIANT 结构中提取 Int32 值。 如果当前不存在值,则返回指定的默认值。
PropVariantToInt64

从 PROPVARIANT 结构中提取 LONGLONG 值。 如果无法提取任何值,则分配默认值。
PropVariantToInt64Vector

将数据从 PROPVARIANT 结构提取到 Int64 向量中。
PropVariantToInt64VectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的 LONGLONG 向量中。
PropVariantToInt64WithDefault

提取 PROPVARIANT 结构的 Int64 属性值。 如果不存在值,则返回指定的默认值。
PropVariantToString

从 PROPVARIANT 结构中提取字符串值。
PropVariantToStringAlloc

从 PROPVARIANT 结构中提取字符串属性值。
PropVariantToStringVector

从 PROPVARIANT 结构中提取字符串向量。
PropVariantToStringVectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的向量中新分配的字符串中。
PropVariantToStringWithDefault

提取 PROPVARIANT 结构的字符串属性值。 如果不存在值,则返回指定的默认值。
PropVariantToStrRet

从 PROPVARIANT 结构中提取字符串并将其放入 STRRET 结构中。
PropVariantToUInt16

从 PROPVARIANT 结构中提取无符号短值。 如果无法提取任何值,则分配默认值。
PropVariantToUInt16Vector

将数据从 PROPVARIANT 结构提取到无符号短向量中。
PropVariantToUInt16VectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的无符号短向量中。
PropVariantToUInt16WithDefault

从 PROPVARIANT 结构中提取无符号短值。 如果不存在值,则返回指定的默认值。
PropVariantToUInt32

从 PROPVARIANT 结构中提取 ULONG 值。 如果无法提取任何值,则分配默认值。
PropVariantToUInt32Vector

将数据从 PROPVARIANT 结构提取到 ULONG 向量中。
PropVariantToUInt32VectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的 ULONG 向量中。
PropVariantToUInt32WithDefault

从 PROPVARIANT 结构中提取 ULONG 值。 如果不存在任何值,则返回指定的默认值。
PropVariantToUInt64

从 PROPVARIANT 结构中提取 UInt64 值。 如果无法提取任何值,则分配默认值。
PropVariantToUInt64Vector

将数据从 PROPVARIANT 结构提取到 ULONGLONG 向量中。
PropVariantToUInt64VectorAlloc

将数据从 PROPVARIANT 结构提取到新分配的 ULONGLONG 向量中。
PropVariantToUInt64WithDefault

从 PROPVARIANT 结构中提取 ULONGLONG 值。 如果不存在任何值,则返回指定的默认值。
PropVariantToVariant

将 PROPVARIANT 结构的内容转换为 VARIANT 结构。
PropVariantToWinRTPropertyValue

将数据从 PROPVARIANT 结构提取到Windows 运行时属性值中。
PSCoerceToCanonicalValue

根据属性说明将属性的值转换为规范值。
PSCreateAdapterFromPropertyStore

从 IPropertyStore 创建适配器。
PSCreateDelayedMultiplexPropertyStore

创建包含多个属性存储的只读延迟绑定属性存储。
PSCreateMemoryPropertyStore

创建内存中属性存储。
PSCreateMultiplexPropertyStore

创建包含多个属性存储的只读属性存储,每个属性存储都必须支持 IPropertyStore 或 IPropertySetStorage。
PSCreatePropertyChangeArray

为一组 IPropertyChange 对象创建容器。 此容器可与 IFileOperation 一起使用,将一组属性更改应用于一组文件。
PSCreatePropertyStoreFromObject

接受支持 IPropertyStore 或 IPropertySetStorage 的对象的 IUnknown 接口。 如果对象支持 IPropertySetStorage,则将其包装为支持 IPropertyStore。
PSCreatePropertyStoreFromPropertySetStorage

将 IPropertySetStorage 接口包装在 IPropertyStore 接口中。
PSCreateSimplePropertyChange

创建简单的属性更改。
PSEnumeratePropertyDescriptions

一个包装 API,用于调用架构子系统的 IPropertySystem::EnumeratePropertyDescriptions。
PSFormatForDisplay

获取存储在 PROPVARIANT 结构中的属性值的格式化 Unicode 字符串表示形式。 调用方负责分配输出缓冲区。
PSFormatForDisplayAlloc

获取存储在 PROPVARIANT 结构中的属性值的格式化 Unicode 字符串表示形式。 此函数为输出字符串分配内存。
PSFormatPropertyValue

获取存储在属性存储中的属性值的格式化 Unicode 字符串表示形式。 此函数为输出字符串分配内存。
PSGetImageReferenceForValue

获取指定属性的属性说明接口的实例。
PSGetItemPropertyHandler

检索 Shell 项的属性处理程序。 (PSGetItemPropertyHandler)
PSGetItemPropertyHandlerWithCreateObject

检索 Shell 项的属性处理程序。 (PSGetItemPropertyHandlerWithCreateObject)
PSGetNamedPropertyFromPropertyStorage

按属性名称从序列化的属性存储中获取值。
PSGetNameFromPropertyKey

检索属性的规范名称(给定其 PROPERTYKEY)。
PSGetPropertyDescription

获取由 PROPERTYKEY 结构指定的属性的属性的属性说明接口的实例。
PSGetPropertyDescriptionByName

获取指定属性名称的属性说明接口的实例。
PSGetPropertyDescriptionListFromString

获取指定属性列表的属性说明列表接口的实例。
PSGetPropertyFromPropertyStorage

获取存储在序列化属性存储中的属性的值。
PSGetPropertyKeyFromName

获取规范属性名称的属性键。
PSGetPropertySystem

获取实现 IPropertySystem 的子系统对象的实例。
PSGetPropertyValue

从属性存储中获取属性值。
PSLookupPropertyHandlerCLSID

获取每台计算机注册的文件属性处理程序 (CLSID) 的类标识符。
PSPropertyBag_Delete

从属性包中删除属性。
PSPropertyBag_ReadBOOL

读取属性包中属性的 BOOL 数据值。
PSPropertyBag_ReadBSTR

从属性包中的属性读取 BSTR 数据值。
PSPropertyBag_ReadDWORD

从属性包中的 属性读取 DWORD 数据值。
PSPropertyBag_ReadGUID

从属性包中的属性读取 GUID 数据值。
PSPropertyBag_ReadInt

从属性包中的属性读取 int 数据值。
PSPropertyBag_ReadLONG

从属性包中的属性读取 LONG 数据值。
PSPropertyBag_ReadPOINTL

检索存储在指定属性包的 POINTL 结构中的属性坐标。
PSPropertyBag_ReadPOINTS

检索存储在指定属性包的 POINTS 结构中的属性坐标。
PSPropertyBag_ReadPropertyKey

读取指定属性包中属性的属性键。
PSPropertyBag_ReadRECTL

检索存储在指定属性包中包含的属性中的矩形的坐标。
PSPropertyBag_ReadSHORT

读取属性包中属性的 SHORT 数据值。
PSPropertyBag_ReadStr

读取属性包中属性的字符串数据值。
PSPropertyBag_ReadStrAlloc

从属性包中的属性读取字符串数据值,并为读取的字符串分配内存。
PSPropertyBag_ReadStream

读取存储在指定属性包中包含的给定属性中的数据流。
PSPropertyBag_ReadType

读取存储在属性包中的属性的数据值的类型。
PSPropertyBag_ReadULONGLONG

从属性包中的属性读取 ULONGLONG 数据值。
PSPropertyBag_ReadUnknown

读取属性包中未知数据值的给定属性。
PSPropertyBag_WriteBOOL

设置属性包中属性的 BOOL 值。
PSPropertyBag_WriteBSTR

设置属性包中属性的 BSTR 值。
PSPropertyBag_WriteDWORD

设置属性包中属性的 DWORD 值。
PSPropertyBag_WriteGUID

设置属性包中属性的 GUID 值。
PSPropertyBag_WriteInt

设置属性包中属性的 int 值。
PSPropertyBag_WriteLONG

设置属性包中属性的 LONG 值。
PSPropertyBag_WritePOINTL

将属性坐标存储在指定属性包的POINTL 结构中。
PSPropertyBag_WritePOINTS

将属性坐标存储在指定属性包的POINTS 结构中。
PSPropertyBag_WritePropertyKey

设置属性包中属性的属性键值。
PSPropertyBag_WriteRECTL

将矩形的坐标存储在属性包中的 属性中。
PSPropertyBag_WriteSHORT

设置属性包中属性的 SHORT 值。
PSPropertyBag_WriteStr

设置属性包中属性的字符串值。
PSPropertyBag_WriteStream

将数据流写入属性包中的属性。
PSPropertyBag_WriteULONGLONG

设置属性包中属性的 ULONGLONG 值。
PSPropertyBag_WriteUnknown

在属性包中写入未知数据值的属性。
PSPropertyKeyFromString

将字符串转换为 PROPERTYKEY 结构。
PSRefreshPropertySchema

不支持。调用此函数是有效的,但它未实现以执行任何函数,因此没有理由执行此操作。
PSRegisterPropertySchema

通知架构子系统添加属性说明架构文件。 (PSRegisterPropertySchema)
PSSetPropertyValue

设置属性存储区中属性的值。
PSStringFromPropertyKey

创建一个字符串,用于标识该属性的键中的属性。
PSUnregisterPropertySchema

通知架构子系统删除属性说明架构文件。
RefreshPropertySchema

不支持。 (IPropertySystem.RefreshPropertySchema)
RegisterPropertySchema

通知架构子系统添加属性说明架构文件。 (IPropertySystem.RegisterPropertySchema)
RemoveAt

删除指定的更改。
SetValueAndState

设置属性键的值和状态数据。
SHAddDefaultPropertiesByExt

将默认属性添加到为指定文件扩展名注册的属性存储区。
SHGetPropertyStoreForWindow

检索表示特定窗口的属性集合的 对象,该集合允许查询或设置这些属性。
SHGetPropertyStoreFromIDList

从指向项标识符列表的指针 (PIDL) 检索支持 IPropertyStore 或相关接口的对象。
SHGetPropertyStoreFromParsingName

返回给定路径或分析名称的项的属性存储。
SHPropStgCreate

确保正确处理所请求属性集操作的代码页检索或分配。
SHPropStgReadMultiple

包装 IPropertyStorage::ReadMultiple 函数,以确保为弃用的属性集正确处理 ANSI 和 Unicode 转换。
SHPropStgWriteMultiple

包装 IPropertyStorage::WriteMultiple 函数,以确保为弃用的属性集正确处理 ANSI 和 Unicode 转换。
UnregisterPropertySchema

使用本地计算机上的 .propdesc 文件的文件路径,通知架构子系统删除属性说明架构 (.propdesc) 文件。
VariantCompare

基于默认比较规则比较两个变体结构。
VariantGetBooleanElem

从变体结构中提取单个布尔元素。
VariantGetDoubleElem

从变体结构中提取一个双精度元素。
VariantGetElem

从指定的 variant 元素初始化 VARIANT 结构。
VariantGetElementCount

检索变体结构的元素计数。
VariantGetInt16Elem

从变体结构中提取单个 Int16 元素。
VariantGetInt32Elem

从变体结构中提取单个 Int32 元素。
VariantGetInt64Elem

从变体结构中提取单个 Int64 元素。
VariantGetStringElem

从变体结构中提取单个宽字符串元素。
VariantGetUInt16Elem

从变体结构中提取单个无符号 Int16 元素。
VariantGetUInt32Elem

从变体结构中提取单个无符号 Int32 元素。
VariantGetUInt64Elem

从变体结构中提取单个无符号 Int64 元素。
VariantToBoolean

从 VARIANT 结构中提取布尔属性的值。 如果无法提取任何值,则分配默认值。
VariantToBooleanArray

从 VARIANT 结构中提取布尔值的数组。
VariantToBooleanArrayAlloc

分配 BOOL 值的数组,然后将 VARIANT 结构中的数据提取到该数组中。
VariantToBooleanWithDefault

从 VARIANT 结构中提取 BOOL 值。 如果不存在任何值,则返回指定的默认值。
VariantToBuffer

提取存储在类型为 VT_ARRRAY 的 VARIANT 结构的缓冲区的内容
VT_UI1。
VariantToDosDateTime

从 VARIANT 结构中提取 Microsoft MS-DOS 格式的日期和时间值。
VariantToDouble

从 VARIANT 结构中提取 DOUBLE 值。 如果无法提取任何值,则分配默认值。
VariantToDoubleArray

从 VARIANT 结构中提取 DOUBLE 值的数组。
VariantToDoubleArrayAlloc

分配 DOUBLE 值的数组,然后将 VARIANT 结构中的数据提取到该数组中。
VariantToDoubleWithDefault

从 VARIANT 结构中提取 DOUBLE 值。 如果不存在任何值,则返回指定的默认值。
VariantToFileTime

从变体结构中提取 FILETIME 结构。
VariantToGUID

提取变体结构的 GUID 属性值。
VariantToInt16

提取变体结构的 Int16 属性值。 如果无法提取任何值,则此函数会分配默认值。
VariantToInt16Array

将数据从矢量结构提取到 Int16 数组中。
VariantToInt16ArrayAlloc

将数据从矢量结构提取到新分配的 Int16 数组中。
VariantToInt16WithDefault

提取变体结构的 Int16 属性值。 如果不存在任何值,则返回指定的默认值。
VariantToInt32

提取变体结构的 Int32 属性值。 如果无法提取任何值,则分配默认值。
VariantToInt32Array

将数据从矢量结构提取到 Int32 数组中。
VariantToInt32ArrayAlloc

将数据从矢量结构提取到新分配的 Int32 数组中。
VariantToInt32WithDefault

提取变体结构的 Int32 属性值。 如果不存在任何值,则返回指定的默认值。
VariantToInt64

提取变体结构的 Int64 属性值。 如果无法提取任何值,则分配默认值。
VariantToInt64Array

将数据从矢量结构提取到 Int64 数组中。
VariantToInt64ArrayAlloc

将数据从矢量结构提取到新分配的 Int64 数组中。
VariantToInt64WithDefault

提取变体结构的 Int64 属性值。 如果不存在任何值,则返回指定的默认值。
VariantToPropVariant

将 VARIANT 结构的内容复制到 PROPVARIANT 结构。
VariantToString

将变体结构的变体值提取到字符串。 如果无法提取任何值,则分配默认值。
VariantToStringAlloc

将变体结构的变体值提取到新分配的字符串。 如果无法提取任何值,则分配默认值。
VariantToStringArray

将数据从向量结构提取到 String 数组中。
VariantToStringArrayAlloc

将数据从矢量结构提取到新分配的 String 数组中。
VariantToStringWithDefault

提取变体结构的字符串属性值。 如果不存在任何值,则返回指定的默认值。
VariantToStrRet

如果源变体是VT_BSTR,则提取字符串并将其放入 STRRET 结构中。
VariantToUInt16

提取变体结构的无符号 Int16 属性值。 如果无法提取任何值,则此函数会分配默认值。
VariantToUInt16Array

将数据从矢量结构提取到无符号 Int16 数组中。
VariantToUInt16ArrayAlloc

将数据从矢量结构提取到新分配的无符号 Int16 数组中。
VariantToUInt16WithDefault

提取变体结构的无符号 Int16 属性值。 如果不存在任何值,则返回指定的默认值。
VariantToUInt32

提取变体结构的无符号 Int32 属性值。 如果无法提取任何值,则分配默认值。
VariantToUInt32Array

将数据从矢量结构提取到无符号 Int32 数组中。
VariantToUInt32ArrayAlloc

将数据从矢量结构提取到新分配的无符号 Int32 数组中。
VariantToUInt32WithDefault

提取变体结构的无符号 Int32 属性值。 如果当前不存在值,则返回指定的默认值。
VariantToUInt64

提取变体结构的无符号 Int64 属性值。 如果无法提取任何值,则分配默认值。
VariantToUInt64Array

将数据从矢量结构提取到无符号 Int64 数组中。
VariantToUInt64ArrayAlloc

将矢量结构中的数据提取到新分配的无符号 Int64 数组中。
VariantToUInt64WithDefault

提取变体结构的无符号 Int64 属性值。 如果当前不存在值,则返回指定的默认值。
WinRTPropertyValueToPropVariant

将内容从 Windows 运行时属性值复制到 PROPVARIANT 结构。

接口

 
IPropertyChange

公开一个方法,该方法封装对单个属性的更改。
IPropertyChangeArray

公开可能传递给 IFileOperation 的多个更改操作的方法。
IPropertyDescription

公开枚举和检索单个属性说明详细信息的方法。 (IPropertyDescription)
IPropertyDescription2

公开枚举和检索单个属性说明详细信息的方法。 (IPropertyDescription2)
IPropertyDescriptionAliasInfo

公开方法以获取项的“排序依据”列属性。 此接口由想要检索给定属性的主要或辅助排序列的 UI 对象使用。
IPropertyDescriptionList

公开从以列表形式显示的属性说明集合中提取信息的方法。
IPropertyDescriptionRelatedPropertyInfo

提供检索 IPropertyDescription 接口的方法。
IPropertyDescriptionSearchInfo

公开属性的搜索相关信息。
IPropertyEnumType

公开从枚举信息中提取数据的方法。 IPropertyEnumType 在运行时以编程方式授予对属性架构中的枚举和 enumRange 元素的访问权限。
IPropertyEnumType2

公开从枚举信息中提取数据的方法。 IPropertyEnumType2 扩展了 IPropertyEnumType。
IPropertyEnumTypeList

公开枚举属性的可能值的方法。
IPropertyStoreCache

公开允许处理程序管理每个属性的各种状态的方法。
IPropertyStoreCapabilities

公开一个方法,该方法确定用户是否可以在 UI 中编辑属性。
IPropertyStoreFactory

公开用于获取 IPropertyStore 对象的方法。
IPropertySystem

公开用于获取属性说明、注册和注销属性架构、枚举属性说明以及以严格类型的方式设置属性值格式的方法。
IPropertyUI

开发人员应改用 IPropertyDescription。 (IPropertyUI)

结构

 
PROPERTYKEY

指定以编程方式标识属性的 FMTID/PID 标识符。 替换 SHCOLUMNID。
PROPPRG

此结构包含 .pif 文件中的信息。 它由PifMgr_GetProperties使用。