Returning Only Attribute Names with IDirectorySearch
You can perform a search to determine what type of data is available for a particular object. In this case, you are only interested in the attributes names, not the attribute values of the object. The ADS_SEARCHPREF_ATTRIBTYPES_ONLY option causes the server to only return the attribute names and not the attribute values. However, the result set includes only those attributes that have values assigned. For example, consider an object with the following attributes:
name = Jeff
sn = Smith
department = Empty
phone = 206-555-0111
When the ADS_SEARCHPREF_ATTRIBTYPES_ONLY option is set, the result set includes:
name
sn
department
phone
The default is for both attribute values and names to be returned.
To retrieve only attribute names, set an ADS_SEARCHPREF_ATTRIBTYPES_ONLY search option with an ADSTYPE_BOOLEAN value of TRUE in the ADS_SEARCHPREF_INFO array passed to the IDirectorySearch::SetSearchPreference method.
The following code example shows how to retrieve attribute names only.
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_ATTRIBTYPES_ONLY;
SearchPref.vValue.dwType = ADSTYPE_BOOLEAN;
SearchPref.vValue.Boolean = TRUE;
For more information and a code example that shows how to use the ADS_SEARCHPREF_ATTRIBTYPES_ONLY search option, see Example Code for Searching for Attributes.