使用 IDirectorySearch 仅返回属性名称
你可以执行搜索,以确定特定对象的可用数据类型。 在这种情况下,你只对属性名称感兴趣,而不是对象的属性值。 ADS_SEARCHPREF_ATTRIBTYPES_ONLY 选项会导致服务器只返回属性名,而不返回属性值。 但是,结果集仅包含已赋值的属性。 例如,考虑一个具有以下属性的对象:
name = Jeff
sn = Smith
department = Empty
phone = 206-555-0111
如果设置了 ADS_SEARCHPREF_ATTRIBTYPES_ONLY,结果集将包括:
name
sn
department
phone
默认值用于要返回的属性值和名称。
要只检索属性名,请在传递给 IDirectorySearch::SetSearchPreference 方法的 ADS_SEARCHPREF_INFO 数组中设置 ADS_SEARCHPREF_ATTRIBTYPES_ONLY 搜索选项,其 ADSTYPE_BOOLEAN 值为 TRUE。
下面的代码示例显示了如何仅检索属性名称。
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_ATTRIBTYPES_ONLY;
SearchPref.vValue.dwType = ADSTYPE_BOOLEAN;
SearchPref.vValue.Boolean = TRUE;
有关详细信息以及如何使用 ADS_SEARCHPREF_ATTRIBTYPES_ONLY 搜索选项的代码示例,请参阅搜索属性的代码示例。