IADsClass 속성 메서드

IADsClass 인터페이스의 속성 메서드는 다음 속성을 얻거나 설정합니다. 자세한 내용은 인터페이스 속성 메서드를 참조하세요.

속성

요약

이 클래스가 Abstract인지 또는 추상이 아닌지 여부를 나타내는 부울 값입니다. TRUE이면 이 클래스는 Abstract 클래스이며 디렉터리 서비스에서 직접 인스턴스화할 수 없습니다. 추상 클래스는 슈퍼 클래스로만 사용할 수 있습니다.

액세스 형식: 읽기/쓰기

스크립팅 데이터 형식: BOOLEAN

// C++ method syntax
HRESULT get_Abstract(
  [out] BOOLEAN* pbAbstract
);
HRESULT put_Abstract(
  [in] BOOLEAN bAbstract
);

AuxDerivedFrom

이 클래스가 파생된 슈퍼 보조 클래스를 나타내는 ADsPath 문자열의 배열입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_AuxDerivedFrom(
  [out] VARIANT* pvAuxDerivedFrom
);
HRESULT put_AuxDerivedFrom(
  [in] VARIANT vAuxDerivedFrom
);

보조

이 클래스가 보조인지 여부를 나타내는 부울 값입니다. TRUE이면 이 클래스는 보조 클래스이며 디렉터리 서비스에서 직접 인스턴스화할 수 없습니다. 보조 클래스는 다른 보조 클래스의 슈퍼 클래스 또는 구조 클래스에 대한 추가 속성의 소스로만 사용할 수 있습니다.

액세스 형식: 읽기/쓰기

스크립팅 데이터 형식: BOOLEAN

// C++ method syntax
HRESULT get_Auxiliary(
  [out] BOOLEAN* pbAuxiliary
);
HRESULT put_Auxiliary(
  [in] BOOLEAN bAuxiliary
);

CLSID

이 클래스를 구현하는 COM 개체를 식별하는 선택적 공급자별 CLSID입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: BSTR

// C++ method syntax
HRESULT get_CLSID(
  [out] BSTR* pbstrCLSID
);
HRESULT put_CLSID(
  [in] BSTR bstrCLSID
);

컨테이너

이 클래스가 다른 개체 클래스의 컨테이너가 될 수 있는지 여부를 나타내는 부울 값입니다. 이 값이 TRUE이면 get_Container 메서드를 호출하여 이 클래스에 포함될 수 있는 개체 클래스의 배열을 가져올 수 있습니다.

액세스 형식: 읽기/쓰기

스크립팅 데이터 형식: BOOLEAN

// C++ method syntax
HRESULT get_Container(
  [out] BOOLEAN* pbContainer
);
HRESULT put_Container(
  [in] BOOLEAN bContainer
);

Containment

각 요소가 이 클래스에 포함될 수 있는 개체 클래스의 이름인 BSTR 배열입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_Containment(
  [out] VARIANT* pvContainment
);
HRESULT put_Containment(
  [in] VARIANT vContainment
);

DerivedFrom

이 클래스가 파생된 클래스를 나타내는 ADsPath 문자열의 배열입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_DerivedFrom(
  [out] VARIANT* pvDerivedFrom
);
HRESULT put_DerivedFrom(
  [in] VARIANT vDerivedFrom
);

HelpFileContext

이 클래스에 대한 특정 정보를 찾을 수 있는 HelpFileName 내의 컨텍스트 ID입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: long

// C++ method syntax
HRESULT get_HelpFileContext(
  [out] long* plHelpContext
);
HRESULT put_HelpFileContext(
  [in] long lHelpContext
);

HelpFileName

이 클래스의 개체에 대한 자세한 정보를 포함하는 도움말 파일의 이름입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: BSTR

// C++ method syntax
HRESULT get_HelpFileName(
  [out] BSTR* pbstrHelpFileName
);
HRESULT put_HelpFileName(
  [in] BSTR bstrHelpFileName
);

MandatoryProperties

스토리지에 기록할 이 클래스에 대해 설정해야 하는 속성을 나열하는 VARIANTSAFEARRAY입니다. 클래스에 하나의 속성만 포함된 경우 get_MandatoryPropertiesBSTR을 반환합니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_MandatoryProperties(
  [out] VARIANT* pvarMandatoryProperties
);
HRESULT put_MandatoryProperties(
  [in] VARIANT varMandatoryProperties
);

NamingProperties

이 스키마 클래스의 특성 이름을 지정하는 데 사용되는 속성을 나열하는 BSTRSAFEARRAY입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_NamingProperties(
  [out] VARIANT* pvarNamingProperties
);
HRESULT put_NamingProperties(
  [in] VARIANT varNamingProperties
);

