IPropertySystem::GetPropertyDescriptionListFromString method (propsys.h)

Gets an instance of the subsystem object that implements IPropertyDescriptionList, to obtain an ordered collection of property descriptions, based on the provided string.

Syntax

HRESULT GetPropertyDescriptionListFromString(
  [in]  LPCWSTR pszPropList,
  [in]  REFIID  riid,
  [out] void    **ppv
);

Parameters

[in] pszPropList

Type: LPCWSTR

A pointer to a string that identifies the property list.

[in] riid

Type: REFIID

A reference to the desired IID.

[out] ppv

Type: void**

The address of an IPropertyDescriptionList interface pointer.

Return value

Type: HRESULT

Returns one of the following values.

Return code Description
S_OK
Indicates interface is obtained.
E_INVALIDARG
Indicates ppv is NULL.

Remarks

The property description list string ("proplist") syntax consists of a sequence of canonical property names, with flags associated with each property name. The string starts with "prop:". The syntax looks like this: prop:[flags]propertyname[endflags];

The flags are optional and can be any of those below. Note: These flags translate to the PROPDESC_VIEW_FLAGS enum.

Flag Meaning
- Sort in reverse order (PDVF_REVERSESORT).
0 Show by default in both the primary and secondary lists (PDVF_SHOWBYDEFAULT | PDVF_SHOWINPRIMARYLIST | PDVF_SHOWINSECONDARYLIST).
1 Show in the primary and secondary lists (PDVF_SHOWINPRIMARYLIST | PDVF_SHOWINSECONDARYLIST).
2 Show in secondary list (PDVF_SHOWINSECONDARYLIST).
^ Begin a new group (PDVF_BEGINNEWGROUP).
/ Right align (PDVF_RIGHTALIGN).
* Hide if the value is not present.
| Center align. (PDVF_CENTERALIGN).
~ Hide the label. (PDVF_HIDELABEL).
# Fill area. (PDVF_FILLAREA).
? Hide if unsupported by property handler (PDVF_HIDEIFUNSUPPORTED).
< Parse as link (PDVF_PARSEASLINK).
& Show as whole link (PDVF_SHOWASWHOLELINK).
 

From the dbfolder and file folder perspective:

0 Show as a column in defview, column chooser menu, and column chooser dialog.
1 Show in the column chooser menu and dialog.
2 Show in the column chooser dialog.
NULL Include in the search results, but hide in the UI.
 

The endflags are also optional and can be the following:

EndFlag Meaning
] End column (used for extended tiles view).
 

It is recommended that you use the IID_PPV_ARGS macro, defined in objbase.h, to package the riid and ppv parameters. This macro provides the correct IID based on the interface pointed to by the value in ppv, eliminating the possibility of a coding error.

For more information about property schemas, see Property Schemas.

Requirements

Requirement Value
Minimum supported client Windows XP with SP2, Windows Vista [desktop apps only]
Minimum supported server Windows Server 2003 with SP1 [desktop apps only]
Target Platform Windows
Header propsys.h
DLL Propsys.dll (version 5.0 or later)
Redistributable Windows Desktop Search (WDS) 3.0

See also

IPropertySystem