IPropertySystem::GetPropertyDescriptionListFromString method

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


HRESULT GetPropertyDescriptionListFromString(
  LPCWSTR pszPropList,
  REFIID  riid,
  void    **ppv




A pointer to a string that identifies the property list.



A reference to the desired IID.


Type: void**

The address of an IPropertyDescriptionList interface pointer.

Return Value


Returns one of the following values.

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


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.


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