Bagikan melalui


Antarmuka IADsClass (iads.h)

Antarmuka IADsClass dirancang untuk mengelola objek kelas skema yang menyediakan definisi kelas untuk objek ADSI apa pun. Antarmuka manajemen skema lainnya termasuk IADsProperty untuk definisi atribut dan IADsSyntax untuk sintaks atribut.

Warisan

Antarmuka IADsClass mewarisi dari IDispatch dan IAD. IADsClass juga memiliki jenis anggota berikut:

Metode

Antarmuka IADsClass memiliki metode ini.

 
IADsClass::Qualifiers

Mengembalikan kumpulan objek ADSI yang menjelaskan kualifikasi tambahan untuk kelas skema ini.

Keterangan

Objek skema diatur dalam kontainer skema direktori tertentu. Untuk mengakses kelas skema objek, gunakan properti Skema objek (yaitu, panggil metode properti IADs::get_Schema ) untuk mendapatkan string ADsPath dan gunakan string tersebut untuk mengikat objek kelas skemanya.

Contoh

Contoh kode berikut menunjukkan cara mengimplementasikan antarmuka IADsClass .

Dim obj As IADs
Dim cls As IADsClass

On Error GoTo Cleanup

Set obj = GetObject("WinNT://myMachine,computer")
Set cls = GetObject(obj.Schema)
 
' Inspecting mandatory and optional properties.
For Each p In cls.MandatoryProperties
    MsgBox "Must-have: " & p
Next
For Each p In cls.OptionalProperties
    MsgBox "May-have: " & p
Next

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

Contoh kode berikut menunjukkan cara mengimplementasikan antarmuka IADsClass .

HRESULT hr = S_OK;
IADsClass *pCls = NULL;
IADs *pADs;
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);
pCls->get_MandatoryProperties(&var);
hr = printVarArray(var);
 
VariantClear(&var);
pCls->get_OptionalProperties(&var);
hr = printVarArray(var);

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

    if(pADs)
        pADs->Release();

    SysFreeString(bstrSchema);
    VariantClear(&var);
    CoUninitialize();
    return hr;

Contoh kode berikut menunjukkan cara mengimplementasikan fungsi printVarArray .

HRESULT printVarArray(VARIANT var)
{
    LONG lstart, lend;
    VARIANT varItem;
    HRESULT hr;
    SAFEARRAY *sa = V_ARRAY( &var );
    hr = SafeArrayGetLBound( sa, 1, &lstart );
    hr = SafeArrayGetUBound( sa, 1, &lend );
    VariantInit(&varItem);
    for ( long idx=lstart; idx <= lend; idx++ ) {
        hr = SafeArrayGetElement( sa, &idx, &varItem );
        printf("   %S \n", V_BSTR(&varItem));
        VariantClear(&varItem);
    }
    printf("\n");
    return S_OK;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Server minimum yang didukung Windows Server 2008
Target Platform Windows
Header iads.h

Lihat juga

IAD

IADsContainer

IADsProperty

IADsSyntax

IDispatch