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配列で、ADSTYPE_BOOLEAN値がTRUEのADS_SEARCHPREF_ATTRIBTYPES_ONLY検索オプションを設定します。
次のコード例は、属性名のみを取得する方法を示しています。
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_ATTRIBTYPES_ONLY;
SearchPref.vValue.dwType = ADSTYPE_BOOLEAN;
SearchPref.vValue.Boolean = TRUE;
ADS_SEARCHPREF_ATTRIBTYPES_ONLY検索オプションの使用方法を示すコード例と詳細については、 属性を検索するためのコード例 を参照してください。