OID

이 클래스를 정의하는 공급자별 개체 식별자입니다. 이는 클래스에 공급자별 OID가 필요한 디렉터리 서비스에서 Active Directory를 사용하여 스키마 확장을 허용하기 위해 제공됩니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: BSTR

// C++ method syntax
HRESULT get_OID(
  [out] BSTR* pbstrOID
);
HRESULT put_OID(
  [in] BSTR bstrOID
);

OptionalProperties

이 스키마 클래스의 선택적 속성을 나열하는 VARIANTSAFEARRAY입니다. 클래스에 하나의 속성만 포함된 경우 get_OptionalPropertiesBSTR을 반환합니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_OptionalProperties(
  [out] VARIANT* pvarOptionalProperties
);
HRESULT put_OptionalProperties(
  [in] VARIANT varOptionalProperties
);

PossibleSuperiors

이 클래스의 인스턴스를 포함할 수 있는 스키마 클래스를 나타내는 ADsPath 문자열의 배열입니다.

액세스 형식: 읽기/쓰기

데이터 형식 스크립팅: VARIANT

// C++ method syntax
HRESULT get_PossibleSuperiors(
  [out] VARIANT* pvSuperiors
);
HRESULT put_PossibleSuperiors(
  [in] VARIANT vSuperiors
);

PrimaryInterface

인터페이스를 이 스키마 클래스의 개체에 연결하는 선택적 공급자별 식별자 GUID입니다. 예를 들어 IADsUserPrimaryInterface 를 지원하는 "User" 클래스는 IID_IADsUser 식별됩니다. COM에서 정의한 대로 GUID의 표준 문자열 형식이어야 합니다. 이 GUID는 이 속성을 구현하는 공급자에 대해 이 클래스의 인스턴스에서 IADs::get_GUID 속성에 표시되는 값입니다. 클래스 코드의 기본 인터페이스의 IID로 스키마 클래스를 식별하면 런타임에 QueryInterface 를 사용하여 개체가 원하는 클래스인지 여부를 확인할 수 있습니다.

액세스 형식: 읽기 전용

데이터 형식 스크립팅: BSTR

// C++ method syntax
HRESULT get_PrimaryInterface(
  [out] BSTR* pbstrGUID
);

예제

다음 코드 예제에서는 IADsClass 인터페이스를 사용하여 개체가 컨테이너가 될 수 있는지 확인하고 있는 경우 포함된 개체의 이름을 나열하는 방법을 보여 줍니다.

Dim ads As IADs
Dim cls As IADsClass

On Error GoTo Cleanup

Set ads = GetObject("WinNT://myComputer,computer")
Set cls = GetObject(ads.Schema)
if cls.Container = True Then
    MsgBox "This object contains the following children:"
    For Each o In cls.Containment
        MsgBox o
    Next
End If

Cleanup:
    If (Err.Number<>0) Then
        MsgBox("An error has occurred. " & Err.Number)
    End If
    Set ads = Nothing
    Set cls = Nothing

다음 코드 예제에서는 IADsClass 인터페이스를 사용하여 개체가 컨테이너가 될 수 있는지 확인하고 있는 경우 포함된 개체의 이름을 나열하는 방법을 보여 줍니다.

HRESULT hr = S_OK;
IADsClass *pCls = NULL;
IADs *pADs = NULL;
BSTR bstrSchema;
VARIANT var;
 
hr = CoInitialize(NULL);
hr = ADsGetObject(L"WinNT://myComputer,computer",
                  IID_IADs,
                  (void**)&pADs);
if (FAILED(hr)) {goto Cleanup;}
 
hr = pADs->get_Schema(&bstrSchema);
pADs->Release();
if(FAILED(hr)) {goto Cleanup;}
 
hr = ADsGetObject(bstrSchema, IID_IADsClass, (void**)&pCls);
if(FAILED(hr)) {goto Cleanup;}
 
VariantInit(&var);
VARIANT_BOOL bCont;
pCls->get_Container(&bCont);
if(bCont != false) {
    VariantClear(&var);
    pCls->get_Containment(&var);
    hr = printVarArray(var);
}

Cleanup:
    if(pADs)
        pADs->Release();

    if(pCls)
        pCls->Release();

    SysFreeString(bstrSchema);
    CoUninitialize();

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista
지원되는 최소 서버
Windows Server 2008
헤더
Iads.h
DLL
Activeds.dll
IID
IID_IADsClass C8F93DD0-4AE0-11CF-9E73-00AA004A5691로 정의됩니다.

추가 정보

IADsClass

IADsClass::Qualifiers