IADs-Eigenschaftenmethoden
Die Eigenschaftenmethoden der IADs-Schnittstelle erhalten oder legen die in der folgenden Tabelle beschriebenen Eigenschaften fest. Weitere Informationen zu Eigenschaftenmethoden finden Sie unter Schnittstelleneigenschaftsmethoden.
Eigenschaften
-
ADsPath
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_ADsPath( [out] BSTR* pbstrADsPath );
Die ADsPath-Zeichenfolge dieses Objekts. Die Zeichenfolge identifiziert dieses Objekt in einer Netzwerkumgebung eindeutig. Das -Objekt kann immer mit diesem Pfad abgerufen werden.
-
-
Klasse
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_Class( [out] BSTR* pbstrClass );
Der Name der Objektschemaklasse.
-
-
GUID
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_GUID( [out] BSTR* pbstrGUID );
Der global eindeutige Bezeichner des Verzeichnisobjekts. Die IADs-Schnittstelle konvertiert die GUID aus einer Oktettzeichenfolge, die auf einem Verzeichnisserver gespeichert ist, in ein Zeichenfolgenformat.
-
-
Name
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_Name( [out] BSTR* pbstrName );
Der relative Name des Objekts, wie im zugrunde liegenden Verzeichnisdienst benannt. Dieser Name unterscheidet dieses Objekt von seinen gleichgeordneten Objekten.
-
-
Parent
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_Parent( [out] BSTR* pbstrParent );
Die ADsPath-Zeichenfolge des übergeordneten Containers. Active Directory lässt die Bildung des ADsPath eines bestimmten Objekts nicht zu, indem die Eigenschaften Parent und Name verkettet werden. Obwohl dieser Vorgang bei einigen Anbietern funktionieren kann, ist es nicht garantiert, dass er für alle Implementierungen funktioniert. Der ADsPath ist garantiert gültig und sollte immer zum Abrufen des Schnittstellenzeigers eines Objekts verwendet werden.
-
-
Schema
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_Schema( [out] BSTR* pbstrSchema );
Die ADsPath-Zeichenfolge des Schemaklassenobjekts dieses Objekts.
-
Hinweise
In Active Directory ist die von GUID zurückgegebene GUID eine Zeichenfolge mit Hexadezimalen. Verwenden Sie die resultierende GUID, um eine direkte Bindung an das Objekt zu erstellen.
Dim x As IADs
Set x = GetObject("LDAP://servername/<GUID=xxx>")
Wobei xxx der wert ist, der von der GUID-Eigenschaft zurückgegeben wird. Weitere Informationen finden Sie unter Verwenden von objectGUID zum Binden an ein Objekt. Beachten Sie, dass bei Verwendung einer GUID zum Binden an ein Objekt die ADsPath-Eigenschaftsmethode Werte zurückgibt, die sich von den normalen Werten unterscheiden, die zurückgegeben werden, wenn Sie einen Distinguished Name (DN) zum Binden an dasselbe Objekt verwendet haben. In der folgenden Tabelle werden beispielsweise die Werte aufgeführt, die zurückgegeben werden, wenn die beiden verschiedenen Bindungsmethoden zum Binden an dasselbe Benutzerobjekt verwendet werden.
| Binden mithilfe von DN | Binden mithilfe der GUID | |
|---|---|---|
| Name | 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=c0f59dfcf507d311a99e0000f879f7c7> |
Hinweis
Der WinNT-Anbieter unterstützt keine Bindung mithilfe der Objekt-GUID und gibt die GUID-Eigenschaft in einem etwas anderen Zeichenfolgenformat zurück.
Beispiele
Das folgende Codebeispiel zeigt, wie Objektdaten mithilfe von Eigenschaftsmethoden der IADs-Schnittstelle abgerufen werden.
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
Das folgende Codebeispiel zeigt, wie Objektdaten mithilfe von Eigenschaftsmethoden der IADs-Schnittstelle abgerufen werden.
<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>
Das folgende Codebeispiel zeigt, wie sie mit den Eigenschaftenmethoden der IADs-Schnittstelle arbeiten.
#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;
}
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows Vista |
| Unterstützte Mindestversion (Server) |
Windows Server 2008 |
| Header |
|
| DLL |
|
| IID |
_IID-IADs sind als FD8256D0-FD15-11CE-ABC4-02608C9E7553 definiert. |