Condividi tramite


Metodi di proprietà IADs

I metodi di proprietà dell'interfaccia IAD ottengono o impostano le proprietà descritte nella tabella seguente. Per altre informazioni sui metodi delle proprietà, vedere Metodi di proprietà interface.

Proprietà

ADsPath

Stringa ADsPath di questo oggetto. La stringa identifica in modo univoco questo oggetto in un ambiente di rete. L'oggetto può sempre essere recuperato usando questo percorso.

Tipo di accesso: sola lettura

Tipo di dati di scripting: BSTR

// C++ method syntax
HRESULT get_ADsPath(
  [out] BSTR* pbstrADsPath
);

Classe

Nome della classe Schema dell'oggetto.

Tipo di accesso: sola lettura

Tipo di dati di scripting: BSTR

// C++ method syntax
HRESULT get_Class(
  [out] BSTR* pbstrClass
);

GUID

Identificatore univoco globale dell'oggetto directory. L'interfaccia IAD converte il GUID da una stringa ottetto, come archiviato in un server directory, in un formato stringa.

Tipo di accesso: sola lettura

Tipo di dati di scripting: BSTR

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

Nome

Nome relativo dell'oggetto come denominato all'interno del servizio directory sottostante. Questo nome distingue questo oggetto dai suoi fratelli.

Tipo di accesso: sola lettura

Tipo di dati di scripting: BSTR

// C++ method syntax
HRESULT get_Name(
  [out] BSTR* pbstrName
);

Parent

Stringa ADsPath del contenitore padre. Active Directory non consente la formazione dell'ADsPath di un determinato oggetto concatenando le proprietà Parent e Name . Anche se questa operazione potrebbe funzionare in alcuni provider, non è garantito il funzionamento per tutte le implementazioni. ADsPath è garantito che sia valido e deve essere sempre usato per recuperare il puntatore dell'interfaccia di un oggetto.

Tipo di accesso: sola lettura

Tipo di dati di scripting: BSTR

// C++ method syntax
HRESULT get_Parent(
  [out] BSTR* pbstrParent
);

Schema

Stringa ADsPath dell'oggetto classe Schema di questo oggetto.

Tipo di accesso: sola lettura

Tipo di dati di scripting: BSTR

// C++ method syntax
HRESULT get_Schema(
  [out] BSTR* pbstrSchema
);

Commenti

In Active Directory il GUID restituito dal GUID è una stringa di esadecimali. Usare il GUID risultante per associare direttamente all'oggetto.

Dim x As IADs
Set x = GetObject("LDAP://servername/<GUID=xxx>")

dove xxx è il valore restituito dalla proprietà GUID. Per altre informazioni, vedere Uso di objectGUID per associare a un oggetto. Tenere presente che se si usa un GUID per associare a un oggetto, il metodo di proprietà ADsPath restituisce valori diversi dai valori normali restituiti se è stato usato un nome distinto (DN) per associare allo stesso oggetto. Ad esempio, la tabella seguente elenca i valori restituiti quando si usano i due metodi di associazione diversi per associare allo stesso oggetto utente.

Eseguire l'associazione con DN Eseguire l'associazione con GUID
Nome CN=Jeff Smith CN=Jeff Smith
Parent LDAP://server/CN=Users,DC=Fabrikam,DC=com LDAP://server/CN=Users,DC=Fabrikam,DC=com
ADsPath LDAP://server/CN=Jeff Smith,CN=Users,DC=Fabrikam,DC=com <LDAP://server/ GUID=c0f59dfcf507d311a9e0000f879f7c7>

Nota

Il provider WinNT non supporta l'associazione usando il GUID dell'oggetto e restituisce la proprietà GUID in un formato stringa leggermente diverso.

Esempio

Nell'esempio di codice seguente viene illustrato come recuperare i dati degli oggetti usando i metodi di proprietà dell'interfaccia IAD .

Dim x As IADs
Dim parent As IADsContainer
Dim cls As IADsClass
Dim op As Variant

On Error GoTo Cleanup

Set x = GetObject("WinNT://Fabrikam/Administrator")
Debug.Print "Object Name: " & x.Name
Debug.Print "Object Path: " & x.ADsPath
Debug.Print "Object Class: " & x.Class
 
' Get more data about the object schema.
Set cls = GetObject(x.Schema)
Debug.Print "Class Name is: " & cls.Name
For Each op In cls.OptionalProperties
    Debug.Print "Optional Property: " & op
Next op

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

Nell'esempio di codice seguente viene illustrato come recuperare i dati degli oggetti usando i metodi di proprietà dell'interfaccia IAD .

<HTML>
<head><title></title></head>

<body>
<%
Dim x 
On Error Resume Next
 
Set x = GetObject("WinNT://Fabrikam/Administrator")
Response.Write "Object Name: " & x.Name & "<br>"
Response.Write "Object Path: " & x.ADsPath & "<br>"
Response.Write "Object Class: " & x.Class & "<br>"
 
' Get more data about the object schema.
Set cls = GetObject(x.Schema)
Response.Write "Class Name is: " & cls.Name & "<br>"
For Each op In cls.OptionalProperties
    Response.Write "Optional Property: " & op & "<br>"
Next op
%>

</body>
</html>

Nell'esempio di codice seguente viene illustrato come usare i metodi delle proprietà dell'interfaccia IAD .

#include <stdio.h>
#include <activeds.h>
 
int main(int argc, char* argv[])
{
    IADs *pADs = NULL;
    IADsUser *pADsUser = NULL;
    IADsClass *pCls = NULL;
    CComBSTR sbstr;
 
    HRESULT hr = CoInitialize(NULL);
    if (hr != S_OK) { return 0; }
 
    hr=ADsGetObject(L"WinNT://Fabrikam/Administrator",
                IID_IADsUser,
                (void**) &pADsUser);
    if (hr != S_OK) { goto Cleanup; }
 
    hr = pADsUser->QueryInterface(IID_IADs, (void**) &pADs);
    if( hr !=S_OK) { goto Cleanup;}
 
    pADsUser->Release();
 
    if( S_OK == pADs->get_Name(&sbstr) ) {
        printf("Object Name: %S\n",sbstr);
    }
 
    if( S_OK == pADs->get_ADsPath(&sbstr) ) {
        printf("Object path: %S\n",sbstr);
    }
 
    if( S_OK == pADs->get_Class(&sbstr) ) {
        printf("Object class: %S\n",sbstr);
    }
 
    hr = pADs->get_Schema(&sbstr);
    if ( hr != S_OK) {goto Cleanup;}
 
    hr = ADsGetObject(sbstr,IID_IADsClass, (void**)&pCls);
    if ( hr != S_OK) {goto Cleanup;}
    if( S_OK == pCls->get_Name(&sbstr) ) {
        printf("Class name is %S\n", sbstr);
    }
 
 Cleanup:
    if(pADs)
        pADs->Release();

    if(pIADsUser)
        pADsUser->Release();

    if(IADsClass)
        pADsClass->Release();

    CoUninitialize();

    if(hr==S_OK)
    {
        return 1;
    }
    else
    {
        return 0;
    }
}

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista
Server minimo supportato
Windows Server 2008
Intestazione
Iads.h
DLL
Activeds.dll
IID
IID_IADs è definito come FD8256D0-FD15-11CE-ABC4-02608C9E7553

Vedi anche

ID

IADsContainer