IADsPropertyEntry 속성 메서드
IADsPropertyEntry 인터페이스의 속성 메서드는 다음 속성에 대한 액세스를 제공합니다. 속성 메서드에 대한 자세한 내용은 인터페이스 속성 메서드를 참조하세요.
속성
-
ADsType
-
-
액세스 형식: 읽기/쓰기
-
스크립팅 데이터 형식: LONG
-
// C++ method syntax HRESULT get_ADsType( [out] LONG* plADsType ); HRESULT put_ADsType( [in] LONG lADsType );
Name 속성의 데이터 형식입니다. 데이터 형식의 값은 ADSTYPEENUM 열거형에 정의됩니다.
-
-
ControlCode
-
-
액세스 형식: 읽기/쓰기
-
스크립팅 데이터 형식: LONG
-
// C++ method syntax HRESULT get_ControlCode( [out] LONG* pControlCode ); HRESULT put_ControlCode( [in] LONG lnControlCode );
명명된 속성에서 수행할 작업을 지정하는 상수입니다. 값은 ADS_PROPERTY_OPERATION_ENUM 열거형에 정의됩니다.
-
-
이름
-
-
액세스 형식: 읽기/쓰기
-
데이터 형식 스크립팅: BSTR
-
// C++ method syntax HRESULT get_Name( [out] BSTR* pbstrName ); HRESULT put_Name( [in] BSTR bstrName );
속성 항목의 이름입니다. 이 이름은 스키마에 정의된 특성의 이름에 해당해야 합니다.
-
-
값
-
-
액세스 형식: 읽기/쓰기
-
데이터 형식 스크립팅: VARIANT
-
// C++ method syntax HRESULT get_Values( [out] VARIANT* pvValues ); HRESULT put_Values( [in] VARIANT vValues );
VARIANT 배열입니다. 이 배열의 각 요소는 명명된 속성의 값을 나타냅니다. 이러한 속성 값은 IADsPropertyValue 및 IADsPropertyValue2 인터페이스 를 구현하는 ADSI 개체로 표시됩니다. 따라서 VARIANT 배열은 IADsPropertyValue 및 IADsPropertyValue2 인터페이스를 구현하는 ADSI 개체의 IDispatch 인터페이스에 대한 포인터 배열을 보유합니다.
-
설명
각 속성 메서드는 S_OK 포함하여 표준 HRESULT 반환 값을 지원합니다. 다른 반환 값에 대한 자세한 내용은 ADSI 오류 코드를 참조하세요.
예제
다음 코드 예제에서는 캐시에서 명명된 속성을 검색하고 새 속성 항목을 만드는 방법을 보여줍니다.
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
'---- Create 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
다음 코드 예제에서는 캐시에서 명명된 속성을 가져오는 방법을 보여줍니다.
#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);
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows Vista |
지원되는 최소 서버 |
Windows Server 2008 |
헤더 |
|
DLL |
|
IID |
IID_IADsPropertyEntry 05792C8E-941F-11D0-8529-00C04FD8D503으로 정의됩니다. |