Methoden der IADs-Eigenschaft
Die Eigenschaftenmethoden der IADs-Schnittstelle rufen die in der folgenden Tabelle beschriebenen Eigenschaften ab oder legen sie fest. Weitere Informationen zu Eigenschaftenmethoden finden Sie unter Schnittstelleneigenschaftenmethoden.
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 eindeutig in einer Netzwerkumgebung. Das Objekt kann immer mithilfe dieses Pfads 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, wie sie 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, der innerhalb des zugrunde liegenden Verzeichnisdiensts benannt ist. Dieser Name unterscheidet dieses Objekt von seinen gleichgeordneten Elementen.
-
-
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 in einigen Anbietern funktioniert, ist nicht garantiert, dass er für alle Implementierungen funktioniert. Der ADsPath ist garantiert gültig und sollte immer verwendet werden, um den Schnittstellenzeiger eines Objekts abzurufen.
-
-
Schema
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_Schema( [out] BSTR* pbstrSchema );
Die ADsPath-Zeichenfolge des Schema-Klassenobjekts dieses Objekts.
-
Bemerkungen
In Active Directory ist die von der GUID zurückgegebene GUID eine Zeichenfolge von Hexadezimalstellen. Verwenden Sie die resultierende GUID , um direkt an das Objekt zu binden.
Dim x As IADs
Set x = GetObject("LDAP://servername/<GUID=xxx>")
Dabei ist xxx der Wert, der von der GUID-Eigenschaft zurückgegeben wird. Weitere Informationen finden Sie unter Verwenden von objectGUID zum Binden an ein Objekt. Beachten Sie, dass die ADsPath-Eigenschaftsmethode , wenn Sie eine GUID zum Binden an ein Objekt verwenden, Werte zurückgibt, die sich von den normalen Werten unterscheiden, die zurückgegeben würden, wenn Sie einen distinguished Name (DN) zum Binden an dasselbe Objekt verwenden. In der folgenden Tabelle sind 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=c0f59dfcf507d311a99e0000f879f7c7c7> |
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
Im folgenden Codebeispiel wird gezeigt, wie Objektdaten mithilfe von Eigenschaftenmethoden 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
Im folgenden Codebeispiel wird gezeigt, wie Objektdaten mithilfe von Eigenschaftenmethoden 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>
Im folgenden Codebeispiel wird gezeigt, 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) |
WindowsServer 2008 |
Header |
|
DLL |
|
IID |
IID_IADs ist definiert als FD8256D0-FD15-11CE-ABC4-02608C9E7553 |