Directory Services |
The property methods of the IADsPropertyEntry interface provide access to the following properties. For more information about property methods, see Interface Property Methods.
Property | Description |
---|---|
Name
[Visual Basic] [C++] |
Name of the property entry. This name should correspond to the name of an attribute as defined in the schema. |
ADsType
[Visual Basic] [C++] |
The data type of the Name property. The values of the data type is defined in the ADSTYPEENUM enumeration. |
ControlCode
[Visual Basic] [C++] |
A constant that specifies the operation to be performed on the named property. The value is defined in the ADS_PROPERTY_OPERATION_ENUM enumeration. |
Values
[Visual Basic] [C++] |
A VARIANT array. Each element in this array represents a value of the named property. Such property values are represented by ADSI objects implementing the IADsPropertyValue interfaces. Therefore, the VARIANT array holds an array of pointers to the IDispatch interface on the ADSI objects implementing the IADsPropertyValue interface. |
Each property method supports the standard HRESULT return values, including S_OK. For more information about other return values, see ADSI Error Codes.
The following code example shows how to retrieve a named property from the cache and create a new property entry.
Dim propList As IADsPropertyList Dim propEntry As IADsPropertyEntry Dim propVal As IADsPropertyValue On Error GoTo Cleanup '------------------------------------------------------------ '----- Getting IADsPropertyEntry ---------------------------- '------------------------------------------------------------ ' Create the property list object. Set propList = GetObject("LDAP://dc01/DC=Fabrikam,DC=com") propList.GetInfo ' Get a named property entry object. Set propEntry = propList.GetPropertyItem("dc", ADSTYPE_CASE_IGNORE_STRING) ' Insert code to do something with propEntry Set propEntry = Nothing '------------------------------------------------------------ '---- Setting IADsPropertyEntry ----------------------------- '------------------------------------------------------------ ' Create a property value object. Set propVal = New PropertyValue '---- Property Value ----- propVal.CaseIgnoreString = "Fabrikam, Inc - Seattle, WA" propVal.ADsType = ADSTYPE_CASE_IGNORE_STRING '---- Make a new Property Entry ---- Set propEntry = New PropertyEntry propEntry.Name = "adminDescription" propEntry.Values = Array(propVal) propEntry.ControlCode = ADS_PROPERTY_UPDATE propEntry.ADsType = ADS_CASE_IGNORE_STRING ' ---- Put the newly created property entry to the cache ---- propList.PutPropertyItem (propEntry) ' Commit the entry to the directory store. propList.SetInfo Cleanup: If (Err.Number<>0) Then MsgBox("An error has occurred. " & Err.Number) End If Set propList = Nothing Set propEntry = Nothing Set propVal = Nothing
The following code example shows how to retrieve a named property from a cache.
#include <activeds.h> #include <stdio.h> IADsPropertyList *pList = NULL; IADsPropertyEntry *pEntry = NULL; IADs *pObj = NULL; VARIANT var; long valType = ADSTYPE_CASE_IGNORE_STRING; VariantInit(&var); // Bind to directory object. HRESULT hr = ADsGetObject(L"LDAP://dc01/DC=Fabrikam,DC=com", IID_IADsPropertyList, (void**)&pList); if(FAILED(hr)){return;} // Initialize the property cache. hr = pList->QueryInterface(IID_IADs,(void**)&pObj); if(FAILED(hr)){goto Cleanup;} pObj->GetInfo(); pObj->Release(); // Get a property entry. hr = pList->GetPropertyItem(CComBSTR("description"), valType, &var); pList->Release(); if(FAILED(hr)){goto Cleanup;} hr = V_DISPATCH(&var)->QueryInterface(IID_IADsPropertyEntry, (void**)&pEntry); VariantClear(&var); if(FAILED(hr)){goto Cleanup;} // Get the name and the type of the property entry. BSTR nm = NULL; hr = pEntry->get_Name(&nm); printf("Property name = %S\n",nm); VariantClear(&var); long at; hr = pEntry->get_ADsType(&at); printf("Property type = %d\n",a); Cleanup: if(nm) SysFreeString(nm); if(pList) pList->Release(); if(pEntry) pEntry->Release(); if(pObj) pObj->Release(); VariantClear(&var);
Client: Included in Windows XP and
Windows 2000 Professional.
Server: Included in Windows Server 2003 and
Windows 2000 Server.
Redistributable: Requires Active Directory Client Extension
on Windows NT 4.0 SP6a and Windows 95/98/Me.
Header: Declared in Iads.h.
ADS_PROPERTY_OPERATION_ENUM, ADSI Error Codes, ADSTYPEENUM, IADsPropertyEntry, IADsPropertyValue, IDispatch